可编程并行接口8255A课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《可编程并行接口8255A课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可编程 并行 接口 8255 课件
- 资源描述:
-
1、并行通信和串行通信概念并行通信和串行通信概念可编程并行接口可编程并行接口8255A8255A8255A8255A编程应用编程应用本章小结本章小结本章习题本章习题9.1 并行通信与串行通信并行通信与串行通信 目目的的D0源源D1D2D3D7D4D5D6D0D1D2D3D7D4D5D600101011数据的各位同时由源到达目的地数据的各位同时由源到达目的地 快快多根数据线多根数据线 距离短、远程费用高距离短、远程费用高并行通信并行通信适于适于短距离短距离、高速高速通信通信将数据的各位将数据的各位同时同时在在多根并行线多根并行线上进行传输。上进行传输。数据的各位依次由源到达目的地数据的各位依次由源到
2、达目的地 慢慢数据线少数据线少 远程远程,费用低费用低将数据的各位将数据的各位按时间顺序按时间顺序依次依次在一根传输线在一根传输线上传输。上传输。0 RXD目目的的TXD源源串行通信串行通信适于适于长距离长距离、中低速中低速通信通信01010119.1 并行通信与串行通信并行通信与串行通信l 并行接口的典型硬件结构包括:并行接口的典型硬件结构包括:1、一个或一个以上具有锁存或缓冲的数据端口、一个或一个以上具有锁存或缓冲的数据端口2、与、与CPU进行数据交换所必须的控制和状态信号进行数据交换所必须的控制和状态信号3、与外设进行数据交换所必须的控制和状态信号、与外设进行数据交换所必须的控制和状态信
3、号4、端口译码电路、端口译码电路5、控制电路、控制电路9.2 并行接口概述并行接口概述l 并行接口连接并行接口连接CPU与并行外设,实现与并行外设,实现 两者间的并行通信,两者间的并行通信,在信息传送过程中,起到输出锁存或输入缓冲的作用。在信息传送过程中,起到输出锁存或输入缓冲的作用。CPUCPU控制寄存器控制寄存器输入缓冲寄存器输入缓冲寄存器输出缓冲寄存器输出缓冲寄存器状态寄存器状态寄存器数据总线数据总线地址地址译码译码读出信号读出信号写入信号写入信号复位复位准备好准备好中断请求中断请求地址地址片选片选A A0 0A A1 1输输入入设设备备数据输入数据输入数据输入准备好数据输入准备好数据输
4、入回答数据输入回答输输出出设设备备数据输出数据输出数据输出准备好数据输出准备好数据输出回答数据输出回答并行接口连接外设示意图并行接口连接外设示意图输入过输入过程程 外设将数据外设将数据=接口接口 状态线状态线“数据输入准备好数据输入准备好”=1;接口把接收到数据输入缓冲寄存器;接口把接收到数据输入缓冲寄存器;数据输入回答数据输入回答=1,作为对外设响应信号;,作为对外设响应信号;外设撤消外设撤消“数据数据”和和“数据输入准备好数据输入准备好”信号;信号;CPU从接口读取数据从接口读取数据接口收到数据,设置接口收到数据,设置“输入准备好输入准备好”状态位;状态位;供给供给CPU查询查询 或问或问
5、CPU发中断请求;发中断请求;CPU从接口读取数据,从接口读取数据,接口自动清除状态寄存器输入准备好状态位(准备好);接口自动清除状态寄存器输入准备好状态位(准备好);数据总线处于高阻状态。开始下一个输入过程数据总线处于高阻状态。开始下一个输入过程输出过程输出过程输出输出:每当外设从接口取走一个数据以后,:每当外设从接口取走一个数据以后,CPU往接口中输出数据往接口中输出数据接口中状态寄存器发中断请求;接口中状态寄存器发中断请求;(“输出准备好输出准备好”=1,表示,表示CPU可以往接口中输出数据)可以往接口中输出数据)CPU向接口输出数据,数据到接口缓冲寄存器;向接口输出数据,数据到接口缓冲
6、寄存器;接口自动清除接口自动清除“输出准备输出准备”好。好。将数据送往外设:将数据送往外设:接口向外设发送一个接口向外设发送一个“驱动信号驱动信号”,启动外设接收数据。,启动外设接收数据。外设收到数据向接口发一个外设收到数据向接口发一个“数据输出回答数据输出回答”信号;信号;接口收到的信号将状态寄存器中接口收到的信号将状态寄存器中“输出准好输出准好”=1;CPU输出下一个数据。输出下一个数据。不可编程并行接口和可编程并行接口不可编程并行接口和可编程并行接口 不可编程并行接口的工作方式和功能不可编程并行接口的工作方式和功能:是由硬件接线决定,不能用软件来控制。是由硬件接线决定,不能用软件来控制。
7、可编程并行接口的工作方式和功能可编程并行接口的工作方式和功能:可用软件编程的方法改变,可用软件编程的方法改变,使接口具有更大使接口具有更大的灵活性和通用性。的灵活性和通用性。9.3 9.3 可编程并行接口可编程并行接口8255Al8255A的引脚、编程结构l8255A的控制字l8255A三种工作方式l8255A的应用举例9.3.1 8255A内部结构内部结构思考题1)当数据从)当数据从8255的端口的端口C往数据总线上读出时,往数据总线上读出时,8255的几个控制信号的几个控制信号/CS、A1、A0、/RD、/WR分别是分别是 、?2)一台微机化仪器采用)一台微机化仪器采用8255A芯片作为数
8、据传送接芯片作为数据传送接口,并规定使用口,并规定使用I/O地址的最低两位作芯片内部寻地址的最低两位作芯片内部寻址,已知芯片址,已知芯片A口地址为口地址为0F4H,则当,则当CPU执行输出执行输出指令访问指令访问0F7H端口时,其操作为端口时,其操作为 。A.数据从端口数据从端口C送数据总线送数据总线 B.数据从数据总线送端口数据从数据总线送端口C C.控制字送控制寄存器控制字送控制寄存器 D.数据从数据总线送端口数据从数据总线送端口Bn方式方式0:基本输入输出方式基本输入输出方式n方式方式1:选通输入输出方式选通输入输出方式n方式方式2:双向选通传送方式双向选通传送方式三种工作方式均可由用户
9、编程来选定,即由编程三种工作方式均可由用户编程来选定,即由编程送入控制口内的不同控制字来选择。送入控制口内的不同控制字来选择。9.3.2 8255A芯片的控制字芯片的控制字n控制命令字的形式控制命令字的形式 n 工作方式控制字工作方式控制字n C口置口置/复位控制字复位控制字 n 注注:怎样解决一址两字写入怎样解决一址两字写入n一址两字识别位一址两字识别位(在写入的控制字中在写入的控制字中)n 若若b7=1时时,写入工作方式控制字写入工作方式控制字n 若若b7=0时时,写入写入C口置口置/复位控制字复位控制字 9.3.2 8255A芯片的控制字芯片的控制字111.写入方式控制字:示例n要求:要
10、求:nA端口:方式端口:方式1输入输入nC端口上半部:输出,端口上半部:输出,C口下半部:输入口下半部:输入nB端口:方式端口:方式0输出输出n方式控制字:方式控制字:10110001B或或B1Hn初始化的程序段:初始化的程序段:mov dx,0fffeh;假设控制端口为假设控制端口为FFFEHmov al,0b1h;方式控制字方式控制字out dx,al;送到控制端口送到控制端口2.读写数据端口n初始化编程后:初始化编程后:n当数据端口作为输入接口时,执行当数据端口作为输入接口时,执行 输入输入IN指令将从输入设备得到外设数据指令将从输入设备得到外设数据n当数据端口作为输出接口时,执行当数据
11、端口作为输出接口时,执行 输出输出OUT指令将把指令将把CPU的数据送给输出设备的数据送给输出设备 例例1:如图所示,由如图所示,由8255A的的B口,以方式口,以方式0控制控制8个发光二个发光二极管,从极管,从LED0 LED1 LED2 LED3 LED4 LED5 LED6 LED7循环点亮,每个发光二极管亮循环点亮,每个发光二极管亮1S。试编制试编制8255A的初始化程序和控制程序。设的初始化程序和控制程序。设8255A的端口的端口地址:地址:A口、口、B口、口、C口和控制口分别为口和控制口分别为80H、82H、84H和和86H,1S延时可调用延时可调用D1S子程序实现。子程序实现。n
12、 MOV AL,80H OUT 86H,AL ;设工作方式设工作方式 MOV AL,01HX1:OUT 82H,AL CALL D1S ;调调D1S延时子程序延时子程序 ROL AL,1 JMP X1 HLT返回1=置置10=置置00 D7 D6 D5 D4 D3 D2 D1 D0端口端口C置置1/0控制字控制字标志标志0 0 0 PC00 0 1 PC10 1 0 PC20 1 1 PC31 0 0 PC41 0 1 PC51 1 0 PC61 1 1 PC7:示例n要使端口要使端口C的的PC7=1,使使PC3=0,设控制口地,设控制口地址为址为283H,请编写初始化程序。,请编写初始化程序
13、。nmov al,0fh ;置置PC7=1的控制字的控制字nmov dx,0283hnout dx,alnmov al,06h ;置置PC3=0的控制字的控制字nout dx,al提问2:n8255A的方式选择控制字和置的方式选择控制字和置1/置置0控制控制字都是写入控制端口的,那么,它们是字都是写入控制端口的,那么,它们是由什么来区分的?由什么来区分的?n利用利用8255的的PC5产生负脉冲,作打印机产生负脉冲,作打印机接口电路的数据选通信号。假设接口电路的数据选通信号。假设8255端端口地址为口地址为300H-303H。9.3.3 8255A的工作方式及应用举例n方式方式0:基本输入输出方
14、式:基本输入输出方式n适用于无条件传送和查询方式的接口电路适用于无条件传送和查询方式的接口电路n方式方式1:选通输入输出方式:选通输入输出方式n适用于查询和中断方式的接口电路适用于查询和中断方式的接口电路n方式方式2:双向选通传送方式:双向选通传送方式n适用于与双向传送数据的外设适用于与双向传送数据的外设n适用于查询和中断方式的接口电路适用于查询和中断方式的接口电路 任何一个端口可以作为输入口,也可以作为任何一个端口可以作为输入口,也可以作为输出口。输出口。各个端口输入或输出,可以有各个端口输入或输出,可以有1616种不同的组种不同的组合,所以可以适用于多种使用场合。合,所以可以适用于多种使用
15、场合。方式0输入时序datadata输入端口输入端口D0D7RD CS,A1,A0请体会这里请体会这里8255A8255A的数据缓冲作用的数据缓冲作用方式0输出时序WRdatadata输出端口输出端口D0D7 CS,A1,A08255A8255A对对CPUCPU通过它输出给外设的数据进行锁存通过它输出给外设的数据进行锁存方式方式0应用举例:打印机接口的信号与时序应用举例:打印机接口的信号与时序BUSYDATA07ACKSTROBEn主机把数据送给引脚主机把数据送给引脚DATA0DATA7n同时送出数据选通信号同时送出数据选通信号STROBE*n打印机在打印机在BUSY信号线上发出忙信号信号线上
16、发出忙信号n打印机处理好输入的数据时打印机处理好输入的数据时n撤消忙信号撤消忙信号n同时又送出一个响应信号同时又送出一个响应信号ACK*用8255A方式0与打印机接口BUSY DATA078255APC7PC2PA0PA7打印机打印机STROBE8255A的初始化mov dx,0fffeh;控制端口地址:控制端口地址:FFFEHmov al,10000001B;方式控制字:方式控制字:91Hout dx,al;A端口方式端口方式0输出,输出,C端口上输出、下输入端口上输出、下输入mov al,00001111B;端口端口C的复位置位控制字,使的复位置位控制字,使PC71out dx,al例11
17、.1打印子程序:查询printcprocpush axpush dxprn:mov dx,0fffch;读取端口读取端口Cin al,dx;查询打印机状态查询打印机状态and al,04h;PC2BUSY0?jnz prn;PC21,打印机忙,则循环等待,打印机忙,则循环等待例11.1打印子程序:输出mov dx,0fff8h;PC20,打印机不忙,则输出数据,打印机不忙,则输出数据mov al,ahout dx,al;将打印数据从端口将打印数据从端口A输出输出例11.1打印子程序:打印mov dx,0fffeh;从从PC7送出控制低脉冲送出控制低脉冲mov al,00001110B;置置ST
18、ROBE*0out dx,alnop;产生一定宽度的低电平产生一定宽度的低电平nopmov al,00001111B;置置=1out dx,al;最终,最终,STROBE*产生低脉冲信号产生低脉冲信号例11.1打印子程序:返回pop dxpop axretprintcendp例11.1数据选通信号表示外设已经准备好数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据PC4PC5PC3PA7PA0INTEAIBFAINTRASTBA中断允许触发器输入引脚:A端口方式1输入引脚:B端口PC2PC1PC0PB7PB0INTEBIBFBINTRBSTBB数据选通信号表示外设已经准备好
19、数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据中断允许触发器方式方式1 1需借用端口需借用端口C C用做联络信号用做联络信号同时还具有中断请求和屏蔽功能同时还具有中断请求和屏蔽功能方式1输入联络信号nSTB*选通信号,低电平有效选通信号,低电平有效n由外设提供的输入信号,当其有效时,将输入设备送由外设提供的输入信号,当其有效时,将输入设备送来的数据锁存至来的数据锁存至8255A的输入锁存器的输入锁存器nIBF输入缓冲器满信号,高电平有效输入缓冲器满信号,高电平有效n8255A输出的联络信号。当其有效时,表示数据已输出的联络信号。当其有效时,表示数据已锁存在输入锁存器锁存
20、在输入锁存器nINTR中断请求信号,高电平有效中断请求信号,高电平有效n8255A输出的信号,可用于向输出的信号,可用于向CPU提出中断请求,提出中断请求,要求要求CPU读取外设数据读取外设数据方式1输入时序PA7PA7PA0PA0PB7PB7PB0PB0STBIBFINTRRD外设送来数据外设送来数据当当INTE=1时时 RDRDD7D7D0D0PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEAINTEAPC2PC2与门与门IBFIBFSTBSTBINTRINTR方式1中断控制n8255A的中断由中断允许触发器的中断由中断允许触发器INTE控制控制n置位允许中断,复位禁止
21、中断置位允许中断,复位禁止中断n对对INTE的操作通过写入端口的操作通过写入端口C的对应位实的对应位实现,现,INTE触发器对应端口触发器对应端口C的位是作应答的位是作应答联络信号的输入信号的哪一位,只要对那联络信号的输入信号的哪一位,只要对那一位置位一位置位/复位就可以控制复位就可以控制INTE触发器触发器n选通输入方式下选通输入方式下n端口端口A的的INTEA对应对应PC4n端口端口B的的INTEB对应对应PC2方式1输出引脚:A端口外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据PC6PC7PC3PA7PA0INTEAOBFAI
22、NTRAACKA中断允许触发器方式1输出引脚:B端口PC2PC1PC0PB7PB0INTEBOBFBINTRBACKB外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据中断允许触发器方式1输出联络信号nOBF*输出缓冲器满信号,低有效输出缓冲器满信号,低有效n8255A输出给外设的一个控制信号,当其有效时,输出给外设的一个控制信号,当其有效时,表示表示CPU已把数据输出给指定的端口,外设可以取走已把数据输出给指定的端口,外设可以取走nACK*响应信号,低有效响应信号,低有效n外设的响应信号,指示外设的响应信号,指示8255A的端口数据已
23、由外设的端口数据已由外设接受接受nINTR中断请求信号,高有效中断请求信号,高有效n当输出设备已接受数据后,当输出设备已接受数据后,8255A输出此信号向输出此信号向CPU提出中断请求,要求提出中断请求,要求CPU继续提供数据继续提供数据端口端口A A的的INTEAINTEA对应对应PCPC6 6端口端口B B的的INTEBINTEB对应对应PCPC2 2方式1输出时序WROBFACK当当INTE=1时时 送往外设数据送往外设数据数据写入端口数据写入端口PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6与门与门OBFAOBFAACKAACKAINTRA
24、INTRAWRWRD7D7D0D0INTR2.查询方式的双机并行通信查询方式的双机并行通信甲乙两台微机之间并行传送1K字节数据。甲机发送,乙机接收。甲机一侧的8255A采用方式1工作,乙机一侧的8255A采用方式0工作。两机的CPU与接口之间都采用查询方式交换数据。(1)接口电路设计接口电路设计接口电路的连接如图916所示。甲机甲机8255A是是方式方式1发送,因此,把发送,因此,把PA口口指定为输出指定为输出,发送数据,而,发送数据,而PC7和和PC6引脚分引脚分别固定作联络线别固定作联络线 。乙机。乙机8255A是是方方式式0接收数据,故把接收数据,故把PA口定义为输入口定义为输入,另外,
25、另外,选用引脚选用引脚PC7和和PC3作联络线。虽然,两侧的作联络线。虽然,两侧的8255A都设置了联络线,但有本质的差别:都设置了联络线,但有本质的差别:甲机甲机8255A是方式是方式1,其联络线是固定的,不,其联络线是固定的,不可替换的;乙机的可替换的;乙机的8255A是方式是方式0,其联络线,其联络线是不固定的,可以选择,比如可选择是不固定的,可以选择,比如可选择PC4和和PC1、或、或PC5、PC2等任意组合。等任意组合。ACKOBF和甲机发送流程图甲机发送流程图:按方式按方式1初始化初始化8255A置发送中断允许置发送中断允许内存首地址内存首地址-SI字节数字节数-CX从内存取一个数
展开阅读全文