ILE数据锁存允许控制端高电平有效WR1.PPT

  1. 1、本文档共84页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ILE数据锁存允许控制端高电平有效WR1

DAC0832的逻辑结构: 4位8段LED动态显示电路如下图。其中段码线占用一个8位I/O口,而位选线占用一个4位I/O口。 下图为82C55扩展I/O口的独立式按键接口电路。 相应地,依次读PC口的状态,若PC0~PC3全为“1”,则列线为“0”的这一列上没有键闭合。闭合键的键号等于为低电平的列号加上行线为低电平的行的首键号。例如,PA口输出,读出PC0~PC3为1101,则1行1列相交的键处于闭合状态,第一列的首键号为8,列号为1。因此,闭合键的键号N为 N = 行首键号+列号= 行号*8+列号 = 8+1=9 工作过程: (1)在键盘扫描子程序中,先判断有无键按下。 方法:置列线(或行线)输出全0,读行线(或列线),若列线为全1,则说明键盘无键按下;若不全为1,则说明键盘可能有键按下。 ◆ 中断工作方式 只有在键盘有键按下时,才执行键盘扫描程序,如无键按下,单片机将不理睬键盘。 (2)用软件来消除按键抖动的影响。如有键按下,则进行下 一步。 (3)求按下键的键号。 (4)等待按键释放后,再进行按键功能的处理操作。 8.3.2 键盘/显示器接口设计实例 一般把键盘和显示器放在一起考虑,作为仪器、应用系统的操作面板。 1、 利用并行I/O芯片实现键盘/显示器接口 采用I/O接口芯片82C55或81C55键盘/显示器接口电路。 89C51扩展I/O接口芯片81C55实现的6位LED显示和32键的键盘/显示器接口电路如图10-11。 89C51外扩一片8155H I/O口地址:7F00H~7F05H。 控制口地址 7F00H A口地址 7F01H B口地址 7F02H C口地址 7F03H 计数器低8位 7F04H 计数器高6位 7F05H 图10-11 输出口,键盘列扫描线,显示器为位扫描线 输入口,键盘行线 输出口, 显示器的字段口 同相驱动器 反相驱动器 (1)动态显示程序设计 设置内部RAM 6个显示缓冲单元:79H~7EH,存放要显示的6位数据。 81C55的PB口输出相应位的段码,依次改变PA口输出为高的位使某一位显示段码表示的字符,其它位为暗。动态地显示出由缓冲区中显示数据所确定的字符。 参考程序: DIR: MOV R0,#79H ;置缓冲器指针初值 MOV R3,#01H ;位选码的初值送R3 MOV A,R3 LD0: MOV DPTR,#7F01H ;位选码→PA口(PA.0位) ;最左边LED亮 MOVX @DPTR,A INC DPTR ;数据指针指向PB口 MOV A,@R0 ;显示数据→A ADD A,#0DH ;加偏移量(下条指令到表首间 ;所有指令占的单元数) MOVC A,@A+PC ;根据显示数据来查表取段码 DIR1: MOVX @DPTR,A ;段码→8155H PB口 ACALL DL1ms ;该位显示1ms INC R0 ;指针指向下一个数据单元 MOV A,R3 ;位选码送入A中 JB Acc.5,LD1 ;判断是否扫描到最右边的 ; LED,如到最右边则返回 RL A ;位选码向左移一位,准备让 ; 右边的下一位LED亮 MOV R3,A ;位选码送R3中保存 AJMP LD0 ; LD1: RET ; DSEG: DB 3FH,06H,5BH,4FH,66H,6DH ;共阴极段码表 DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H,73H,3EH DB 31H,6EH,1CH,23H,40H,03H DB 18H,00H DL1ms: MOV R7,#02H ;延时1ms子程序 DL: MOV R6,#0FFH DL6: DJNZ

文档评论(0)

ailuojue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档