微型计算机原理及接口技术第10章-可编程并行接口芯片8255A课件_第1页
微型计算机原理及接口技术第10章-可编程并行接口芯片8255A课件_第2页
微型计算机原理及接口技术第10章-可编程并行接口芯片8255A课件_第3页
微型计算机原理及接口技术第10章-可编程并行接口芯片8255A课件_第4页
微型计算机原理及接口技术第10章-可编程并行接口芯片8255A课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、第 10 章 可编程并行接口芯片8255A 本章主要内容10.1 8255A内部结构及引脚 10.2 8255A的控制字 10.3 8255A的工作方式 10.4 8255A的状态字 10.5 8255A的应用 10.1 8255A内部结构和引脚10.1 8255A内部结构和引脚 10.1 8255A内部结构和引脚 并行输入/输出端口A、B、C: PA口、PB口、PC口均为8位、双向I/O数据口,都可直接与外设连接,但在结构上稍有差异 PA口、PB口、PC口受读写控制部件及A组或B组控制部件控制输入缓冲/锁存器(8位)输出缓冲/锁存器(8位)输入缓冲器(8位),没有锁存器输出缓冲/锁存器(8位

2、)基本输入/输出与PA口、PB口配合,作为它们状态或控制信息的传送口PA口PC口PB口PC口10.1 8255A内部结构和引脚 A组和B组控制部件:PA口(PA7PA0 )基本输入/输出PC口(PC7PC4 )为PA口提供控制和联络信号控制字寄存器 接收CPU送来的工作方式控制字控制逻辑A组控制逻辑A组、B组控制部件B组控制逻辑PB口(PB7PB0 )基本输入/输出PC口(PC3PC0 )为PB口提供控制和联络信号提供控制信息接收读/写控制部件提供的信息10.1 8255A内部结构和引脚 数据总线缓冲器:是一个三态双向8位数据缓冲存储器,是8255A与CPU之间的数据接口。有了数据总线缓冲器,

3、8255A可直接“挂”到系统的数据总线(DB)上功能: CPU控制字/数据 数据总线缓冲器 8255A(OUT指令) (IN指令) 8255A 状态信息/数据数据总线缓冲器 CPU读/写控制部件:接收控制信号,并产生8255A内部控制时序,向片内功能部件发出操作命令CS 片选信号,低电平有效,由A15A2 译码产生RD、WR 读/写信号,低电平有效(IN、OUT指令产生)10.1 8255A内部结构和引脚 RESET 复位信号,高电平有效,CPU输入。当RESET有效时,清除8255A中所有控制字寄存器内容,并将各端口置成输入方式A1 、A0 端口选择信号线(端口地址输入线),8255A共有4

4、个端口地址A1 A0 =00 端口A A1 A0 =10 端口CA1 A0 =01 端口B A1 A0 =11 控制字寄存器注意:PA,PB,PC 三个端口各占用一个端口地址,加上控制字寄存器地址,这些地址连续,其中一个端口地址确定,则其它端口地址也就随之确定如:82H 1000 0010 PC口, PA口: 80H,PB口:81H, 控制字寄存器: 83H10.1 8255A内部结构和引脚 通过定义工作方式控制字可将3个端口分别定义为不同的工作方式。当将端口A定义为方式1或2或将端口B定义为方式1时,端口C的某些位为端口A和端口B提供联络信号。 10.2.1 工作方式选择控制字10.2 82

5、55A的控制字 PC口可以对PC口的某一根I/O线实施单独输出控制,即位控制方式。 10.2.2 置位/复位控制字10.2 8255A的控制字 方式0:基本输入/输出方式(无条件传送方式),PA、PB、PC口均可选择此方式。10.3.1 方式0基本输入/出方式10.3 8255A的工作方式 注意: CPU通过对状态( PC口)查询,可以实现I/O数据的异步传送1000格式:D0D1D2D3D4D5D6D7方式1:选通输入/输出方式(条件传送方式或中断方式),PA、PB口可选择此方式 注:此方式一般用于连接需要联络信号的外设,其中PC口为PA、PB口提供控制和联络信号10.3.2 方式1选通输入

