单片机原理与应用 第8章 单片机的人机接口.ppt
《单片机原理与应用 第8章 单片机的人机接口.ppt》由会员分享,可在线阅读,更多相关《单片机原理与应用 第8章 单片机的人机接口.ppt(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第八章 单片机的人机接口l键盘接口键盘接口lLED显示器接口显示器接口lLCD显示器接口显示器接口l8279专用键盘显示器专用键盘显示器8.1 键盘接口键盘接口8.1.1键盘的工作原理和扫描方式键盘的结构:1 1、独立式键盘、独立式键盘2、矩阵式键盘3 3种种键盘扫描方式键盘扫描方式1、程序控制扫描方式在主程序中用一段专门的扫描和读键程序来检查有无键按下,并确定键值。2、定时扫描方式利用单片机内的定时器来产生定时中断,然后在定时中断的服务程序中扫描和读键,检查有无键按下,并确定键值。3、中断扫描方式当有键按下时由相应的硬件电路产生中断信号,单片机在中断服务程序中扫描和读键,再次检查有无键按下,
2、并确定键值。8.1.2 键盘的接口电路键盘的接口电路 2 2、用、用82558255实现的键盘接口电路实现的键盘接口电路A口值键值C口值 键盘处理程序的步骤键盘处理程序的步骤l判断键盘中有无键按下。单片机先使8255A的A口的各位PA0PA3均为低电平,再读C口(PC0PC3)。若C口的各位不全为高电平,则表示有键按下。l消除抖动。先延时10ms,然后再读C口,此时,若C口各位仍不全为高电平,说明确实有键按下。l求键号。过程如下:先置PA00,PA1PA3均为1,再读C口,由C口低电平的位置便可确定按下键的位置。例如,若在PA00时PC0=0,那么是0号键按下。键码值高4位是键所在行号,低4位
3、是键所在列的号码。8.1.3 8.1.3 8.1.3 8.1.3 键盘输入程序设计方法键盘输入程序设计方法键盘输入程序设计方法键盘输入程序设计方法 扫描与读键程序:扫描与读键程序:(1.(1.判断有无键按下子程序判断有无键按下子程序)JUDGE:MOV DPTR,#0FFDDH ;8255AJUDGE:MOV DPTR,#0FFDDH ;8255A口地址口地址 MOV A,#00HMOV A,#00H MOVX DPTR,A ;A MOVX DPTR,A ;A口输出低电平口输出低电平 INC DPTRINC DPTR INC DPTR INC DPTR MOVX A,DPTR ;MOVX A,
4、DPTR ;从从C C口读数据口读数据 CPL ACPL A ANL A,#0FH ;ANL A,#0FH ;取低四位取低四位 RETRET(2.2.读键程序)读键程序)KEY1:ACALL JUDGE ;KEY1:ACALL JUDGE ;看有否键按下看有否键按下 JNZ LK1 ;JNZ LK1 ;有键按下,跳转至按键处理有键按下,跳转至按键处理 ACALL DELAYACALL DELAY AJMP KEY1 ;AJMP KEY1 ;无键则延时后再扫描无键则延时后再扫描LK1:ACALL DELAY ;LK1:ACALL DELAY ;延时去抖动延时去抖动 JNZ LK2 JNZ LK2
5、 ;再次判断有无键再次判断有无键 ACALL DELAY ACALL DELAY ALMP KEY1 ;ALMP KEY1 ;无键则延时后再扫描无键则延时后再扫描LK2:MOV R2,#0EH ;LK2:MOV R2,#0EH ;扫描列线扫描列线 MOV R4,#00H ;MOV R4,#00H ;列号列号LK3:MOV DPTR,#0FFDDHLK3:MOV DPTR,#0FFDDH MOV A,R2 MOV A,R2 MOVX DPTR,A ;MOVX DPTR,A ;送送0 0EHEH至至A A口口 INC DPTRINC DPTR INC DPTR INC DPTR MOVX A,DP
6、TR ;MOVX A,DPTR ;从从C C口读入口读入 JB ACC.0,LINE1 ;JB ACC.0,LINE1 ;第第0 0行为行为1 1表示无键,则转表示无键,则转1 1行行 MOV A,#00HMOV A,#00H AJMP LKP AJMP LKPLINE1:JB ACC.1,LINE2 ;LINE1:JB ACC.1,LINE2 ;第第1 1行为行为1 1表示无键,则转表示无键,则转2 2行行 MOV A,#04HMOV A,#04H AJMP LKP AJMP LKPLINE2:JB ACC.2,LINE3 ;LINE2:JB ACC.2,LINE3 ;第第2 2行为行为1
7、1表示无键,则转表示无键,则转3 3行行 MOV A,#08HMOV A,#08H AJMP LKP AJMP LKPLINE3:JB ACC.3,NEXT ;LINE3:JB ACC.3,NEXT ;第第3 3行为行为1 1表示无键,则转表示无键,则转NEXTNEXT MOV A,#0CHMOV A,#0CHLKP:ADD A,R4LKP:ADD A,R4 PUSH ACC PUSH ACCNT:ACALL DELAYNT:ACALL DELAY ACALL JUDGE ACALL JUDGE JNZ NT JNZ NT POP ACC POP ACC RET RETNEXT:INC R4N
8、EXT:INC R4 MOV A,R2 MOV A,R2 JNB ACC.3,KND ;JNB ACC.3,KND ;判断整个判断整个4444键盘是否扫描结束键盘是否扫描结束 RL A MOV R2,A ;扫描下一列扫描下一列 AJMP LK3KND:AJMP KEY18.2 8.2 LEDLED显示器接口显示器接口 lLED显示器是由发光二极管构成的字段组成的显示器l分类:8段和16段LED显示器l连接方法:共阴极和共阳极字型码表:字型码表:通过字符查到相应的通过字符查到相应的字型码。字型码。排列顺序:排列顺序:dp/g/f/e/d/c/b/a例如例如“0”的字型码,共阴的字型码,共阴极为极
9、为3FH,共阳极为共阳极为0C0H。LED显示器的工作原理显示器的工作原理 静态显示静态显示需要显示的字符的各字段连续通电,所显示的字段连续发光。动态显示动态显示所需显示字段断续通以电流,在需要多个字符同时显示时,可以轮流给每一个字符通以电流,逐次把所需显示的字符显示出来。1.静态显示电路静态显示电路1)1)、本身的静态端口(、本身的静态端口(P1口)或扩展的口)或扩展的IO端口直接与端口直接与LED电路连接;电路连接;2)2)、利用本身的串行端口、利用本身的串行端口TXD和和RXD与与LED电路连接电路连接(让串让串行接口工作在方式行接口工作在方式0 0:RXDRXD串行串行I/OI/O、T
10、XDTXD移位脉冲移位脉冲)。1.静态显示程序静态显示程序DIR:SETBP3.3MOVR7,#08H;循环次数为8次MOVR0,6FH;先送最后一个显示字符DI0:MOVA,R0;取显示的数据ADDA,#e;加上字形码表的偏移量MOVCA,A+PC;取字形码MOVSBUF,A;送出显示DI1:JNBTI,DIl;查询输出完否?CLRTIDECR0DJNZR7,DI0CLRP3.3RETTBT:DB0COH,0F9H,0A4HTBLl:DB0BOH,99H,92HTBL2:DB82H,0F8H,80HTBL3:DB90H,00H,00H2动态显示电路动态显示电路2.动态显示程序动态显示程序 D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机原理与应用 第8章 单片机的人机接口 单片机 原理 应用 人机 接口
限制150内