- 1、本文档共112页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MCS-51数字信号输入输出接口电路综述
2. 动态显示方式LED显示器 图7-14 由P1口输出的LED动态显示接口电路 在动态显示方式中,各显示位笔段引脚a~dp并联在一起,共用一个笔段代码锁存器 (由于单片机I/O口、I/O扩展电路,如8155、8255等大多具有输出锁存功能,因而往往不再需要笔段代码锁存器)、笔段译码器(采用软件译码时,不需要译码器)及驱动器;为了控制各LED数码管轮流工作,各显示位的公共端与位译码(采用软件译码时,不需要)、锁存、驱动电路相连。这样即可依次输出每一显示位的笔段代码和位扫描码,轮流点亮各LED数码显示管,实现动态显示目的。可见,在动态显示方式中,仅需要一个笔段代码锁存、驱动器和一个位扫描码锁存、驱动器,且硬件开销少。 在动态显示方式中,各LED数码显示器轮流工作,为了防止产生闪烁现象,每个LED数码管刷新频率必须大于25 Hz,即相邻两次点亮的时间间隔要小于40 ms。对于具有N个LED数码管的动态显示电路来说,如果刷新频率为f,那么显示周期为1/f,则每一位的显示时间为1/(f×N)秒。显然,显示的位数越多,每一位的显示时间越短,在驱动电流一定的情况下,亮度越低(正因如此,在动态LED显示电路中,要适当增大驱动电流,一般取20 mA~35 mA,以抵消因显示时间短造成亮度下降)。为了保证一定的亮度,实验表明:在驱动电流取30 mA的情况下,每位显示时间不能小于1 ms。 假设个位的BCD码存放在30H单元、十位的BCD码存放在31H单元、百位的BCD码存放在32H单元、千位的BCD码存放在33H单元、万位的BCD码存放在34H单元、十万位的BCD码存放在35H单元中,位扫描码存放在3FH中,则显示驱动程序如下: ORG 0000H LJMP Main ORG 001BH ; 设置定时/计数器1中断服务程序入口地址 LJMP DISP ORG 0100H Main:MOV SP,#4FH ; 初始化定时/计数1的工作方式 MOV TMOD,#10H ; 定时/计数器1处于定时状态,方式1,由软件控制 MOV TH1,#0F2H MOV TL1,#0FBH ; 送初值 ; 假设每秒显示50次,??即每隔20?ms扫描所有位 一次,?这样每位显示 ; 时间为20 ms/6=3.333 ms,??如果振荡频率为 12 MHz,定时器初值可 ; 设为0F2FBH SETB PT1 ; 将定时/计数器1中断优先级置为高优先级 SETB ET1 ; 允许定时/计数器1中断 SETB EA ; 开中断总开关 SETB TR1 ; 启动定时器 MOV 3FH,#00H ; 初始化位指针,假设位指针存放在3FH单元中 Here: Sjmp here ; 虚拟主程序,中断等待 DISP: MOV TH1,#0F2H MOV TL1,#0FBH ; 在定时中断服务程序中,一般应先重装初值, 否则将造成定时误差 PUSH PSW ; 保护现场 PUSH Acc SETB RS1 ; 切换工作寄存器组 SETB RS0 MOV A,3FH ; 取显示位指针 ADD A,#30H ; 与笔段码首址30H相加后,即可获得相应位笔 段码的地址 MOV R0,A ; 将笔段码地址存放在R0中 MOV A,@R0 ; 取出对应位笔段码,并存放在R1的低4位中 MOV R1,A MOV A,3FH ; 取出显示位指针 SWAP A ; 将显示位指针保存到高4位中 ADD A,R1 ; 高4位显示指针与低4位笔段码合并形成笔段码 和位扫描码 MOV P1,A ; 送P1口,显示 INC 3FH MOV A,3FH CJNE A,#06H,LOOP MOV 3FH,#00H ; 指针清零 LOOP: POP Acc POP PSW RETI 图7-15 由8255构成的LED动态显示驱动电路 当显示位数较多,如12位以上,将显示刷新率降到25 Hz后,仍不能保证每位显示时间大于1 ms时,可采用按字段扫描方式或按位分组扫描方式的动态显示驱动电路。 在按字段扫描方式中,不论位数多少,对于八段数码显示器来说,笔段引脚只有8根,即使显示刷新频率为50 Hz,按字段扫描时,每一笔段显示时间依然为1/(50×8)=2.5 ms。显示时每次点亮一个笔段(即扫描信号从笔段引脚输入),显示信息由位选择电路控制,显示程序比按位扫描方式要复杂一些,这里就不给出具体电路了。 图7-16 按位分组扫描动
文档评论(0)