6、/出方式10.3 8255A的工作方式 1011格式:D0D1D2D3D4D5D6D710.3.2 方式 1选通输入/出方式1. 工作于输入 10.3.2 方式 1选通输入/出方式10.3.2 方式 1选通输入/出方式选通输入方式 (以PA口为例)工作过程:10.3.2 方式 1选通输入/出方式注意:PA口做方式1输入时,中断允许触发器INTEA 的状态是由PC4 位操作指令设置如:MOV AL, 09H OUT 43H, AL10.3.2 方式 1选通输入/出方式2. 工作于输出 10.3.2 方式 1选通输入/出方式选通输出方式 (以PB口为例)工作过程:注意: PB口做方式1输出时,中断

7、允许触发器INTEB 的状态是由PC2 位操作指令设置 实际应用中,在进入中断服务程序之前应先向外设送出一个无意义数据,目的是使系统进入中断时,真正的输出数据在中断服务程序中10.3.2 方式 1选通输入/出方式10.3.2 方式 1选通输入/出方式10.3.3 方式2双向选通输入/出方式10.3 8255A的工作方式 选通的双向传送方式,只有PA口可用于此方式,既可做输入,又可做输出,由PC口提供控制和联络信号11格式:D0D1D2D3D4D5D6D710.3.3 方式 2双向选通输入/出方式若8255A中端口A设定为方式1或方式2,以及端口B设定为方式1时,读取端口C口可分别得到相应端口的

8、状态,以便了解8255A的工作状态,供CPU查询。 10.4 8255A的状态字方式1状态字 10.4 8255A的状态字方式2状态字 例10-1 某系统要求8255A的PA口工作于方式1输入;PB口工作于方式0输出;PC口的高4位做联络信号线后剩余的I/O线做输入,低4位做输出。设8255A端口地址范围为60 H63H,请编写初始化程序。 10.5 8255A的应用解:根据题意可设置8255控制字为: 10111000BB8H相应的初始化程序为: MOV AL, 0B8H OUT 63H, AL 例10-2 若例10-1中PA口工作于方式1作为输入,并且要求使用中断方式传送,则须写PC.4的

9、按位置位控制字为:00001001B09H 10.5 8255A的应用相应的初始化程序为: MOV AL, 09H OUT 63H, AL此时,PC.4引脚作为PA口与外设的固定应答联络线 ,是外设送给8255的选通信号。显然,对PC.4的按位置位不会影响PC.4引脚的状态,只起到置位INTEA(打开中断的作用)。 例10-3 设8255A的控制寄存器端口地址为63H,试写出令PC.3先置“1”,后置“0”的程序。 10.5 8255A的应用程序:MOV AL,07H;控制字,PC.3=1 OUT 63H,AL;控制字控制寄存器MOV AL,06H;控制字,PC.3 =0OUT 63H, AL

10、例10-4 假设8255A的PA口工作于方式0,与打印机相连,将内存缓冲区BUFF中的字符打印输出。硬件连接如图。设8255A的工作频率与CPU的工作频率相当。打印机接口要求在 有效时,才能接收数据;在BUSY有效时,则表示打印机忙,不能接收数据。分析:题中8255A工作于方式0,而不直接利用带联络信号的方式1,原因是打印机需要一个负脉冲作为数据选通信号,PC7( )端不能满足打印机的要求。另外选用PC0来发送选通脉冲。根据图10-14电路连接,设未用地址线用0表示则可分析8255A的端口地址为00H,02H,04H,06H。本例中,PC口以置位/复位产生打印机的控制信号,控制打印机启/停。

