LED数码显示及键盘显示接口.ppt_第1页
LED数码显示及键盘显示接口.ppt_第2页
LED数码显示及键盘显示接口.ppt_第3页
LED数码显示及键盘显示接口.ppt_第4页
LED数码显示及键盘显示接口.ppt_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,第8章 LED数码管显示及键盘接口技术,本讲重点: 1.LED显示接口(动态与静态、硬件译码与软件译码、电路、编程) 2.键盘及其接口技术 8.1 LED数码管 8.1.1 概述 8.1.2 结构:共阳与共阴 8.1.3 译码: 8.1.4 显示方式:静态与动态 8.2 键盘及接口技术 8.2.1 按键的特点及输入原理 8.2.2 抖动干扰的消除 8.3 键盘/显示器接口芯片8279(了解),2,电磁炉,3,台达变频器VFD-L,4,5,LED发光二极管(Light Emitting Diode)显示器有多种结构形式,单段的圆形或方形LED常用来显示设备的运行状态,8段LED可以显示各种数

2、字和字符,所以也称为LED数码管,其外形如图8-1所示. LED的伏安特性类似于普通二极管,正常工作电流Ig为 5-20mA,压降Vg为1.5-2.0V左右. 8段LED在控制系统中应用最为广泛,其接口电路也具有普遍借鉴性.利用PN结把电能转换成光能的固体发光器件,根据制造材料的不同可以发出红、黄、绿、白等不同色彩的可见光来.,8.1.1 概述,8.1 LED数码管,6,8*8点阵LED,7,单联LED数码管,8,双联LED数码管,9,四联LED数码管,10,在使用发光二极管时,限流电阻的选择尤为重要,阻值过大或过小二极管都将不能正常发光,甚至烧毁器件.限流电阻Rx应满足如下条件: Rx=(V

3、cc一Vg)/Ig 其中:Vcc 电压; Vg发光二极管工作时的管压降电压值(1.5-2.0V) Ig发光二极管工作电流范围(5mA-20mA) 这样,在5V电源电压下,限流电阻Rg的取值范围是: (5.0V一2.0V)/20mARx(5.0V-1.5V)/5mA 即R二应取值为150-700欧之间,一般来说建议选用470欧,11,8字高度:8字上沿与下沿的距离.比外型高度小. 通常用英寸来表示.范围一般为0.25-20英寸. 1英寸=2.54cm=1000mil 100mil=2.54mm,12,8.1.2 结构:共阳与共阴,13,单片机系统扩展LED数码管时多用共阳LED(记忆):共阳数码

4、管每个段笔画是用低电平(“0”)点亮的,要求驱动功率很小; 共阴数码管段笔画是用高电平(“0”)点亮的,要求驱动功率较大. 通常每个段码要串一个数百欧姆(390)的限流电阻.,14,8.1.3 译码:,一、硬件译码(了解),CD4511/74LS48是“BCD码七段共阴译码/驱动”IC; 74LS47 是“BCD码七段共阳译码/驱动”IC,硬件译码特点: 采用专用的译码/驱动器件,驱动功率较大; 增加了硬件的开销; 软件编程简单; 字型固定(比如:只有七段,只可译数字,字型不好).,15,二、软件译码(常用),软件译码特点: 1.不用专用的译码/驱动器件,驱动功率较小; 2.不增加硬件的开销;

5、 3.软件编程较复杂; 4.字型灵活(比如:有八段,只可译多种字符,字型好看).,16,八段LED数码管段码表(分析,理解) 自学:自己推导一下,“3”的共阳极段码为什么是0B0?,TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;0-9共阳段码表 TAB1:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;0-9共阴段码表 (常用),17,8.1.4 显示方式:静态与动态(视频) 1.静态显示: 各数码管在显示过程中持续得到送显信号,与各数码管接口的I/O口线是专用的.无闪烁,使用的元器件较多,占

6、I/O线多,无须扫描,节省CPU时间,编程简单. 连接:所有LED的位选均共同连接到+Vcc或GND,每个LED的8根段选线分别连接一个8位并行I/O口,从该I/O口送出相应的字型码显示字型. 特点:原理简单,显示亮度强,无闪烁,占用I/O资源较多,18,控制系统中的LED显示电路,除了要完成把字符转换成对应的段选码的译码功能以外,还要具有数据锁存与驱动的功能. 其中,译码功能可以通过硬件译码器完成,也可通过软件编程实现;而数据锁存与驱动只有依赖硬件电路来实现.静态显示方式的关键是多个LED需与多个I/O并行口相连,一般的并行I/O口如8255A或锁存器只具备锁存功能,还要有硬件驱动电路,再配

