第7章 输入输出方法及常用接口电路(2)_第1页
第7章 输入输出方法及常用接口电路(2)_第2页
第7章 输入输出方法及常用接口电路(2)_第3页
第7章 输入输出方法及常用接口电路(2)_第4页
第7章 输入输出方法及常用接口电路(2)_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第七章第七章 输入输出方法及常用的输入输出方法及常用的接口电路接口电路(2)(2)7.3 8255A并行接口电路及其应用并行接口电路及其应用数据的通信方式分为并行通信并行通信和串行通信串行通信。并行通信:各位数据是并行传输的,以字节(或字)为单位与 I/O设备进行数据交换。由并行接口来完成,并行接口是连接CPU与并行外设的通道。串行通信:数据一位一位地进行传输。由串行接口来完成,串行接口通过系统总线与CPU相连。 8255A是一种通用可编程并行I/O接口电路芯片,又称可编程外围接口。在8086系统中,8255A常作为键盘、扬声器、打印机等外设的接口电路芯片。8255A外引脚图一、一、8255A

2、芯片的外部引脚芯片的外部引脚40个引脚双列直插式缓冲器数据总线D7D0oooRDWRA0A1RESETCS读/写控制逻辑A口上C口下C口B口PA7PA0PC7PC4PC3PC0PB7PB0内部总线A组控制B组控制外设接口CPU接口内部逻辑二、二、8255A的结构和功能的结构和功能端口A和端口B可用作8位 数据I/O口,端口C既可作为8位I/O口,又可作为两个4位I/O口,还常用来配合A口和B口工作,作为控制信号输出、或作为状态信号输入。1、三个输入/输出端口 8255A内部包含3个8位I/O端口A口、B口和C口,通过外部24个引脚与外设交换数据或进行通信联络。其中C口可分为两个4位口使用。A口

3、上C口下C口B口PA7PA0PC7PC4PC3PC0PB7PB0内部总线2、读/写控制逻辑控制总线的开放与关闭;控制信息传送的路径和方向。CS:片选信号,低电平有效。允许8255A与CPU交换信息。RD:读信号,低电平有效;允许CPU从8255A端口中读取数据或外设的状态信息。WR:写信号,低电平有效;允许CPU将数据、控制字写入到8255A中。RESET:复位信号,高电平有效;它清除8255A所有控制寄存器内容,并将各端口都置成输入方式。A1、A0:8255A片内端口寻址线。与RD、WR、CS配合用作选择端口及内部控制寄存器的地址信息,并控制信息传送的方向。A1 A0RDWRCS功能0001

4、0端口A 数据总线01010端口B 数据总线10010端口C 数据总线00100数据总线 端口A01100数据总线 端口B10100数据总线 端口C11100数据总线 控制字寄存器8255A端口选择表3、A组和B组的控制电路 这是两组根据CPU的编程命令控制8255A工作的电路,控制寄存器用来接收CPU送来的命令字,以决定A组、B组的工作方式,或对C口的每一个位执行位操作。A组控制电路控制A口和C口的高4为;B组控制电路控制B口和C口的低4位。A组控制B组控制内部总线4、数据总线缓冲器是双向三态的8位缓冲器, 用作8255A和系统数据总线的接口。 1)传送系统对8255A的控制字; 2)传送各

5、端口的输入、输出数据。缓冲器数据总线DBoooRDWRA0A1RESETCS读/写控制逻辑内部总线至数据端口至控制寄存器5、方式选择8255ABCBDBRD WRD7D0A0 A1 CSPBPAPC88I/OI/O44PB7 PB0PA7 PA0PC3 PC0 PC7 PC4I/OI/O88 I/OI/OPB7 PB0PA7 PA0PBPAPCB口控制A口控制88 I/OI/O不用PA7 PA0PBPAPCI/O控制方式0:基本输入输出方式1:选通输入输出方式2:双向传送方式0:适用于无条件传送和查询方式的接口电路。方式1:适用于查询和中断方式的接口电路。方式2:适用于查询和中断方式的接口电路

6、。端口A:可工作于方式0、方式1、方式2。端口B:可工作于方式0、方式1。端口C:只能工作于方式0。三、三、8255A的控制字的控制字 8255A的三种工作方式是由CPU输出到8255A的控制字来控制的。 8255A有两个控制字:一个是工作方式控制字,另一个是对端口C的“置位/复位”控制字。1、工作方式控制字D7 D6 D5 D4 D3 D2 D1 D0下C口 I/O1=输入0=输出B口I/O1=输入0=输出B口方式0=方式0 1=方式1上C口I/O1=输入0=输出特征位 D7=1A口方式: 00=方式0 01=方式1 1x=方式2A口I/O1=输入0=输出例:在一个8086系统中,有一片82