11、10.5 8255A的应用程序: .MODEL SMALL .STACK 100.DATABUFF DB HELLO ,WORLD,13,10,$PORTA EQU 00HPORTB EQU 02HPORTC EQU 04HPORTCN EQU 06H.CODESTARTPROCFARPUSHDSMOVAX,0PUSHAXMOVAX,DATA10.5 8255A的应用MOVDS,AX MOV SI, OFFSET BUFF MOV AL, 88H ;8255初始化 OUT PORTCN, AL ;PC口高4位输入,低4位输出 MOV AL, 01H ;PC.0置1,初始状态=1 OUT POR

12、TCN, ALWAIT: IN AL, PORTC ;查询打印机状态, TEST AL, 40H ;判BUSY=1? JNZ WAIT ;若“忙”则等待 MOV AL, SI ;从缓冲区取数 CMP AL, $ ;判是结束符$否? JZ PRINT_OVER ;若是结束符$,退出 OUT PORTA, AL ;输出字符 MOV AL, 00H ;产生选通信号( =0),启动打印机 OUT PORTCN, AL 10.5 8255A的应用 MOV AL, 01H ;使 =1, 引脚负方波结束 OUT PORTCN, AL INC SI ;修改缓冲区指针 JMP WAITPRINT_OVER: M

13、OV AH, 4CH ;返回DOSINT 21HSTARTENDPEND 10.5 8255A的应用例10-5 8086 CPU和8255A为主体构成的闭环调节系统的结构流程图如图所示。8255A的端口A工作于方式0,用来向数模转换器输出8位数字信息。端口B工作于方式1,用来接收由模数转换器输入的8位数字信息。端口C用于控制,PC7用作模数转换器ADC0809的启动信号,PC2用作输入的信号,PC0用作中断请求信号INTRB,通过中断控制器8259A可向CPU发中断请求,请写出系统的初始化程序。 10.5 8255A的应用分析: 8255A端口A工作于方式0输出的8位数字信息,经数模转换器DA

14、C0832转换成模拟量。它输出的模拟量是电流值,因此,DAC0832常与运算放大器一起使用,以便将模拟电流放大并转换为模拟电压。当CPU输出的数字量从00HFFH时,运算放大器输出04.98V的模拟电压,该电压经传感器可调节控制现场的温度、速度、声音或流量等参数。 10.5 8255A的应用控制现场的模拟信息经传感器和运算放大器可变换为一定范围内的电压值,这模拟电压经模数转换器ADC0809可变换为8位数字信息送回8255A的端口B,其转换速度取决于从CLK端引入的标准时钟,端口B可采用中断方式与CPU联系,中断请求信号经8259A中断排队后送CPU的INTR端。 端口A定义为方式0输出端口,

15、不需要任何控制信号。端口B定义为方式1输入端口,需要PC2作输入信号(),用来接收ADC0809的转换结束命令EOC,由它将8位数字信息锁存到端口B的数据输入锁存器中。需要PC0用作输出信号,向CPU发出中断请求。10.5 8255A的应用从现场收集到的模拟量通过端口B以中断方式向8086 CPU报告,设定中断类型码为40H,CPU响应该中断请求后可在中断服务程序中利用IN指令接收由端口B输入的数字信息,并完成必要的计算和处理后可向端口A输出新的数字信息,以实现对现场模拟信息的调整过程。 程序: .MODEL SMALL .STACK 100.DATAAdd8255PADBFFF8HAdd82

16、55PBDBFFFAHAdd8255PCDBFFFCHAdd8255CRDBFFFEHAdd8259EADBFFF5HAdd8259OADBFFF7H.CODEMAINPRGPROCFARPUSHDSMOVAX, 0PUSHAXMOVAX, DATAMOVDS, AX 10.5 8255A的应用 MOVDX, Add8255CRMOVAL, 86HOUTDX, ALMOVAL, 05HOUTDX, AL MOVDX, Add8259EAMOVAL, 13HOUTDX, ALMOVDX, Add8259OAMOVAL, 40HOUTDX, ALMOVAL, 03HOUTDX, ALMOVAL, 0FEHOUTDX, AL 10.5 8255A的应用;初始化8255A

温馨提示

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

评论

0/150

提交评论