7、以软件译码程序. 目前广泛使用一种集锁存、译码、驱动功能为一体的集成电路芯片,以此构成静态显示硬件译码接口电路.如美国RCA公司的CD4511是4位BCD码7段十进制锁存译码驱动器,美国MOTOROLA公司的MC14495是4位BCD码7段十六进制锁存译码驱动器.,19,例1:4个LED组合的静态显示电路如下图所示,图8-3 LED静态显示方式,20,分析:说明4个共阴极LED静态显示3456数字的工作过程.,看图8-3,当所有COM端连接在一起并接地时, 首先由I/O口(1)送出数字3的段选码4FH,即数据01001111到左边第一个LED的段选线上,阳极接受到高电平“1”的发光管g、d、c

8、、b、a段因为有电流流过则被点亮,则结果为左边第一个LED显示3; 接着由I/O口(2)送出数字4的段选码66H,即数据01100110到左边第二个LED的段选线上,阳极接受到高电平“1”的共阴极发光管g、f、c、b段则被点亮,则结果为左边第二个LED显示4; 同理,由I/O口(3)送出数字5的段选码6DH,即01101101到左边第三个LED的段选线上, 由I/O口(4)送出数字6的段选码7DH,即01111101到左边第四个LED的段选线上,则第三、四个LED分别显示5、6.,例2:LED数码管静态显示举例2(用到串行通信知识了),22,要求:根据上图编写通过串行口和74LS164驱动共

9、阳LED数码管查表显示的子程序. 条件:系统有6个LED数码管,待显数据(00H09H)已放在内部RAM35H30H单元中(分别对应十万位个位),有几个LED就要几个74LS164串入并出的芯片,但只要数据不变,送一次就保持住了,且不闪烁,编程十分简单.,23,DSPLY: MOV DPTR, #TABLE ;共阳LED数码管译码表首址 MOV R0,#30H ;待显数据缓冲区的个位地址 REDO: MOV A, R0 ;通过R0实现寄存器间接寻址 MOVC A, A+DPTR ;查表 MOV SBUF, A ;经串行口发送到74LS164 JNB TI, $ ;查询送完一个字节的第8位? C

10、LR TI ;为下一字节发送作准备(分析,看懂) INC R0 ;R0指向下一个数据缓冲单元 CJNE R0,#36H,REDO ;判断是否发完6个数? RET ;发完6个数就返回 TABLE:DB 0C0H,0F9H,0A4H,0B0H,99H ;0-9共阳LED译码表 DB 92H, 82H, 0F8H, 80H,90H,24,回顾:串行口设定在工作方式0(SM0 SM1=00)下进行工作 串行口作为同步移位寄存器使用,数据传输波特率固定为fosc/12,串行数据由RxD(P3.0)输入输出,同步移位脉冲由TxD (P3.1)输出,数据的发送和接受以8位为一帧数据,低位在前,高位在后,无起

11、始位、奇偶位和停止位,在移位时钟的作用下,串行口发送缓冲器SBUF中的数据一位一位移入74LS164中.,25,2.动态显示(常用,有特色): 各数码管在显示过程中轮流得到送显信号,与各数码管接口的I/O口线是共用的.有闪烁,使用的元器件较少,占I/O线少,必须扫描,花费CPU时间,编程复杂.(有多个LED时尤为突出),例4:LED动态显示电路如下图所示:,图8-4 LED动态显示方式,26,电路的接法决定了必须采用逐位扫描显示方式.即从段选口(段控)送出某位LED的字型码,然后选通该位LED(位控),并保持一段延时时间(1ms 记忆).然后选通下一位,直到所有位扫描完. 要注意的两个问题:

12、1.字型码通常通过查表指令MOVC来求得. 2.换位显示时通常要加一些软件代码使所有的LED全灭. (鬼影) 硬件连接:所有LED的段控线共同连接在一起共用一个8位I/O口,而每个LED的位控线分别由一根相应的I/O口线控制.因此必须采用动态扫描显示方式,每一个时刻只选通其中一个数码管,同时在段选口送出该位LED的字型码.,27,分析:说明4位共阴极LED动态显示3456数字的工作过程,看图8-4,首先由I/O口(1)送出数字3的段码4FH(0100 1111),即数据01001111到4个LED共同的段选线上, 接着由I/O口(2)送出位码0111到位选线上,其中数据的高4位为无效的,唯有D

13、3的COM端为低电平“0”,因此只有该LED的发光管因阳极接收到高电平“1”的g、d、c、b、a段有电流流过而被点亮,也就是显示出数字3,而其余3个LED因其COM端均为高电平“1”而无法点亮;,高电平点亮,01 0 0 1 1 1 1,28,显示一定时间后,再由I/O口(1)送出数字4的段选码66H,即01100110到段选线上,接着由I/O口(2)送出点亮D2的位选码1011到位选线上,此时只有该LED的发光管因阳极接受到高电平“1”的g、f、c、b段有电流流过因而被点亮,也就是显示出数字4,而其余3位LED不亮; 如此再依次送出第三个LED、第四个LED的段选与位选的扫描代码,就能一一分

