1、第第6 6章教学要求章教学要求1.掌握并行通信和串行通信的基本概念,掌握并行通信和串行通信的基本概念,2.掌握并行接口芯片掌握并行接口芯片8255A的基本结的基本结构和特点构和特点 3.熟悉熟悉8255A的三种工作方式及其应的三种工作方式及其应用用 4.掌握掌握8255A的控制字的含义的控制字的含义并行通信与串行通信并行通信与串行通信 数据通信的基本方式可分为数据通信的基本方式可分为并行通信并行通信与与串行串行通信通信两种:两种:并行通信并行通信:是指利用多条数据传输线将一个:是指利用多条数据传输线将一个数据的各位同时传送。传输速度快,适用于数据的各位同时传送。传输速度快,适用于短距离通信。短
2、距离通信。串行通信串行通信:是指利用一条传输线将数据一位:是指利用一条传输线将数据一位位地顺序传送。位地顺序传送。通信线路简单,利用电话或通信线路简单,利用电话或电报线路就可实现通信,降低成本,适用于电报线路就可实现通信,降低成本,适用于远距离通信,但传输速度慢。远距离通信,但传输速度慢。6.1概述6.1概述一、串行通信的基本概念全双工方式全双工方式站站A站站B站站A站站B站站A站站B半双工方式半双工方式单工方式单工方式1.数据传送方向2.波特率与收/发时钟n串行传输速率也称串行传输速率也称波特率波特率(Baud Rate)n每秒传输的二进制位数每秒传输的二进制位数bpsn字符中每个二进制位持
3、续的时间长度都一样,为数据字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数传输速率的倒数n过去,串行异步通信的数据传输速率限制在过去,串行异步通信的数据传输速率限制在50 bps到到9600 bps之间。现在,可以达到之间。现在,可以达到115200 bps或更高或更高(1)串行传输速率)串行传输速率字符速率与波特率两者关系字符速率与波特率两者关系 字符速率:每秒钟传输的字符数。字符速率:每秒钟传输的字符数。波特率:指单位时间内传送二进制数据的波特率:指单位时间内传送二进制数据的位数。单位为:位数。单位为:b/s(2)发送发送/接收时钟接收时钟发送发送/接收时钟频率与接收时钟频率与
4、波特率之间的关系为:波特率之间的关系为:发送发送/接收时钟频率接收时钟频率=n 发送发送/接收接收波特率波特率例:要求传输速率为例:要求传输速率为1200 bps当选择当选择n=16时,时,表明一位数字信号中有表明一位数字信号中有16个时个时钟脉冲,故发送钟脉冲,故发送/接收时钟频率为:接收时钟频率为:1200 16=19.2kHz其中其中n称为波特因子,一般称为波特因子,一般n=1,16,32,64 3.串行通信的两种基本方式串行通信的两种基本方式在串行通信中,有两种最基本的通信在串行通信中,有两种最基本的通信方式:方式:同步通信(同步通信(Synchronous Data Communic
5、ation)异步通信(异步通信(Asynchronous Data Communication)异步通信以一个字符为传输单位,用起始位表示异步通信以一个字符为传输单位,用起始位表示字符的开始,用停止位表示字符结束字符的开始,用停止位表示字符结束(1)异步通信及其协议)异步通信及其协议起止式异步通信协议起始位每个字符开始传送的标志,起始位采用逻辑0电平起始位起始位校验位校验位停止位停止位空闲位空闲位数据位数据位低位低位高位高位字符字符0/10/1 0/10/10/10/10/10/11 10 01 11 11 1数据位数据位数据位紧跟着起始位传送。数据位紧跟着起始位传送。由由58个二进制位组成,
6、低位先传送个二进制位组成,低位先传送校验位校验位用于校验是否传送正确;可用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位选择奇检验、偶校验或不传送校验位停止位停止位表示该字符传送结束。停止表示该字符传送结束。停止位采用逻辑位采用逻辑1电平,可选择电平,可选择1、1.5或或2位位空闲位空闲位传送字符之间的逻辑传送字符之间的逻辑1电平,电平,表示没有进行传送表示没有进行传送n串行通信时的数据、控制和状态信息都使串行通信时的数据、控制和状态信息都使用同一根信号线传送用同一根信号线传送n收发双方必须遵守共同的通信协议(通信收发双方必须遵守共同的通信协议(通信规程),才能解决传送速率、信息格式、
7、规程),才能解决传送速率、信息格式、位同步、字符同步、数据校验等问题位同步、字符同步、数据校验等问题n串行异步通信以字符为单位进行传输,其串行异步通信以字符为单位进行传输,其通信协议是通信协议是起止式异步通信协议起止式异步通信协议2.同步通信 以一个数据块(帧)为传输单位,每个数据块附加1个或2个同步字符,最后以校验字符结束 同步通信的数据传输效率和传输速率较高,但硬件电路比较复杂 串行同步通信主要应用在网络当中 最常使用高级数据链路控制协议HDLC同步字符同步字符数据数据数据数据数据数据校验字符校验字符3.信号传输方式1基带传输方式基带传输方式 基带传输方式仅适宜于近距离和速度较低的通信。基
8、带传输方式仅适宜于近距离和速度较低的通信。在传输线路上直接传输不加调制的二进制信号,如图所示。在传输线路上直接传输不加调制的二进制信号,如图所示。它要求传送线的频带较宽,传输的数字信号是矩形波。它要求传送线的频带较宽,传输的数字信号是矩形波。3.信号传输方式(续)2 2频带传输方式频带传输方式传输经过调制的模拟信号传输经过调制的模拟信号q在长距离通信时,发送方要用调制器把数字信号转在长距离通信时,发送方要用调制器把数字信号转换成模拟信号,接收方则用解调器将接收到的模拟信换成模拟信号,接收方则用解调器将接收到的模拟信号再转换成数字信号,这就是信号的调制解调。号再转换成数字信号,这就是信号的调制解
9、调。q实 现 调 制 和 解 调 任 务 的 装 置 称 为 调 制 解 调 器实 现 调 制 和 解 调 任 务 的 装 置 称 为 调 制 解 调 器(MODEM)。采用频带传输时,通信双方各接一个调制。采用频带传输时,通信双方各接一个调制解调器,将数字信号寄载在模拟信号解调器,将数字信号寄载在模拟信号(载波载波)上加以传输上加以传输。因此,这种传输方式也称为载波传输方式。这时的。因此,这种传输方式也称为载波传输方式。这时的通信线路可以是电话交换网,也可以是专用线。通信线路可以是电话交换网,也可以是专用线。常用的调制方式有三种常用的调制方式有三种:调幅、调频和调相,分别如下图所示。调幅、调
10、频和调相,分别如下图所示。3.信号传输方式(续)4.调制解调器 调制(Modulating)把数字信号转换为电话线路传送的模拟信号 解调(Demodulating)将电话线路的模拟信号转换为数字信号 调制解调器MODEM 具有调制和解调功能的器件合制在一个装置6.2.1 串行接口的标准 串行接口标准:指的是计算机或终端(数据终端设备DTE)的串行接口电路与调制解调器MODEM等(数据通信设备DCE)之间的连接标准。一、串行接口标准RS-232C 美国电子工业协会EIA制定的通用标准串行接口 1962年公布,1969年修订 1987年1月正式改名为EIA-232D 设计目的是用于连接调制解调器
11、现已成为数据终端设备DTE(例如计算机)与数据通信设备DCE(例如调制解调器)的标准接口 可实现远距离通信,也可近距离连接两台微机 属于网络层次结构中的最低层:物理层一、一、RS-232C标准(续)标准(续)RS-232C是一种标准接口,D型插座,采用25芯引脚或9芯引脚的连接器,如图所示。连接及通信原理 微型计算机之间的串行通信就是按照RS-232C标准设计的接口电路实现的。如果使用一根电话线进行通信,那么计算机和MODEM之间的连线就是根据RS-232C标准连接的。其连接及通信原理如图所示。1.RS-232C的引脚定义 232C接口标准使用一个25针连接器 绝大多数设备只使用其中9个信号,
12、所以就有了9针连接器 232C包括两个信道:主信道和次信道 次信道为辅助串行通道提供数据控制和通道,但其传输速率比主信道要低得多,其他跟主信道相同,通常较少使用RS-232C的引脚(1)TxD:发送数据 串行数据的发送端 RxD:接收数据 串行数据的接收端RS-232C的引脚(2)RTS:请求发送 当数据终端设备准备好送出数据时,就发出有效的RTS信号,用于通知数据通信设备准备接收数据 CTS:清除发送(允许发送)当数据通信设备已准备好接收数据终端设备的传送数据时,发出CTS有效信号来响应RTS信号 RTS和CTS是数据终端设备与数据通信设备间一对用于数据发送的联络信号RS-232C的引脚(3
13、)DTR:数据终端准备好 通常当数据终端设备一加电,该信号就有效,表明数据终端设备准备就绪 DSR:数据装置准备好 通常表示数据通信设备(即数据装置)已接通电源连到通信线路上,并处在数据传输方式 DTR和DSR也可用做数据终端设备与数据通信设备间的联络信号,例如应答数据接收RS-232C的引脚(4)GND:信号地 为所有的信号提供一个公共的参考电平 CD:载波检测(DCD)当本地调制解调器接收到来自对方的载波信号时,该引脚向数据终端设备提供有效信号 RI:振铃指示 当调制解调器接收到对方的拨号信号期间,该引脚信号作为电话铃响的指示、保持有效RS-232C的引脚(5)保护地(机壳地)起屏蔽保护作
14、用的接地端,一般应参照设备的使用规定,连接到设备的外壳或大地 TxC:发送器时钟 控制数据终端发送串行数据的时钟信号 RxC:接收器时钟 控制数据终端接收串行数据的时钟信号2.RS-232C的连接 微机利用232C接口连接调制解调器,用于实现通过电话线路的远距离通信 微机利用232C接口直接连接进行短距离通信。这种连接不使用调制解调器,所以被称为零调制解调器(Null Modem)连接连接调制解调器电话线电话线MODEM微机微机2345678202223456782022MODEM23456782022数据装置准备好数据装置准备好DSRDSR数据终端准备好数据终端准备好DTRDTR发送数据发送
15、数据TxDTxD接收数据接收数据RxDRxD请求发送请求发送RTSRTS允许发送允许发送CTSCTS信号地信号地GNDGND载波检测载波检测CDCD振铃指示振铃指示RIRI微机微机23456782022不使用联络信号的3线相连方式微机微机TxDRxDGND微机微机为了交换信息,为了交换信息,TxD和和RxD应当交叉连接应当交叉连接程序中不必使程序中不必使RTS和和DTR有效有效也不应检测也不应检测CTS和和DSR是否有效是否有效“伪”使用联络信号的3线相连方式RTS和和CTS各自互接,各自互接,DTR和和DSR各自互接各自互接表明请求传送总是允许、数据装置总准备好表明请求传送总是允许、数据装置
16、总准备好微机微机DSRDTRTxDRxDRTSCTSGND微机微机使用联络信号的多线相连方式通信比较可靠通信比较可靠所用连线较多,不如前者经济所用连线较多,不如前者经济微机微机DSRDTRTxDRxDRTSCTSGND微机微机3.RS-232C的电气特性 232C接口采用EIA电平 高电平为3V15V 低电平为3V15V 实际常用12V或15Vn标准标准TTL电平电平n高电平:高电平:2.4V5Vn低电平:低电平:0V0.4V相互转换相互转换二、可编程串行通信接口芯片8251A 1.1.8251A8251A基本性能基本性能(1)(1)两种传送方式:同步和异步传送两种传送方式:同步和异步传送(2
17、)(2)同步传送:同步传送:5858位位/字符,内部或外部同步可字符,内部或外部同步可自动插人同步字符自动插人同步字符(3)(3)异步传送:异步传送:5858位位/字符,时钟速率为通信波字符,时钟速率为通信波特率的特率的1 1、1616或或6464倍倍(4)(4)可自动产生、检测和处理终止字符,可自动产生、检测和处理终止字符,可产生可产生1 1、1.51.5或或2 2位的停止位位的停止位(5)(5)波特率在同步方式时为波特率在同步方式时为0 064Kbps64Kbps,异步方式时为异步方式时为0 019.2Kbps19.2Kbps(6)(6)全双工、双缓冲器发送器和接收器全双工、双缓冲器发送器
18、和接收器(7)(7)出错检测:具有奇偶、溢出和帧错出错检测:具有奇偶、溢出和帧错误等检测电路误等检测电路n以计算机的字长,通常是以计算机的字长,通常是8位、位、16位或位或32位为传输单位,一次传送一个字长的数据位为传输单位,一次传送一个字长的数据n适合于外部设备与微机之间进行近距离、适合于外部设备与微机之间进行近距离、大量和快速的信息交换大量和快速的信息交换n例如:微机与并行接口打印机、磁盘驱动器例如:微机与并行接口打印机、磁盘驱动器n微机系统中最基本的信息交换方法微机系统中最基本的信息交换方法n例如:系统板上各部件之间,接口电路板上例如:系统板上各部件之间,接口电路板上各部件之间各部件之间
19、6.3并行通信并行通信 与并行相比与并行相比串行通信的特点串行通信的特点n 将数据分解成二进制位用一条信号线,将数据分解成二进制位用一条信号线,既传送数据信息,又传送控制信息既传送数据信息,又传送控制信息n 要求数据格式固定,分为异步和同步数要求数据格式固定,分为异步和同步数据格式据格式n 串行通信中对信号的逻辑定义与串行通信中对信号的逻辑定义与TTL不不兼容,需进行逻辑关系和逻辑电平转换兼容,需进行逻辑关系和逻辑电平转换n 串行传送信息的速率需要控制,要求双串行传送信息的速率需要控制,要求双方约定通信传输的波特率方约定通信传输的波特率6.4 可编程并行通信接口芯片8255A18255A有两个
20、8位(端口A与端口B)和两个4位(端口C高/低4位)的并行输入/输出端口2端口A有三种工作方式:方式0、方式1、方式2;端口B口有两种工作方式:方式0、方式1;可适应CPU与I/O接口的多种数据传送方式,如无条件传送、查询式传送和中断方式传送等3端口C的使用较特殊,除工作在方式0作为数据端口之外,当工作在方式1和方式2时,它的大部分引脚被用作联络信号,端口C还可以进行按位置位/复位操作一、一、8255A8255A的主要特性的主要特性二二8255A8255A的编程结构的编程结构8255A由以下几部分组成组成:见图1 1三个数据端口三个数据端口A A,B B,C C这三个端口均可看作是I/O口,但
21、它们的结构和功能也稍有不同。A A口口:是一个独立的8位I/O口,它的内部有对数据输入输入/输出的锁存功能。输出的锁存功能。B B口口:也是一个独立的8位I/O口,仅对输出数据的锁存功能输出数据的锁存功能。C C口口:可以看作是一个独立的一个独立的8 8位位I/OI/O口口;也可以看作是两个独两个独立的立的4 4位位I/OI/O口口,也是仅对输出数据进行锁存输出数据进行锁存。2A组和组和B组的控制电路组的控制电路这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对C口的指定位进行置/复
22、位的操作。A组控制电路用来控制A口及C口的高4位;B组控制电路用来控制B口及C口的低4位。3数据总线缓冲器数据总线缓冲器8位的双向的三态缓冲器。位的双向的三态缓冲器。作为8255A与系统总线连接的界面,输入/输出的数据,CPU的编程命令以及外设通过8255A传送的工作状态等信息,都是通过它来传输的。4读读/写控制逻辑写控制逻辑读读/写控制逻辑电路负责管理写控制逻辑电路负责管理8255A的数据传输过程。的数据传输过程。它接收片选信号/CS及系统读信号/RD、写信号/WR、复位信号RESET,还有来自系统地址总线的口地址选择信号A0和A1。三、三、8255A8255A芯片的引脚信号芯片的引脚信号8
23、255A的引脚信号如图所示。它为双列直插式封装,除了电源和地线以外,其外部引脚信号可分为两组,一组是面向CPU的信号,一组是面向外设的信号。1.面向CPU一侧的引脚信号 D7D0,8位,双向,三态数据线位,双向,三态数据线 RESET,复位信号复位信号 CS*,片选信号片选信号RD*,读信号读信号WR*,写信号写信号 A1、A0,端口选择信号,端口选择信号 A1 A0RD*WR*CS*输入操作(CPU读)001010000111000数据总线 端口A数据总线 端口B 数据总线 端口C 00110101111100000000输出操作(CPU写)数据总线端口A 数据总线端口B 数据总线端口C数据
24、总线控制端口8255A的读/写操作控制2.面向外设一侧的引脚信号 n端口端口A:PA0PA7nA组,支持工作方式组,支持工作方式0、1、2n端口端口B:PB0PB7nB组,支持工作方式组,支持工作方式0、1n端口端口C:PC0PC7n仅支持工作方式仅支持工作方式0nA组控制高组控制高4位位PC4PC7nB组控制低组控制低4位位PC0PC3n端口端口A:PA0PA7n常作数据端口,功能最强大常作数据端口,功能最强大n端口端口B:PB0PB7n常作数据端口常作数据端口n端口端口C:PC0PC7n可作数据、状态和控制端口可作数据、状态和控制端口n分两个分两个4位,每位可独立操作位,每位可独立操作n控
25、制最灵活,最难掌握控制最灵活,最难掌握功能:四、8255A的内部结构 五、8255A工作方式字和编程8255A有两种控制字:工作方式选择控制字 端口C的按位置位/复位控制字 1.工作方式选择控制字D7=12.按位置位/复位控制字(D7=0)3.3.关于两个控制字的讨论关于两个控制字的讨论 工作方式命令工作方式命令指定指定8255A的的3个端口个端口的工作方式,必须初始化。的工作方式,必须初始化。按位置位按位置位/复位命令复位命令只对只对PC口的输口的输出进行控制,可放到初始化程序的任何地方。出进行控制,可放到初始化程序的任何地方。特征位的设置特征位的设置 D71,为工作方式命,为工作方式命令;
26、令;D70为按位置位为按位置位/复位命令。复位命令。按位置位按位置位/复位命令代码只能写入命令口。复位命令代码只能写入命令口。4.8255A的初始化编程n初始化编程:一个方式控制字初始化编程:一个方式控制字n采用控制采用控制I/O地址:地址:A1A011n工作过程中:通过数据端口对外设数据工作过程中:通过数据端口对外设数据进行读写进行读写n数据读写利用端口数据读写利用端口A、B和和C的的I/O地址,地址,A1A0依次等于依次等于00、01、10nIBM PC/XT机上,端口机上,端口A、B、C和控制和控制端口的端口的I/O地址为地址为60H、61H、62H和和63H(1)写入方式控制字:示例n
27、要求:要求:nA端口:方式端口:方式1输入输入nC端口上半部:输出,端口上半部:输出,C口下半部:输入口下半部:输入nB端口:方式端口:方式0输出输出n方式控制字:方式控制字:10110001B或或B1Hn初始化的程序段:初始化的程序段:MOV DX,303H;假设控制端口为假设控制端口为303HMOV AL,0B1H;方式控制字方式控制字OUT DX,AL;送到控制端口送到控制端口(2)读写数据端口n初始化编程后:初始化编程后:n当数据端口作为输入接口时,执行输入当数据端口作为输入接口时,执行输入IN指指令将从输入设备得到外设数据令将从输入设备得到外设数据n当数据端口作为输出接口时,执行输出
28、当数据端口作为输出接口时,执行输出OUT指令将把指令将把CPU的数据送给输出设备的数据送给输出设备n8255A具有锁存输出数据的能力具有锁存输出数据的能力n对输出方式的端口同样可以输入对输出方式的端口同样可以输入n不是读取外设数据不是读取外设数据n读取的是上次读取的是上次CPU给外设的数据给外设的数据读写数据端口:示例n利用利用8255A的输出锁存能力,可实现按位的输出锁存能力,可实现按位输出控制输出控制 n对输出端口对输出端口B的的PB7位置位的程序段:位置位的程序段:MOV DX,301H;B端口假设为端口假设为301HIN AL,DX;读出读出B端口原输出内容端口原输出内容OR AL,8
29、0H;使使PB71OUT DX,AL;输出新的内容输出新的内容(3)读写端口C:归纳1nC端口被分成端口被分成两个两个4位端口位端口,两个端口只,两个端口只能以方式能以方式0工作,可分别选择输入或输出工作,可分别选择输入或输出n在控制上,在控制上,C端口上半部和端口上半部和A端口编为端口编为A组,组,C端口下半部和端口下半部和B端口编为端口编为B组组(3)读写端口C:归纳2n当当A和和B端口工作在方式端口工作在方式1或方式或方式2时,时,C端口的部分或全部引脚将端口的部分或全部引脚将被征用被征用n其余引脚仍可设定工作在方式其余引脚仍可设定工作在方式0(3)读写端口C:归纳3n对端口对端口C的数
30、据输出有两种办法的数据输出有两种办法n通过端口通过端口C的的I/O地址:地址:向向C端口直接端口直接写入写入字节数据字节数据。这一数据被写进。这一数据被写进C端口的输出端口的输出锁存器,并从输出引脚输出,但对设置为锁存器,并从输出引脚输出,但对设置为输入的引脚无效输入的引脚无效n通过控制端口:通过控制端口:向向C端口端口写入位控字写入位控字,使,使C端口的某个引脚输出端口的某个引脚输出1或或0,或置位复位,或置位复位内部的中断允许触发器内部的中断允许触发器(3)读写端口C:归纳4n读取的读取的C端口数据有两种情况端口数据有两种情况n未被未被A和和B端口征用的引脚端口征用的引脚:将从定义为:将从
31、定义为输入的端口读到引脚输入信息;将从定义输入的端口读到引脚输入信息;将从定义为输出的端口读到输出锁存器中的信息为输出的端口读到输出锁存器中的信息n被被A和和B端口征用作为联络线的引脚端口征用作为联络线的引脚:将:将读到反映读到反映8255A状态的状态的状态字状态字六、8255A的工作方式 方式0:基本输入输出方式 适用于无条件传送和查询方式的接口电路 方式1:选通输入输出方式 适用于查询和中断方式的接口电路 方式2:双向选通传送方式 适用于与双向传送数据的外设 适用于查询和中断方式的接口电路1.1.方式方式0 0方式方式0的特点的特点 0方式是一种基本输入方式是一种基本输入/输出方式输出方式
32、 在在0方式下,方式下,24根根I/O线全部由用户线全部由用户支配支配 不设置专用的联络信号线不设置专用的联络信号线 单向单向I/O2.2.方式方式1 1 方式方式1为选通输入输出方式,需要专用的联络信为选通输入输出方式,需要专用的联络信号线,该方式通常用于查询(条件号线,该方式通常用于查询(条件)传送,数据的传送,数据的输入输出均有能力输入输出均有能力 PA和和PB为数据口,而为数据口,而PC口的大部分引脚作专口的大部分引脚作专用的联络信号用的联络信号 各联络信号线之间有固定的时序关系,传送时,各联络信号线之间有固定的时序关系,传送时,要严格按时序进行要严格按时序进行 输入输入/输出操作过程
33、中,产生输出操作过程中,产生固定的状态字,这些状态字可作为查询或中断请求固定的状态字,这些状态字可作为查询或中断请求字用。状态字从字用。状态字从PC口读取口读取 单向传送单向传送(1)端口A方式1作输入:数据选通信号表示外设已经准备好数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据PC4PC5PC3PA7PA0INTEAIBFAINTRASTBA中断允许触发器PC2PC1PC0PB7PB0INTEBIBFBINTRBSTBB数据选通信号表示外设已经准备好数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据中断允许触发器端口B方式1作输入:方式1输入联络信
34、号定义nSTB*选通信号,低电平有效选通信号,低电平有效由外设提供的输入信号,当其有效时,将输入设备送由外设提供的输入信号,当其有效时,将输入设备送来的数据锁存至来的数据锁存至8255A的输入锁存器的输入锁存器nIBF输入缓冲器满信号,高电平有效输入缓冲器满信号,高电平有效8255A输出的联络信号。当其有效时,表示数据已输出的联络信号。当其有效时,表示数据已锁存在输入锁存器锁存在输入锁存器nINTR中断请求信号,高电平有效中断请求信号,高电平有效8255A输出的信号,可用于向输出的信号,可用于向CPU提出中断请求,要提出中断请求,要求求CPU读取外设数据读取外设数据nINTE 中断允许信号,高
35、电平有效中断允许信号,高电平有效用用于于控制中断允许或中断屏蔽控制中断允许或中断屏蔽联络信号 端口A 端口B STB*对应PC4 对应PC2 IBF对应PC5 对应PC1 INTR对应PC3 对应PC0 INTEPC4置位 PC2置位 8255A方式1作输入时的各联络信号对应关系(2)8255A工作在方式1下的输入时序(3)端口A方式1作输出:外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据PC6PC7PC3PA7PA0INTEAOBFAINTRAACKA中断允许触发器端口B方式1作输出:PC2PC1PC0PB7PB0INTEBOBF
36、BINTRBACKB外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据中断允许触发器方式1输出联络信号nOBF*输出缓冲器满信号,低有效输出缓冲器满信号,低有效n8255A输出给外设的一个控制信号,当其有效时,输出给外设的一个控制信号,当其有效时,表示表示CPU已把数据输出给指定的端口,外设可以取走已把数据输出给指定的端口,外设可以取走nACK*响应信号,低有效响应信号,低有效n外设的响应信号,指示外设的响应信号,指示8255A的端口数据已由外设的端口数据已由外设接受接受nINTR中断请求信号,高有效中断请求信号,高有效n当输出设备已接
37、受数据后,当输出设备已接受数据后,8255A输出此信号向输出此信号向CPU提出中断请求,要求提出中断请求,要求CPU继续提供数据继续提供数据联络信号 端口A 端口B OBF*对应PC7对应PC1 ACK对应PC6 对应PC2 INTR对应PC3 对应PC0 INTEPC6置位 PC2置位 8255A方式1作输出时的各联络信号对应关系(4)8255A工作在方式1下的输入时序3.3.方式方式2 2(双向选通方式)n方式方式2将方式将方式1的选通输入输出功能组合成一个的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据双向数据端口,可以发送数据和接收数据n只有端口只有端口A可以工作于方式
38、可以工作于方式2,需要利用端口,需要利用端口C的的5个信号线,其作用与方式个信号线,其作用与方式1相同相同n方式方式2的数据输入过程与方式的数据输入过程与方式1的输入方式一样的输入方式一样n方式方式2的数据输出过程与方式的数据输出过程与方式1的输出方式有一的输出方式有一点不同:数据输出时点不同:数据输出时8255A不是在不是在OBF*有效时有效时向外设输出数据,而是在外设提供响应信号向外设输出数据,而是在外设提供响应信号ACK*时才送出数据时才送出数据(1)方式2的信号定义PC6PC7PC3PA7PA0INTE1OBFAINTRAACKAPC4PC5IBFASTBAINTE2用PC6设置INT
39、E1(输出)用PC4设置INTE2(输入)输入和输出中断通过或门输出INTRA信号(2)8255A工作在方式2下的工作时序已知某8255A在系统中占用888BH号端口地址,现欲安排其PA,PB,PC口全部为输出,PA,PB口均工作于方式0模式,并将PC6置位,使PC3复位,试编写出相应的初始化程序 MOV AL,80H OUT 8BH,AL MOV AL,ODH OUT 8BH,AL MOV AL,06H OUT 8BH,AL 设8255的端口地址为200H203H。(1)要求PA口方式1,输入;PB口方式0输出;PC7PC6为输入;PC1PC0为输出。试写出8255的初始化程序。(2)程序要
40、求当PC7=0时置位PC1,而当PC6=1时复位PC0,试编制相应的程序。(1)MOV DX,203H MOV AL,10111000B OUT DX,AL (2)MOV DX,202H IN AL,DX MOV AH,AL TEST AL,80H JNZ NEXT1 MOV DX,203H MOV AL,00000011B ;对PC1置位 OUT DX,AL NEXT1:MOV AL,AH TEST AL,40H JZ NEXT2 MOV AL,00000000B;对PC0复位 MOV DX,203H OUT DX,ALNEXT2:利用8255进行接口设计,使之完成以下功能:C口连接一指示灯
41、,当A口输入的开关信号和B口输入的开关信号相同时,指示灯点亮;不相同时指示灯熄灭。要求:(1)A口和B口分别只连接一个开关即可。(2)在下图中画出必要的连接线,不要求地址译码。(3)编写程序片段实现以上功能PC0D7-0RDWRA1A0译码器CPU+5V+5VPA0PB0程序片断如下:设地址为280H283HMOV DX,283H MOV AL,92H OUT DX,AL MOV DX,280H IN AL,DX MOV AH,AL MOV DX,281H IN AL,DX CMP AH,AL JZ OK MOV DX,283H MOV AL,0 OUT DX,AL JMP L1 OK:MOV DX,283H MOV AL,1 OUT DX,AL L1:用8255 编程实现开关K0K7 一一对应控制发光二极管L0L7的亮灭,已知A口的地址为 0380H。(1)写出8255 其余端口的地址;(2)画出8255 的连接图。(3)写出8255 的初始化程序。(1)0381H 0382H 0383H MOV DX,0383H MOV AL,90H OUT DX,AL A:MOV DX,0380H IN AL,DX MOV DX,0381H OUT DX,AL JMP A HLT