7、55芯片,其各个端口的地址分别为0F8H0FBH,现要求各个端口的工作方式为:端口A 方式0 输入端口B 方式1 输出端口C(上半部) PC7 PC4 输出端口C(下半部) PC3 PC0 输入要求:进行初始化编程10011001分析:根据8255工作模式可确定方式控制字95H初始化编程:MOV AL,95HOUT 0FBH,AL2、C口按位置位/复位控制字端口C常用作控制或应答信号,通过对8255A的控制口写入按位置位/复位控制字,可使C口的任一个引脚的输出单独置1或置0。D7 D6 D5 D4 D3 D2D1 D01 置位 0 复位无关位特征位 D7 = 0000 选中PC0 001 选中

8、PC1 111 选中PC7位选择C口按位置位/复位控制字格式:例:要使端口C的bit3置位的控制字为:00000111B; MOV AL,00000111B OUT 0FBH,AL 而使端口C的bit3复位的控制字为:00000110B ; MOV AL,00000110B OUT 0FBH,AL四、四、8255A的三种工作方式及应用举例的三种工作方式及应用举例1、方式 0基本输入输出方式A口和B口可作为8位端口,C口的高4位和低4位可作为两个4位的端口,且每个端口均可作为输入口或输出口用。数据输出有锁存,输入无锁存。方式0一般用于无条件传送的场合,不需要应答式联络信号,外设总是处于准备好的状

9、态。也可以用作查询式传送,查询式传送时,需要有应答信号。可以将A端口、B端口作为数据口使用。C端口则可用来输出一些控制信息,或输入外设的状态。利用C端口配合A端口和B端口完成查询式的I/O操作。例 8255A作为开关K0K3及七段LED显示器接口。要求开关设置的二进制信息,由PC0PC3输入,经程序转换为对应的七段LED显示器的字形代码后,由PA口输出显示。8255APA7PA0驱动器+5V5VK0K1K2K3PC3PC2PC1PC0D7D0RD WR A1 A2 A B C G2A G2B G1 Y0 Y1 Y2 O O OD7D0 RD WR A0 A1 CSA0 A3A4A78086系统

10、总线LS138接口电路M/IO&A5A6各端口地址为:E8HEEH8255A各端口地址确定:由图可知: A7 A6 A5 A4 A3 A2 A1 A01 1 1 0 1 08255A方式选择控制字:CSA B C G2A G2B G1 Y0 Y1 Y2 A0 A3A4 A7LS138 M/IO&A5A6按题意设置端口A方式0输出,下C口输入.1000181HLED显示器的字形代码表存放在TABLE单元开始的内存中.数据段中定义:TABLE DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, DB 0F8H 80H, 98H, 88H, 83H,

11、0C6H, 0A1H, DB 86H, 8EH代码段实现操作的具体程序如下:MOV DX, 0E8H ;指向端口AOUT DX, AL ;输出字形码HLTMOV DX,0EEH ;设置8255A工作方式 MOV AL,81H OUT DX,ALMOV DX,0ECH ;指向端口C,读开关状态 IN AL,DX AND AL,0FHLEA BX,TABLE ;显示代码表首地址送BXXLAT ;查表,取出相应的字形码送AL 当A端口和B端口以方式1进行输入输出时,必须利用C端口提供的固定的选通和应答信号,该方式也称选通输入/输出方式。 方式1的基本定义是: 分成A组和B组,每组包含一个8位的数据端

12、口和1个4位的控制/数据端口。 可作输入,也可作输出,且输入和输出都可以被锁存。 2、方式1-选通输入/输出方式规定:PC3PC5分配给A端口作联络线,PC0PC2分配给B端口作联络线, C端口剩下的2位PC7、PC6可作为简单的输入/输出线使用。 1) 选通的输入方式方式1选通输入时的链接方式(a) 对A端口;(b) 对B端口1011I/O1011I/O11111D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0A组工作于方式1输入的控制字A组和B组工作于方式1输入的控制字B组工作于方式1输入的控制字方式1B端口为输入PC7、PC61输入0输出P

13、C7、PC61输入0输出A端口为输入方式1STBAIBFAINTRAI/OPC4PC5PC3INTEA&PC7PC6PA7PA02RD8PC2PC1PC0INTEB&PB7PB0RD8INTRBIBFBSTBB(a)(b)方式1选通输入方式下各控制信号的意义: STB(Strobe):选通输入信号,低电平有效。A组方式控制字中对应PC4;B组方式控制字中对应PC2。IBF(Input Buffer Full):输入缓冲器满信号,高电平有效。 是8255A送给外设的联络信号,A组方式控制字中对应PC5;B组方式控制字中对应PC1,该信号可供CPU查询。INTR(Interrupt

14、 Request):中断请求信号,高电平有效。A组方式控制字中对应PC3;B组方式控制字中对应PC0。当STB信号撤消变为高电平后,并且IBF信号也为高电平,INTR信号变为有效的高电平。 当CPU发出的RD信号有效后,400 ns的时间内INTR信号将撤消,变为低电平。INTE(Interrupt Enable):中断允许信号,高电平有效。否则屏蔽中断请求。 INTE的状态是用软件通过由C端口置1/置0控制字来控制的,在A组中,使PC4置“1”后INTEA变高;在B组中,使PC2置“1”后INTEB变高,A端口和B端口才允许中断。如果PC4和PC2都置“0”,与之对应的INTE信号为低,则禁