14、别点亮各个LED,使4个LED从左至右依次显示3、4、5、6.,例3:动态显示举例,工作原理:从P0口送段代码,P1口送位选信号.段码虽同时到达6个LED,但一次仅一个LED被选中.利用“视觉暂留”,每送一个字符并选中相应位线,延时一会儿,再送/选下一个循环扫描即可.,视觉的暂留效应原理:什麽场面被人看了一眼,这场面都会在人的眼里停留0.1秒,电影在1秒中拍摄24张照片,所以在播放时,里面的事物总是移动的. 要求:此处为共阴数码管,P0口送段码,P1口送位选信号.通过查表实现动态显示. 条件:待显数据00H09H已放在7AH7FH(数据缓冲区/显示缓冲区)单元中(分别对应十万位个位) 说明:由

15、于用了反相驱动器7406,要用共阳译码表.,DIR: MOV DPTR, #DSEG ;数码管段码表首址 MOV R0,#7AH ;待显缓冲区首地址 MOV R3,#01H ;个位的位选信号0000 0001 LD1: MOV A,R0 ;通过R0间接寻址 MOVC A, A+DPTR ;查表 MOV P0, A ;段码送到P0口 MOV P1,R3 ;位码送到P1口 LCALL DELAY ;调延时1ms(记忆)子程序 ;延时时间过大,就闪烁,时间过小,不应该亮的段也有显示 INC R0 ;R0 指向下一字节7BH MOV A,R3 JB ACC.5,LD2 ;判是否发完6个数? RL A

16、;R1指向下一个位0000 0010 MOV R3,A ;位选信号存回R1 SJMP LD1 ;跳去再显示下一个数 LD2: RET ;发完6个数就返回 DSEG:DB 0C0H,0F9H,0A4H,0B0H,99H;共阳段码表,7406反相 DB 92H, 82H, 0F8H, 80H,90H,典型程序,32,总结:动态显示程序流程图,采用动态扫描方式依次循环点亮各位数码管,构成多位动态数码管显示电路.,33,ORG 0000h视频 MOV 6Ah,#08H MOV 6Bh,#07H MOV 6Ch,#06H MOV 6Dh,#05H MOV 6Eh,#04H MOV 6Fh,#03H MO

17、V 70h,#02H MOV 71h,#01H;给缓冲区赋初值 MOV DPTR, #tab;段码表首址送DPTR LD3:MOV R0,#6AH ;待显缓冲区首地址 MOV R3,#0FEH ;个位的位选信号1111 1110 LD1:MOV A,R0 ;通过R0间接寻址 MOVC A,A+DPTR MOV P0,A ;P0段码 MOV P2,R3 ;P2位码 LCALL DELAY ;调延时1ms子程序 INC R0 ;R0 指向下一字节7BH MOV A,R3 JNB ACC.7,LD3 ;判是否发完8个数? RL A ;R1指向下一个位1111 1101 MOV R3,A ;位选信号存

18、回R1 LD2: SJMP LD1,34,Delay: MOV R6,#02 ;02 (0.001s) 稳定显示, ;20(0.0109s) 过大闪烁, ;100(0.0545s) 太大轮流显示 DL2: MOV R5, #250 DL3: DJNZ R5, DL3 DJNZ R6,DL2 RET ;延时时间过大,就闪烁,时间过小,不应该亮的段也有显示 END,35,8.2 键盘(Keyboard)及接口技术,按键的特点及输入原理 独立式按键 矩阵式按键,1.键盘工作方式: (1)定时扫描方式 (2)中断扫描方式,2.编写键盘程序四步 (1)判断是否有键闭合 (2)去抖动 (3)求键值 (4)

19、等待按键的释放,36,Protel99 Miscellaneous Devices.ddbSW-PB,37,8.2.1 按键的特点及输入原理,1.按键的分类: 触点式: 机械 无触点式:电气(SSR 固态继电器) 2.键输入原理: 通过按键的接通与断开,产生两种相反的逻辑状态 低电平“0”与高电平“1”. 3.键功能的实现:对于一组键或一个键盘,需通过接口电路与单片机相连.可采用查询或中断方式测试有无键按下,再确定是哪一个键按下,将该键号送入累加器ACC,然后判断是数字键还是功能键: 若是数字键,则将键号对应的数字送入相关输入缓冲区; 若是功能键,则通过跳转指令转入执行该键的功能程序,执行完后

