- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机接口技术 科学出版社 微机接口技术 微型计算机 接口技术 * 第六章 并行接口 * 图6.1 8255A的内部结构框图 reset D7 ~ D0 A9 ~ A2 A1 A0 IOR IOW 片选 译码 数据 缓冲器 读写 控制 片内 译码 CS RESET A1 A0 RD WR PC7 ~ PC0 PB7 ~ PB0 PA7 ~ PA0 控制口 D 端口A 端口C 端口B +5V GND D7 ~ D0 外 设 8255A 总线 * §6.2.3 8255A的控制字 C口置位/复位控制字 方式选择控制字 * §6.2.4 8255A的工作方式 方式0—基本输入/输出方式 方式1—选通输入/输出方式 工作特点 A口、B口可作为数据传输口,而C口的一些引脚规定作为A口、B口的联络信号。 * 方式1输入 * 方式1输出 * §6.2.4 8255A的工作方式 方式2—双向输入/输出方式 工作特点 该方式只适用于A口。利用A口外设与CPU之间分时进行双向数据传送。 A口工作在方式2时,C口的PC7~PC3被规定为控制信号,配合A口使用。 * 图6.9 方式2的控制信号 * §6.2.4 8255A的工作方式 使用场合 根据方式2的工作特点,若有个外设具有输入、输出功能,但不是同时输入输出数据,可采用此方式。如磁盘驱动器,即可接收主机来的数据,也可向主机提供数据,而这种输入、输出的过程是分时进行的。可将磁盘驱动器的数据线与8255A的PA7~PA0相连,再将8255A的PC7~PC3与磁盘驱动器的控制线、状态线相连,即可使用。 * §6.3 8255A的应用 6.3.1 8255A的应用举例 6.3.2 8255A在PC机中的应用 * §6.3.1 8255A的应用举例 【例6-5】8255A作为矩阵键盘接口,工作于方式0,如图6.10所示。试编程读取矩阵键盘的按键扫描码。 * §6.3.1 8255A的应用举例 ;判别是否有键按下 START:MOV AL,82H ;设置8255A的工作方式字 OUT 86H,AL MOV AL,00H ;给A口输出00H OUT 80H,AL WAIT1:IN AL,82H ;读入B口的值 AND AL,0FH ;取低4位 CMP AL,0FH ;比较 JZ WAIT ;结果为0,则无键按下,继续等待 CALL DELAY ;调用延时子程序,消除按键抖动 IN AL,82H ;再次读B口,测试有无低电平 AND AL,0FH CMP AL,0FH JZ WAIT ;结果为0,则是干扰,继续等待 ;判断哪个键按下 * §6.3.1 8255A的应用举例 MOV CL,4 ;设置计数初值 MOV AL,0EH ;使A0=0,准备先扫描第一行 CHECK:OUT 80H,AL MOV AH,AL ;保存行扫描码 IN AL,82H ;读B口 AND AL,0FH ;取低4位 CMP AL,0FH ;比较 JNZ TABLE ;不为0,则该行有键按下,转键值处理子程序 MOV AL,AH ;无键按下,则修改行扫描码 ROL AL,1 DEC CL ;行数减1 JNZ CHECK ;未扫描
文档评论(0)