15、止中断。采用查询式输入,CPU先查询IBF是否为高。 若IBF为高,8255A的输入缓冲器就为满,则CPU可从8255A读入数据。采用中断方式传送数据,先用C端口置1/置0的控制字使相应的端口允许中断,也就是要使PC4或PC2置1。 这种方式的工作过程与选通输入的情况相类似。对应的C端口也是固定分配。规定:PC3、PC6、PC7分配给A端口;PC2、PC1、PC0分配给B端口,剩下的2位PC4、PC5可作为简单的输入/输出线使用。 当控制字的D3位为“1”时,PC4、PC5作输入;当控制字的D3位为“0”时,PC4、PC5作输出。 2) 选通的输出方式方式l输出时C端口对A、B端口的控制图(a

16、) 对A端口;(b) 对B端口1010I/O1010I/O10110D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0A组工作于方式1输出的控制字A组和B组工作于方式1输出的控制字B组工作于方式1输出的控制字方式1B端口为输出PC5、PC41输入0输出PC5、PC41输入0输出A端口为输出方式1ACKAOBFAINTRAI/OPC6PC7PC3INTEA&PC5PC4PA7PA02WR8PC2PC1PC0INTEB&PB7PB0WR8INTRBOBFBACKB(a)(b) 方式1选通输出方式各控制信号的意义: OBF(Output

17、Buffer Fu11):输出缓冲器满信号,低电平有效。A组方式控制字中对应PC7;B组方式控制字中对应PC1,由8255A向外设发出低电平的OBF信号。ACK(Acknowledge):数据接收应答信号,低电平有效。A组方式控制字中对应PC6;B组方式控制字中对应PC2,是外设的响应信号。 ACK信号有效后使OBF变成无效的高电平,同时使INTR信号变为有效的高电平。INTR:中断请求信号,高电平有效。A组方式控制字中对应PC3;B组方式控制字中对应PC0。由8255A向CPU发出中断请求,要求CPU输出新的数据。INTE:中断允许信号,高电平有效。当该信号为“1”时,允许中断。INTE是用

18、软件通过对C端口置1/置0的控制字来设置的。当PC6置1时,A端口允许中断;PC2置1,B端口允许中断。反之,不允许中断。PC总线打印机IOWRDA0A1译码器DBWRIORA0A1CSDBPAPC7PC6PC3STBACKDBAB8255去8259IR2例:用8255实现与打印机的接口,8255的PA口作为数据输出端口,工作在方式1;PC7作为OBF信号输出端;PC6作为ACK信号输入端; PC3作为INTR信号输出端,接8259的IR2,因此中断类型号为0AH。8255的端口地址为0FCH-0FFH。输出时,先输出一个空字符,以引起中断,在中断服务程序中输出打印字符。打印机接收到打印字符后

19、,发出ACK响应信号,清除OBF标志,使8255产生新的中断请求,再输出下一个打印字符。主程序完成中断的准备工作和设置8255A的工作方式控制字等中断服务程序完成字符的输出。PUSH DSLEA DX,ROUTMOV AX,SEG ROUTMOV DS,AXMOV AL,0AHMOV AH,25HINT 21HPOP DS ; 设置中断向量MOV AL,0A0H ;方式字OUT 0FFH,ALMOV AL,0DH ;PC6置1OUT 0FFH,AL;中断允许MOV AL,20H ;输出空格字符OUT 0FCH,ALLEA BX,FLAGSTIROUT: PUSH AX MOV AL,BX ;取字符 OUT 0FCH,AL ;输出 INC BX POP AX IRET 双向方式8255A可以向外设发送数据,同时CPU通过这8位数据线又接收外设的数据。传输过程由C端口对A端口进行控制,所以称为带选通的双向传输方式。方式2的基本定义: 只能适用于A端口,一个8位的双向端口(A端口)和1个5位的控制端口(C端口)。 A端口的输入和输出都可以被锁存。在这种方式下,C端口中高5位PC7PC3作为控制信号和状态信息使用,剩下的3位PC2PC0可作为简单的输入/输出线使用。3、方式2-带选通的双向传输方式方式2时C端口对A端口的控制信号图PC3&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论