您好,欢迎访问三七文档
第7章第7章并行接口教学重点82C55A的工作方式和编程82C55A的应用并行数据传输方式以计算机的字长(常是8位、16位或32位)为传输单位,一次传送一个字长的数据适合于外部设备与微机之间进行近距离、大量和快速的信息交换例如:微机与并行接口打印机、磁盘驱动器微机系统中最基本的信息交换方法例如:系统板上各部件之间,接口电路板上各部件之间并行通信:在多条传输线上同时传输多位数据串行通信:利用单条传输线,将多位数据按照先后顺序逐位进行传输并行接口D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0缓冲器外部设备CPU串行接口缓冲器D7D6D5D4D3D2D1D0D0移位器CPU外部设备7.3并行接口电路82C55A具有多种功能的可编程并行接口电路芯片分3个端口,共24个外设引脚共三种输入输出工作方式7.3并行接口电路8255A82C55A的内部结构和引脚数据总线D7~D0A组控制数据总线缓冲器B组控制读/写控制逻辑端口A(8位)端口C(高4位)端口B(8位)端口C(低4位)内部数据总线(8位)RDWRA1A0RESETCSPA7~PA0PC7~PC4PC3~PC0PB7~PB0CPU接口内部逻辑外设接口1.外设数据端口端口A:PA0~PA7A组,支持工作方式0、1、2端口B:PB0~PB7B组,支持工作方式0、1端口C:PC0~PC7仅支持工作方式0A组控制高4位PC4~PC7B组控制低4位PC0~PC3端口A:PA0~PA7常作数据端口,功能最强大端口B:PB0~PB7常作数据端口端口C:PC0~PC7可作数据、状态和控制端口分两个4位,每位可独立操作控制最灵活,最难掌握2.与处理器接口CS*A1A0读操作RD*写操作WR*000001010011读端口A读端口B读端口C非法写端口A写端口B写端口C写控制字D0~D7数据线A0~A1地址线RD*读信号WR*写信号CS*片选信号RESET复位信号8255控制字8255有两个控制字:方式控制字用于决定各端口的工作方式置位/复位控制字控制端口C的各个位置/复位通过D7选择方式命令字D6D5D4D3D2D1D0D7C口下半部1输入0输出B口选择1输入0输出B口方式0方式01方式1C口上半部1输入0输出A口选择1输入0输出00方式001方式11X方式2A口方式特征位按位置位/复位命令字端口C的置位/复位控制字可实现对端口C的每一位进行控制。置位是使该位输出为“1”,复位是使该位输出为“0”。XXXD3D2D1D0D7位控制1置位特征位位选择0复位8255A的方式0在方式0下,彼此独立的两个8位(A,B)和两个4位(C口的上半部和下半部)并行口,共24根I/O线全部由用用户支配,都能被指定作为输入或者作为输出用。C口也可以看做是一个8位端口在方式0下,不设置专用联络信号线,需要联络时,可由用户任意指定C口中的哪根线完成某种联络功能。由于无固定的专用联络信号,因此也就在端口与I/O设备之间无固定的时序关系。8255A的方式1方式1是一种选通输入/输出方式或叫应答方式,需设置专用的联络信号线或应答信号线,以便对I/O设备和CPU两侧进行联络。PA和PB为数据口,而PC口的大部分引脚分配作专用的联络信号用。输入/输出操作过程中,产生固定的状态字,这些状态信息可作为查询或中断请求之用。状态字从PC口读取。方式2双向方式方式2将方式1的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据只有端口A可以工作于方式2,需要利用端口C的5个信号线,其作用与方式1相同方式2的数据输入过程与方式1的输入方式一样方式2的数据输出过程与方式1的输出方式有一点不同:数据输出时8255A不是在OBF*有效时向外设输出数据,而是在外设提供响应信号ACK*时才送出数据7.4方式0及应用方式1输入联络信号STB*——选通信号,低电平有效由外设提供的输入信号,当其有效时,表示外设开始送数据IBF——输入缓冲器满信号,高电平有效8255A输出的联络信号。当其有效时,表示数据已锁存在输入缓冲器,暂时不能送数据INTR——中断请求信号,高电平有效8255A输出的信号,可用于向CPU提出中断请求,要求CPU读取82C55A的数据方式1输入引脚:A端口数据选通信号表示外设开始送数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据PC4PC5PC3PA7~PA0INTEAIBFAINTRASTBA中断允许触发器由置/复位PC4控制方式1输入引脚:B端口PC2PC1PC0PB7~PB0INTEBIBFBINTRBSTBB数据选通信号表示外设已经开始送数据输入缓冲器满信号表示B口已经接收数据中断请求信号请求CPU接收数据中断允许触发器方式1需借用端口C用做联络信号同时还具有中断请求和屏蔽功能由置/复位PC2控制CPU外设INTEAPC4PC5PC3PC7PC6(pc4)PA7~PA0STBA(选通信号)IBFA(输入缓冲器满)DB7~DB0RDINTRA(中断请求信号)INTR方式1中断控制8255A的中断由中断允许触发器INTE控制置位允许中断,复位禁止中断对INTE的操作通过写入端口C的对应位实现,INTE触发器对应端口C的位是作应答联络信号的输入信号的哪一位,只要对那一位置位/复位就可以控制INTE触发器选通输入方式下端口A的INTEA对应PC4端口B的INTEB对应PC2方式1输出联络信号OBF*——输出缓冲器满信号,低有效8255A输出给外设的一个控制信号,当其有效时,通知外设取数据ACK*——响应信号,低有效外设的响应信号,指示8255A的端口数据已由外设接收INTR——中断请求信号,高有效当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续提供数据端口A的INTEA对应PC6端口B的INTEB对应PC2方式1输出引脚:A端口外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据PC6PC7PC3PA7~PA0INTEAOBFAINTRAACKA中断允许触发器方式1输出引脚:B端口PC2PC1PC0PB7~PB0INTEBOBFBINTRBACKB外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据中断允许触发器CPU外设INTEAPC7PC6PC3PC5PC4PA7~PA0ACKA(应答信号)OBFA(输出缓冲器满)DB7~DB0WRINTRA(中断请求信号)INTR82C55A时序82C55A时序D7D6D5D4D3D2D1D0方式1输入I/OI/OIBFAINTEAINTRAINTEBIBFBINTRB方式1输出OBFAINTEAI/OI/OINTRAINTEBOBFBINTRB端口C的状态字A组B组例7.3采用方式1的并口设计要求:在甲乙两机之间并行传送1KB数据,甲发送,乙接收。甲侧82C55A以方式1工作,乙侧82C55A以方式0工作。两机的CPU与接口之间采用查询方式传送数据。方式2双向方式方式2将方式1的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据只有端口A可以工作于方式2,需要利用端口C的5个信号线,其作用与方式1相同方式2的数据输入过程与方式1的输入方式一样方式2的数据输出过程与方式1的输出方式有一点不同:数据输出时8255A不是在OBF*有效时向外设输出数据,而是在外设提供响应信号ACK*时才送出数据方式2双向引脚PC6PC7PC3PA7~PA0INTE1OBFAINTRAACKAPC4PC5IBFASTBAINTE2用PC6设置INTE1(输出)用PC4设置INTE2(输入)输入和输出中断通过或门输出INTRA信号CPU外设方式2(A口)ACKA(应答信号)OBFA(输出缓冲器满)DB7~DB0WRINTRA(中断请求信号)INTRINTEAPC7PC6PC3PA7~PA0PC5PC4INTEBSTBA(选通信号)IBFA(输入缓冲器满)RDD7D6D5D4D3D2D1D0方式1输入I/OI/OIBFAINTEAINTRAINTEBIBFBINTRB方式1输出OBFAINTEAI/OI/OINTRAINTEBOBFBINTRB方式2双向OBFAINTE1IBFAINTE2INTRA×××端口C的状态字A组B组读写端口C:归纳1C端口被分成两个4位端口,两个端口只能以方式0工作,可分别选择输入或输出在控制上,C端口上半部和A端口编为A组,C端口下半部和B端口编为B组读写端口C:归纳2当A和B端口工作在方式1或方式2时,C端口的部分或全部引脚将被征用其余引脚仍可设定工作在方式0读写端口C:归纳3对端口C的数据输出有两种办法通过端口C的I/O地址:向C端口直接写入字节数据。这一数据被写进C端口的输出锁存器,并从输出引脚输出,但对设置为输入的引脚无效通过控制端口:向C端口写入位控字,使C端口的某个引脚输出1或0,或置位复位内部的中断允许触发器端口C的位控制字位控制字写入控制端口特别便于置位复位内部中断允许触发器INTE读写端口C:归纳4读取的C端口数据有两种情况未被A和B端口征用的引脚:将从定义为输入的端口读到引脚输入信息;将从定义为输出的端口读到输出锁存器中的信息被A和B端口征用作为联络线的引脚:将读到反映8255A状态的状态字8255A的初始化初始化编程:写入方式控制字,来指定其工作方式采用控制I/O地址:A1A0=11接着还要用置复位控制字将中断标志INTE置“1”或置“0”采用控制I/O地址:A1A0=11工作过程中:通过数据端口对外设数据进行读写读写数据端口初始化编程后:当数据端口作为输入接口时,执行输入IN指令将从输入设备得到外设数据当数据端口作为输出接口时,执行输出OUT指令将把CPU的数据送给输出设备9.28255A的应用举例作为通用的并行接口电路芯片,825A具有广泛的应用应用在IBMPC/XT微机上应用于打印机接口电路连接简易键盘驱动LED数码管……基本I/O应用P338连接关系地址分配数据线与奇偶地址关系编程键盘接口键盘是微型计算机系统中最常用的一种输入设备。键盘有两种类型:编码键盘和非编码键盘。编码键盘能自动提供对应于被按键的编码,如ASCII码,并能同时产生一个脉冲通知CPU。这种键盘的优点是使用方便,但需要较多的硬件,价格昂贵。非编码键盘由一组开关组成,提供行列式的键盘矩阵,其工作过程如按键的识别、按键代码的产生、防止串键和消除抖动等均由程序来实现。故这种键盘的优点是所需要的硬件较少,价格便宜,宜用于微机化仪表的面板的键盘。PB7PB6PB5PB4PB3PB2PB1PB0C98DE40F615B273APA0PA1PA2PA38255A8255A+5V4行×4列16个按键的键盘工作原理键盘扫描过程检测键盘上所有的键是否都松开,反复检测直至全松开检测键盘上是否有键按下,反复检测直至有键按下若有键按下,则消除键抖动后(硬件消抖动电路,软件延时消抖动下),再确认该键是否按下。对按下的键进行编码,即将该键所在的行号和列号转换成16进制代码。检测该键是否松开,反复检测直至松开。根据代码转相应功能子程序。读入列值键松开读入列值有键按下延时20ms消抖动键仍按下逐行逐列查按键查表得键代码所有行置“0”NNN程序代码LED显示器(补充)例:8255A作为开关K0~K3及七段LED显示器接口。要求开关设置的二进制信息,由PC0~PC3输入,经程序转换为对应的七段LED显示器的字形代码后,由PA口输出显示。8255APA7PA0~驱动器+5V+5VK0K1K2K3PC3PC2PC1PC0D7~D0RDWRA1A2ABCG2AG2BG1Y0Y1Y2OOOD7~D0RDWRA0A1CSA0A3A4
本文标题:并行接口8255
链接地址:https://www.777doc.com/doc-3356215 .html