7微机接口8255重点.ppt

  1. 1、本文档共112页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
位控制端口电路 D7 D6 D5 D4 D3 D2 D1 D0 阳极 位0 位1 位2 D0~D7 位控制 反 相 寄 存 驱 动 bitport, IOW 位控制端口作用 控制哪个(位)数码管显示 当位控制端口的控制码某位为低电平时,经反相驱动,便在相应数码管的阳极加上了高电平,这个数码管就可以显示数据 位控制:Di=0,相应位发光 D7 D6 D5 D4 D3 D2 D1 D0 位7 位6 位5 位4 位3 位2 位1 位0 段控制端口电路 D0 D1 D2 D3 D4 D5 D6 D7 阳极 位0 a b c d e f g h 位1 位2 … … D0~D7 段控制 正 相 寄 存 驱 动 segport, IOW 段控制端口作用 控制哪个段显示,决定具体显示什么数码 段控制端口送出显示代码到数码管相应段 此端口由8个数码管共用 段控制:Di=0,相应段发光 D7 D6 D5 D4 D3 D2 D1 D0 h g f e d c b a 通过位、段控制端口的共同作用 才能确定哪个数码管显示什么数码 数码缓冲区 ;数据段 LEDdt db 8 dup(0) ;数码缓冲区 ;主程序 mov si,offset LEDdt mov al,1 ;第一个数据 call LEDdisp ;调用显示子程序 例10.4 获取显示代码 LEDdisp proc push ax push bx push dx mov bx,offset LEDtb mov ah,0feh ;指向最左边数码管 LED1: lodsb ;取出要显示的数字 xlat cs:LEDtb ;得到显示代码:AL←CS:[BX+AL] 例10.4 数码显示 mov dx,segport ;segport为段控制端口 out dx,al ;送出段码 inc al mov dl,al ;暂存要显示的下一个数据 mov al,ah ;取出位显示代码 mov dx,bitport ;bitport为位控制端口 out dx,al ;送出位码 call delay ;实现数码管延时显示 mov al,dl ;取出要显示的下一个数据 例10.4 显示下位数码 rol ah,1 ;指向下一个数码管 jmp LED1 ;显示下一个数字 pop dx pop bx pop ax ret ;8位数码管都显示 LEDtb db 0c0h,0f9h, ……(共阳极) LEDdisp endp 例10.4 扬声器接口 教学要求 1. 掌握8255A的结构特点和引脚功能 2. 掌握8255A的各种工作方式、编程及方式0/1的应用 3. 理解简易键盘的工作原理、抖动和重键问题及解决方法 4. 掌握键盘扫描程序(扫描法)的编写 教学要求(续) 5. 掌握LED数码管的工作原理和多位显示方法 6. 了解并行打印机接口的引脚定义和接口时序 习题 8255A的键盘和扬声器控制示意 8255A PB1 PB0 驱动 电路 扬声器 GATE2 CLK2 时钟信号 与门 8253的计数器2 PA7~PA0 PB7 PB6 键盘扫描码 键盘控制信号 打印机时序 BUSY DATA0~7 ACK STROBE 方式1输出时序 INTR data data 输出端口 D0~D7 WR OBF ACK 矩阵结构键盘 行 列 1 1 1 1 机械按键的抖动现象 前沿抖动 后沿抖动 键稳定 键按下 硬件消抖电路 +5V 3.6K +5V 3.6K 输出信号 +5V 输出信号 双稳态电路 斯密特电路 mov dx,0ffffh ;控制端口地址:FFFFH mov al ;方式控制字:81H out dx,al ;A口方式0输出,C口上输出、下输入 mov al;端口C复位置位控制字,PC7=1 out dx,al prn: mov dx,0fffeh ;读取端口C in al,dx ;查询打印机状态 and al,04h ;PC2=BUSY=0? jnz prn;PC2=1,打印机忙,循环等待 例1 mov dx,0fffch ;A 口 ;PC2=0,打印机不忙,则输出数据 mov al,ah ;假设数据放在AH寄存器中 out dx,al ;将打印数据从端口A输出 例1 mov dx,0ffffh ;从PC7送出控制低脉冲 mov al ;置STB*=0 out dx,al nop ;产生一定宽度的低电平 nop mov al,

文档评论(0)

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

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

1亿VIP精品文档

相关文档