第七章 MCS-51单片机系统扩展精选.ppt

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

3.方式2 方式2是一种双向选通输入/输出方式。只适合于端口A。这种方式能实现外设与8255A的A口双向数据传送,并且输入和输出都是锁存的。它使用C口的高5位PC7~PC3 作应答信号,两位作中断允许控制位。 * INTE1 INTE2 ?1 PC5 PC4 PC6 PC7 PC3 PA0~PA7 ACKA OBFA INTRA STBA IBFA 作为输入总线使用时,PA7~PA0受/STBA和IBFA控制,工作过程和模式1输入方式相同 作为输出总线使用时, PA7~PA0受/OBFA和/ACKA控制,工作过程和模式1输出方式相同 方式2特别适合像终端一类外部设备,此类设备有时需要把键盘上输入的编码信号通过A口送给CPU,有时又需要把数据通过A口送到终端显示。 * 五.8255A与MCS-51单片机的接口 1.硬件接口 8255A与MCS-51单片机的连接包含数据线、地址线、控制线的连接. Vcc WR RD P2.0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 8051 ALE EA GND D7 D6 D5 D4 D3 D2 D2 D1 DO G Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 WR RD CS A1 A0 D7 D6 D5 D4 D3 D2 D1 GND Vcc +5V +5V PA7-PA0 PB7-PB0 PC7-PC0 OE D0 8255A的A口、B口、C口和控制口的地址分别是:FEFCH,FEFDH,FEFEH,FEFFH。 * 2.软件编程 如果设定8255A的A口为方式0输入,B口为方式0输出,则初始化程序为: 汇编程序段: MOV A,#90H MOV DPTR,#0FEFFH MOVX @DPTR,A C语言程序段: #include reg51.h #include absacc.h //定义绝对地址访问 …… XBYTE[0xfeff]=0x90; …… * 例 2 下图 是 8031 扩展 8255A 与打印机接口的电路。 8255A 的片选线为P0.7, 打印机与 8031 采用查询方式交换数据。打印机的状态信号输入给PC7, 打印机忙时BUSY=1, 打印机的数据输入采用选通控制, 当STB上出现负跳变时数据被打入, 要求编写向打印机输出 80 个数据的程序。设 8255A 的A、 B、C和控制寄存器的口地址分别为: 7CH、7DH、7EH和7FH。 * 8255A 的方式1中OBF为低电平有效, 而打印机STB要求下降沿选通。所以8255A采用方式0, 由PC0 模拟产生STB信号。因PC7输入, PC0输出, 则方式选择命令字为:=8EH。  自内部RAM 20H单元开始向打印机输出80个数据的程序如下: MOV R0, #7FH ; R0 指向控制口 MOV A, #8EH ; 方式控制字为8EH MOVx @R0 , A ; 送方式控制字 MOV R1, #20H ; 送内部RAM数据块首地址至指针R1 MOV R2, #50H ; 置数据块长度 * LP: MOV R0, #7EH ; R0指向C口 LP1: MOVX A, @R0 ; 读PC7连接BUSY状态 JB ACC.7, LP1 ; 查询等待打印机 MOV R0, #7CH ; 指向A口 MOV A, @R1 ; 取RAM 数据 MOVX @R0, A ; 数据输出到8255A口锁存 INC R1 ; RAM地址加1 MOV R0, #7FH ; R0指向控制口  MOV A, #00H ; PC0复位控制字 MOVX @R0, A ; PC0=0, 产生STB的下降沿 MOV A, #01H ; PC0置位控制字 MOVX @R0, A ; PC0=1, 产生STB的上升沿 DJNZ R2, LP ; 未完, 则反复 * 例3 在一个8031的应用系统中,利用扩展8255A设计一个EPROM2764编程器,要求8255的PA口作为D0— D7数据输出口, PB作为低8位地

文档评论(0)

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

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

1亿VIP精品文档

相关文档