20、再返回主程序.(计算器),38,键盘接口需要解决的问题,按键识别:是否有键按下,求键号 键抖动及消除:机械按键抖动时间在5ms10ms之间 消除方法:,2.硬件方案双稳态去抖电路(淘汰) 开关和继电器触点等在闭合和断开时常存在抖动问题,解决这一问题的方法很多,图所示就是一个.该电路主要由两个R-S触发器构成,当开关K处于常闭位置时,a端为低电平,输出端Q则为高电平;此时b端均为高电平,输出端R则为低电平,2端被锁定.这样,开关触头即使在常闭端产生振颤,但只要不和常开端连接,B端(2端)电位不变,则输出端Q始终处于高电平.同理,开关处于常开位置时也是如此.因此,该电路在开关闭合或断开时只产生一个

21、脉冲,触点抖动现象被消除.,1.软件方案延时10ms20ms后再次判断(常用),39,由于机械触点的弹性振动,按键在按下时不会马上稳定地接通而在弹起时也不能一下子完全地断开,因而在按键闭合和断开的瞬间均会出现一连串的抖动,这称为按键的抖动干扰,其产生的波形如下图所示,当按键按下时会产生前沿抖动,当按键弹起时会产生后沿抖动.这是所有机械触点式按键在状态输出时的共性问题,抖动的时间长短取决于按键的机械特性与操作状态,一般为10100ms,此为键处理设计时要考虑的一个重要参数.,40,8.2.2 抖动干扰的消除,按键的抖动会造成按一次键产生的开关状态被CPU误读几次.为了使CPU能正确地读取按键状态

22、,必须在按键闭合或断开时,消除产生的前沿或后沿抖动,去抖动的方法有硬件方法和软件方法两种.,41,1.硬件方法(了解) 硬件方法是设计一个滤波延时电路或单稳态电路等硬件电路来避开按键的抖动时间. 2.软件方法(常用) 软件方法是指编制一段延时时间为10ms (important) 的延时程序,在第一次检测到有键按下时,执行这段延时子程序,使键的前沿抖动消失后再检测该键状态,如果该键仍保持闭合状态电平,则确认为该键已稳定按下,否则无键按下,从而消除了抖动的影响.同理,在检测到按键释放后,也同样要延迟一段时间,以消除后沿抖动,然后转入对该按键的处理.,42,8.2.3 独立式按键,特点:一线一键,

23、按键识别(编程)简单;但占用较多口线,适合8键以下使用.,43,例4:用P1口检测三个按键的状态并完成相应的功能 解:资源分配用P1口的低3位(P1.2-P1.0)检测3个按键的输入 0:表示相应按键被按下 1:表示按键没有按下,流程图:,44,ORG 0000H KB: MOV P1,#0FFH ;P1口作为输入状态 MOV A,P1;读P1口状态按键按下=0,按键没有按下=1 CPL A;取反 ANL A,#07H;取低4位0000 0111 JZ KB;A=0,上一句A=0000 0000, CPL前1111 1111 没有键按下 LCALL D10MS;延时10ms(重要,记忆!) 分

24、析,看懂 MOV A,P1 CPL A ANL A,#07H JZ KB ;再判断一次 CJNE A,#01H,KB01;0000 0001进入的条件是A不等于0 LCALL PGM1;A=01H,调用键1的功能子程序(分析,看懂) SJMP KB KB01:CJNE A,#02H,KB02;0000 0010 LCALL PGM2 ;调用键2的功能子程序 SJMP KB KB02:CJNE A,#04H,KB;0000 0100 LCALL PGM3 ;调用键3的功能子程序 SJMP KB END,编程:按三个按键中的任一键都对应一个特定功能.,45,8.2.4 矩阵式按键,关键:如何判断键

25、号?,特点:按键识别应采用扫描法或线路反转法 编程较为复杂,节省口资源,8键以上使用,46,键盘扫描子程序一般包括以下内容: 1.判别有无按键按下; 2.扫描获取闭合键的行、列值; 3.用计算法或查表法得到键值; 4.判断闭合键释放否,如没释放则继续等待; 5.保存闭合键号.,47,键按下/释放判断,KS:MOV P1,#0FH ;0000 1111 MOV A,P1 ;读入P1口状态 CPL A ;变正逻辑,高电平表示有键按下 ANL A,#0FH ;取低4位 RET ;返回,A0表示有键按下,48,按键识别(1)扫描法,原理:在某一时刻只让一条列线处于低电平,其余列线均处于高电平,则当这一列有键按下时,该键所在的行电平将会由高电平变为低电平,可判定该列相应的行有键按下. 流程:当第0列处于低电平时,逐行查找是否有行线变低,若有,则第0列与该行的交叉点按键按下;若无,则表示第0列无键按下,再让

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论