微机原理与接口技术第六章.ppt

上传人:豆**** 文档编号:88709007 上传时间:2023-04-30 格式:PPT 页数:107 大小:2.02MB
返回 下载 相关 举报
微机原理与接口技术第六章.ppt_第1页
第1页 / 共107页
微机原理与接口技术第六章.ppt_第2页
第2页 / 共107页
点击查看更多>>
资源描述

《微机原理与接口技术第六章.ppt》由会员分享,可在线阅读,更多相关《微机原理与接口技术第六章.ppt(107页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、微机原理与接口技术第六章 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望第第6 6章章 串并行通信和接口技术串并行通信和接口技术n本章重点本章重点串并行通信接口串并行通信接口通信规程和通信标准通信规程和通信标准8251A和和8255A的特点及应用的特点及应用8251A和和8255A的编程的编程 26.1 接口的功能及在系统中的连接接口的功能及在系统中的连接 6.1.1接口的功能接口的功能1.寻址能力:寻址能力:对送来的片选信号进行识别。对送来的片选信号进行识别。2

2、.输入输入/输出功能:输出功能:根据读根据读/写信号决定当前进行的是输入操作还是输出操作。写信号决定当前进行的是输入操作还是输出操作。3.数据转换功能:数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。并行数据向串行数据的转换或串行数据向并行数据的转换。4.联络功能:联络功能:就绪信号,忙信号等。就绪信号,忙信号等。5.中断管理:中断管理:发出中断请求信号、接收中断响应信号、发送中断类型码的功能。发出中断请求信号、接收中断响应信号、发送中断类型码的功能。并具有优先级管理功能。并具有优先级管理功能。6.复位:复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。接收复位信

3、号,从而使接口本身以及所连的外设进行重新启动。7.可编程:可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。用软件来决定其工作方式,用软件来设置有关的控制信号。8.错误检测错误检测:一类是传输错误。另一类是覆盖错误。:一类是传输错误。另一类是覆盖错误。3典型的典型的I/O接口和外部电路连接图接口和外部电路连接图 46.1.2 接口与系统的连接接口与系统的连接n接口电路位于接口电路位于CPU与外设之间与外设之间n从结构上可以把一个接口分为两个部分:从结构上可以把一个接口分为两个部分:面向面向CPU一侧的信号:一侧的信号:用于与用于与CPU连接连接主要是数据、地址和控制信号主要是数据、地

4、址和控制信号 面向外设一侧的信号:面向外设一侧的信号:用于与外设连接用于与外设连接提供的信号五花八门提供的信号五花八门功能定义、时序及有效电平等差异较大功能定义、时序及有效电平等差异较大56.2 串行接口和串行通信串行接口和串行通信6.2.1 串行接口串行接口n串行通信串行通信:用一根信号线将数据逐位顺序传送;用一根信号线将数据逐位顺序传送;在传输过程中,每一位数据占一个在传输过程中,每一位数据占一个固定的时间长度固定的时间长度。n串行通信的优势串行通信的优势:通信线路少,在远距离通信时可以极大地降低成本;通信线路少,在远距离通信时可以极大地降低成本;适合于远距离数据传送;适合于远距离数据传送

5、;也常用于速度要求不高的近距离数据传送也常用于速度要求不高的近距离数据传送6可编程串行接口的典型结构可编程串行接口的典型结构n控制寄存器用来容纳控制寄存器用来容纳CPU送送给此接口的各种控制信息,给此接口的各种控制信息,决定接口的工作方式决定接口的工作方式 n状态寄存器的各位叫状态位状态寄存器的各位叫状态位n每一个状态位都可以用来指示传输过程中每一个状态位都可以用来指示传输过程中的某一种错误或者当前传输状态的某一种错误或者当前传输状态n数据输入寄存器总是和串行输入并行输出移位数据输入寄存器总是和串行输入并行输出移位寄存器配对使用的。寄存器配对使用的。n在输入过程中,数据一位一位从外部设备进入在

6、输入过程中,数据一位一位从外部设备进入接口的移位寄存器,当接收完接口的移位寄存器,当接收完1个字符以后,个字符以后,数据就从移位寄存器送到数据输入寄存器,再数据就从移位寄存器送到数据输入寄存器,再等待等待CPU来取走来取走 串行串行并行并行7可编程串行接口的典型结构可编程串行接口的典型结构n一般有一般有4个主要寄存器个主要寄存器控制寄存器状态寄存器数据输入寄存器数据输出寄存器nCPU可以访问串行接口中的可以访问串行接口中的4个主要寄存器;个主要寄存器;n控制寄存器和数据输出寄存器是只写的;控制寄存器和数据输出寄存器是只写的;n状态寄存器和数据输入寄存器是只读的;状态寄存器和数据输入寄存器是只读

7、的;n可以用读信号和写信号来区分这两组寄存器,再用可以用读信号和写信号来区分这两组寄存器,再用1位位地址来区分地址来区分2个只读寄存器或个只读寄存器或2个只写寄存器。个只写寄存器。(图示图示)86.2.2 串行通信涉及的几个问题串行通信涉及的几个问题全双工全双工站站A站站B站站A站站B站站A站站B半双工半双工单单 工工1.全双工方式和半双工方式全双工方式和半双工方式2.同步方式和异步方式同步方式和异步方式串行异步通信串行异步通信按字符传送;不传送时钟信号按字符传送;不传送时钟信号串行同步通信串行同步通信按帧按帧(多个字符多个字符)传送;传送时钟信号传送;传送时钟信号无论同步方式还是异步方式,无

8、论同步方式还是异步方式,都是串行传送都是串行传送图示图示9同步通信同步通信通信双方使用同一时钟通信双方使用同一时钟n以数据块以数据块(帧帧,多个字符组成多个字符组成)为传输单位为传输单位n双方使用同一时钟双方使用同一时钟(主控方提供主控方提供时钟,被控方接收时钟时钟,被控方接收时钟)外同步:时钟信号另外安排一根传输线外同步:时钟信号另外安排一根传输线自同步:发送时将时钟信号与数据混合编码,接收时译码出时钟信号自同步:发送时将时钟信号与数据混合编码,接收时译码出时钟信号n数据格式:每个数据块前加数据格式:每个数据块前加12个同步字符(同步头)进行帧个同步字符(同步头)进行帧同步。同步。n同步通信

9、的数据传输效率和传输速率较高,但硬件电路比较同步通信的数据传输效率和传输速率较高,但硬件电路比较复杂复杂n串行同步通信主要应用在网络当中,最常使用的同步通信协串行同步通信主要应用在网络当中,最常使用的同步通信协议有高级数据链路控制协议(议有高级数据链路控制协议(HDLC)同步字符数据数据数据校验同步字符10同步通信的数据格式同步通信的数据格式同步字符同步字符数据块数据块同步字符同步字符1 1 同步字符同步字符2 2CRC 1数据块数据块CRC 2CRC 1CRC 2单同步格式单同步格式双同步格式双同步格式n同步传输不允许有间隙同步传输不允许有间隙11异步通信异步通信通信双方使用各自的时钟通信双

10、方使用各自的时钟n串行通信时的数据、控制和状态信息都使用串行通信时的数据、控制和状态信息都使用同同一根信号线一根信号线传送传送n收发双方必须遵守共同的通信协议(通信规程)收发双方必须遵守共同的通信协议(通信规程)n串行异步通信串行异步通信以字符为单位以字符为单位进行传输,每个字进行传输,每个字符的前后都要有分隔位。符的前后都要有分隔位。n与同步方式不同,两个字符之间的传输间隔是与同步方式不同,两个字符之间的传输间隔是任意的。任意的。n数据格式:数据格式:起止式异步通信协议起止式异步通信协议12起止式异步通信协议起止式异步通信协议n起始位起始位每个字符开始传送的标志,起始位采用逻辑每个字符开始传

11、送的标志,起始位采用逻辑0电平电平起始位起始位附加位附加位停止位停止位空闲位空闲位数据位数据位低位低位高位高位字符字符0/10/1 0/10/10/10/10/10/11 10 01 11 11 1数数据据位位数数据据位位紧紧跟跟着着起起始始位位传传送送。由由58个个二二进进制位组成,低位先传送制位组成,低位先传送附附加加位位该该位位可可用用于于校校验验或或数数据据标标识识:可可选选择择奇奇检检验、偶校验或无校验位验、偶校验或无校验位停停止止位位表表示示该该字字符符传传送送结结束束。停停止止位位为为逻逻辑辑1电电平平,可选择可选择1、1.5、2位。位。空空闲闲位位传传送送字字符符之之间间的的逻

12、逻辑辑1电电平平,表表示示没没有有进进行行传送传送13波特率和波特率因子波特率和波特率因子n发送时钟发送时钟:在用异步方式进行通信时,发送端需要用时钟来决定每一位对在用异步方式进行通信时,发送端需要用时钟来决定每一位对应的时间长度应的时间长度n接收时钟接收时钟:在用异步方式进行通信时,接收端也需要用一个时钟来测定每在用异步方式进行通信时,接收端也需要用一个时钟来测定每一位的时间长度一位的时间长度n发送时钟和接收时钟的频率可以是位传输率的发送时钟和接收时钟的频率可以是位传输率的16倍、倍、32倍或者倍或者64倍,这倍,这个倍数称为个倍数称为波特率因子波特率因子,而位传输率称为,而位传输率称为波特

13、率波特率。n数据传输速率也称数据传输速率也称比特率比特率(Bit Rate)每秒传输的二进制位数每秒传输的二进制位数bps字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数n当进行二进制数码传输,且每位时间长度相等时,比特率等于当进行二进制数码传输,且每位时间长度相等时,比特率等于波特率波特率n过去,串行通信(异步)的数据传输速率限制在过去,串行通信(异步)的数据传输速率限制在50 bps到到9600 bps之间。之间。现在,串行通信可以达到现在,串行通信可以达到115200 bps或更高或更高14接收时对起始位的检测(波特

14、率因子为接收时对起始位的检测(波特率因子为16)起始检测起始检测确定已检测到起始位确定已检测到起始位采样数据采样数据起起 始始 位位时钟时钟(RCLK)数据线数据线(RxD)T16 T16 T8 T数据接收时钟频率是数据传输频率的数据接收时钟频率是数据传输频率的16倍倍,正确识正确识别起始位,防止因干扰引起的误识别别起始位,防止因干扰引起的误识别15接收错误的处理接收错误的处理n奇偶错误奇偶错误PE(Parity Error)若接收到的字符的若接收到的字符的“1”的个数不符合奇偶校验要求的个数不符合奇偶校验要求n帧错误帧错误FE(Frame Error)若接收到的字符格式不符合规定(如缺少停止

15、位)若接收到的字符格式不符合规定(如缺少停止位)n覆盖错误覆盖错误OE(Overwrite Error)若接收移位寄存器接收到一个数据,并送至输入缓冲器时,若接收移位寄存器接收到一个数据,并送至输入缓冲器时,CPU还未取走前一个数据,就会出现数据覆盖还未取走前一个数据,就会出现数据覆盖若接收缓冲器的级数多,则覆盖错误发生的几率就小若接收缓冲器的级数多,则覆盖错误发生的几率就小16通用异步收发器通用异步收发器UART 通用异步收发器通用异步收发器UART具备如下功能:具备如下功能:将并行数据变为串行数据;按格式把数据将并行数据变为串行数据;按格式把数据发送出去;发送出去;能够接收串行格式的数据,

16、再把它变成并能够接收串行格式的数据,再把它变成并行数据;行数据;能够检测奇偶错误、覆盖错误和信息帧格能够检测奇偶错误、覆盖错误和信息帧格式错误;式错误;176.3 可编程串行通信接口可编程串行通信接口8251A6.3.1 8251A的基本性能的基本性能n两种工作方式(通过编程设置):两种工作方式(通过编程设置):同步方式同步方式同步方式同步方式,波特率为,波特率为064K,58位数据,自动检测同步字符位数据,自动检测同步字符异步方式。异步方式。异步方式异步方式,波特率为,波特率为019.2K,58位数据,位数据,1位奇偶校验,自动位奇偶校验,自动添加一个启动位及添加一个启动位及1、1.5或或2

17、个停止位个停止位n全双工的工作方式全双工的工作方式其内部提供具有双缓冲器的发送器和接收器。其内部提供具有双缓冲器的发送器和接收器。n提供出错检测提供出错检测具有奇偶、覆盖和帧错误三种校验电路。具有奇偶、覆盖和帧错误三种校验电路。(UART)186.3.2 8251A的基本工作原理的基本工作原理8251A的编程结构的编程结构 n数据输入缓冲寄存器和数据输出缓冲寄存数据输入缓冲寄存器和数据输出缓冲寄存器使用同一个端口地址,实际上为两个端器使用同一个端口地址,实际上为两个端口,一个为输入端口,一个为输出端口,口,一个为输入端口,一个为输出端口,所以,不会混淆起来所以,不会混淆起来 n接收移位寄存器将

18、到达接收移位寄存器将到达RxD端的串行数据接收之后进端的串行数据接收之后进行移位,变为行移位,变为8位并行数据,传送到数据输入缓冲寄位并行数据,传送到数据输入缓冲寄存器,然后通过数据总线传送到存器,然后通过数据总线传送到CPU n输出数据过程中,输出数据过程中,CPU通过数据总线将数据送到通过数据总线将数据送到8251A数据输出缓冲寄存器,再传输到发送移位寄存数据输出缓冲寄存器,再传输到发送移位寄存器。移位寄存器用移位的办法将并行数据变为串行数器。移位寄存器用移位的办法将并行数据变为串行数据,然后,从据,然后,从TxD端送出端送出 n控制寄存器用来控制控制寄存器用来控制8251A的工作,它的内

19、容的工作,它的内容是由程序设置的是由程序设置的 n状态寄存器则在状态寄存器则在8251A的工作过程中为执的工作过程中为执行程序提供一定的状态信息行程序提供一定的状态信息 n模式寄存器的内容决定了模式寄存器的内容决定了8251A到底工作在同步到底工作在同步模式还是工作在异步模式,还决定了所接收和发模式还是工作在异步模式,还决定了所接收和发送的字符的格式送的字符的格式 208251A的功能结构的功能结构218251A的发送和接收的发送和接收(异步异步)并行数据并行数据检测接收错误检测接收错误删除起始位、校验位、停止位删除起始位、校验位、停止位串行数据串行数据CPU接收缓冲寄存器接收缓冲寄存器接收移

20、位寄存器接收移位寄存器接收控制电路接收控制电路8251RxD0/10/1 0/10/10/10/10/10/1双缓冲寄存器结构双缓冲寄存器结构,保证数据的连续接收保证数据的连续接收串串行行数数据据的的异异步步接接收收22接收时对起始位的检测接收时对起始位的检测起始检测起始检测确定已检测到起始位确定已检测到起始位采样数据采样数据起起 始始 位位时钟时钟(RCLK)数据线数据线(RxD)T16 T16 T8 T数据接收时钟频率是数据传输频率的数据接收时钟频率是数据传输频率的16倍倍,正确识正确识别起始位,防止因干扰引起的误识别别起始位,防止因干扰引起的误识别23CPU发送缓冲寄存器发送缓冲寄存器发

21、送移位寄存器发送移位寄存器发送控制电路发送控制电路8251TxD0/10/1 0/10/10/10/10/10/1串行数据的异步发送串行数据的异步发送并行数据并行数据加入起始位、校验位、停止位加入起始位、校验位、停止位串行数据串行数据双缓冲寄存器结构,保证数据的连续发送双缓冲寄存器结构,保证数据的连续发送 当程序置允许发送位当程序置允许发送位TxEN为为1,并且由外设发来的,并且由外设发来的对对CPU请求发送信号的响应信号请求发送信号的响应信号-CTS(clear to send)有效后,便开始发送过程有效后,便开始发送过程 24异步方式下的数据传输格式异步方式下的数据传输格式25同步接收方式

22、和同步发送方式同步接收方式和同步发送方式 266.3.3 8251A的对外信号的对外信号8251A和和CPU之间的连接信号之间的连接信号27连接信号连接信号1.片选信号片选信号 CS低电平有效低电平有效它由它由CPU的地址信号通过译码的地址信号通过译码后得到。后得到。2.数据信号数据信号D0-D7三态,双向数据线三态,双向数据线与系统的数据总线相连。与系统的数据总线相连。传输传输CPU对对8251A的编程命令的编程命令字和字和8251A送往送往CPU的状态信的状态信息及数据。息及数据。28连接信号连接信号3.读读/写控制信号写控制信号RD:读信号,低电平时有效:读信号,低电平时有效CPU当前正

23、在从当前正在从8251A读取数据或读取数据或者状态信息。者状态信息。WR:写信号,低电平时有效:写信号,低电平时有效CPU当前正在往当前正在往8251A写入数据或写入数据或者控制信息。者控制信息。C/D:控制:控制/数据信号数据信号用来区分当前读用来区分当前读/写的是数据还是写的是数据还是控制信息或状态信息。控制信息或状态信息。该信号也可看作是该信号也可看作是8251A数据口数据口/控制口的选择信号。控制口的选择信号。29连接信号连接信号4.收发联络信号收发联络信号 TxRDY:发送器准备好信号,:发送器准备好信号,用来通知用来通知CPU,8251A已准备已准备好发送一个字符。好发送一个字符。

24、TxE:发送器空信号,:发送器空信号,TxE为为高电平时有效,用来表示此时高电平时有效,用来表示此时8251A发送器中并行到串行转发送器中并行到串行转换器空,说明一个发送动作已换器空,说明一个发送动作已完成。完成。30连接信号连接信号RxRDY:接收器准备好信号接收器准备好信号用来表示当前用来表示当前8251A已经已经从外部设备接收到一个字符,从外部设备接收到一个字符,等待等待CPU来取走。来取走。在中断方式时,在中断方式时,RXRDY可可用来作为中断请求信号;用来作为中断请求信号;在查询方式时,在查询方式时,RXRDY可可用来作为查询信号。用来作为查询信号。SYNDET:同步检测信号同步检测

25、信号只用于同步方式只用于同步方式3128251A与外部设备之间的连接信号与外部设备之间的连接信号分为两类:分为两类:1.收发联络信号收发联络信号 DTR:数据终端准备好信号数据终端准备好信号通知外部设备,通知外部设备,CPU当前已当前已经准备就绪。经准备就绪。DSR:数据设备准备好信号数据设备准备好信号表示当前外设已经准备好。表示当前外设已经准备好。3228251A与外部设备之间的连接信号与外部设备之间的连接信号RTS:请求发送信号请求发送信号表示表示CPU已经准备好发送。已经准备好发送。CTS:允许发送信号允许发送信号是对是对RTS的响应信号的响应信号由外设送往由外设送往8251A。3328

26、251A与外部设备之间的连接信号与外部设备之间的连接信号2.数据信号数据信号 TxD:发送器数据输出信号。发送器数据输出信号。当当CPU送往送往8251A的并行数据的并行数据被转变为串行数据后,通过被转变为串行数据后,通过TxD送往外设。送往外设。RxD:接收器数据输入信号。接收器数据输入信号。用来接收外设送来的串行数据,用来接收外设送来的串行数据,数据进入数据进入8251A后被转变为并后被转变为并行方式行方式343.时钟、电源和地时钟、电源和地n CLK:时钟输入时钟输入用来产生用来产生8251A器件的内器件的内部时序。部时序。同步方式下,大于接收数同步方式下,大于接收数据或发送数据的波特率

27、的据或发送数据的波特率的30倍倍异步方式下,则要大于数异步方式下,则要大于数据波特率的据波特率的4.5倍。倍。353.时钟、电源和地时钟、电源和地nTxC:发送器时钟输入;发送器时钟输入;用来控制发送字符的速度。用来控制发送字符的速度。同步方式下,同步方式下,TxC的频率等的频率等于字符传输的波特率;于字符传输的波特率;异步方式下,异步方式下,TxC的频率可的频率可以为字符传输波特率的以为字符传输波特率的1倍、倍、16倍或者倍或者64倍。倍。363.时钟、电源和地时钟、电源和地 RxC:接收器时钟输入;接收器时钟输入;用来控制接收字符的速度,和用来控制接收字符的速度,和TxC一样。一样。实际使

28、用时,实际使用时,RxC和和TxC往往连往往连在一起,由同一个外部时钟来提在一起,由同一个外部时钟来提供。供。VCC:电源输入:电源输入 GND:地:地376.3.3 8251A的编程的编程1.1.关于关于8 8位接口芯片和位接口芯片和1616位数据总线的连接问题位数据总线的连接问题8086CPU8086CPU有一个必须遵守的约定,即低有一个必须遵守的约定,即低8 8位数据线总是与位数据线总是与偶地址存储单元或端口关联,而高偶地址存储单元或端口关联,而高8 8位数据线总是与奇位数据线总是与奇地址存储单元或端口关联;地址存储单元或端口关联;为满足这一要求,连接时在硬件上将总线的为满足这一要求,连

29、接时在硬件上将总线的A A1 1与与8251A8251A的的A A0 0引脚相连接;引脚相连接;在软件设计时用连续的偶地址代替端口的奇偶地址;在软件设计时用连续的偶地址代替端口的奇偶地址;解决解决8 8位接口芯片与位接口芯片与1616位数据总线的连接位数据总线的连接3828251A的初始化的初始化三个约定(偶地址端口是数据端口):三个约定(偶地址端口是数据端口):(1)(1)芯片复位以后,第一次用芯片复位以后,第一次用奇地址端口奇地址端口写入的值作写入的值作为模式字进入模式寄存器。为模式字进入模式寄存器。(2)(2)如果模式字中规定了如果模式字中规定了8251A8251A工作在同步模式,工作在

30、同步模式,CPUCPU接着往奇地址端口输出的接着往奇地址端口输出的1 1个或个或2 2个字节就是同步个字节就是同步字符,同步字符被写入同步字符寄存器。如果有字符,同步字符被写入同步字符寄存器。如果有2 2个同步字符,则会按先后分别写入第个同步字符,则会按先后分别写入第1 1个同步字符个同步字符寄存器和第寄存器和第2 2个同步字符寄存器。个同步字符寄存器。(3)(3)之后,由之后,由CPUCPU用奇地址端口写入的值将作为控制用奇地址端口写入的值将作为控制字送到控制寄存器,而用偶地址端口写入的值将字送到控制寄存器,而用偶地址端口写入的值将作为数据送到数据输出缓冲寄存器。作为数据送到数据输出缓冲寄存

31、器。39初始化流程图初始化流程图 OUT PORTo,ALOUT PORTo,ALOUT PORTo,ALOUT PORTo,ALOUT PORTe,AL403模式寄存器的格式模式寄存器的格式n也同时规定了也同时规定了TxC和和RxC的的频率频率n频率频率=波特率波特率*波特率因子波特率因子414控制寄存器的格式控制寄存器的格式425状态寄存器的格式状态寄存器的格式n该状态位与该状态位与TxRDY引脚不同,引脚不同,TxRDY引脚为引脚为1的条件是:的条件是:n数据缓冲器空数据缓冲器空CTSTxEN=1436.3.5 8251A应用举例应用举例 1异步模式下的初始化程序举例异步模式下的初始化程

32、序举例 设设8251A工作在异步模式,波特率系数工作在异步模式,波特率系数(因子因子)为为16,7个数据位个数据位/字符,偶校验,字符,偶校验,2个停止位,发送、个停止位,发送、接收允许,设端口地址为接收允许,设端口地址为0042H。完成初始化程序。完成初始化程序。分析:根据题目要求,可以分析:根据题目要求,可以确定模式字确定模式字为:为:11111010B,即即FAHn而而控制字控制字为:为:00110111B 即即37H对于对于CPU来说是偶地址,来说是偶地址,对于接口是奇地址对于接口是奇地址441异步模式下的初始化程序举例异步模式下的初始化程序举例初始化程序如下:初始化程序如下:MOV

33、AL,0FAH;送模式字;送模式字OUT 42H,AL;异步方式,;异步方式,7位位/字符,偶校验,字符,偶校验,2个停止位个停止位 MOV AL,37H;设置控制字,使发送、接收允许,清出错;设置控制字,使发送、接收允许,清出错标志,使标志,使 和和 有效有效OUT 42H,AL;472同步模式下初始化程序举例同步模式下初始化程序举例 n设端口地址为设端口地址为42H,采用内同步方式,采用内同步方式,2个同步字符个同步字符(设同步字符为(设同步字符为16H),偶校验,),偶校验,7位数据位位数据位/字符字符 n根据要求根据要求:确定确定模式字模式字为:为:00111000B 即即38H控制字

34、控制字为:为:10010111B 即即97H;使使8251A对同步字符进行检索;对同步字符进行检索;同时使状态寄存器中的同时使状态寄存器中的3个出错标志复位;个出错标志复位;使使8251A的发送器启动,接收器也启动;的发送器启动,接收器也启动;还通知还通知8251A,CPU当前已经准备好进行数据传输。当前已经准备好进行数据传输。482同步模式下初始化程序举例同步模式下初始化程序举例具体程序段如下:具体程序段如下:MOV AL,38H ;设置模式字,同步模式,用;设置模式字,同步模式,用2个同步字符个同步字符OUT 42H,AL ;7个数据位,偶校验个数据位,偶校验MOV AL,16H OUT

35、42H,AL ;送同步字符;送同步字符16HOUT 42H,AL MOV AL,97H ;设置控制字,使发送器和接收器启动;设置控制字,使发送器和接收器启动OUT 42H,AL513利用状态字进行编程的举例利用状态字进行编程的举例 n先对先对8251A进行初始化,然后对状态字进行测试,进行初始化,然后对状态字进行测试,以便输入字符。本程序段用来输入以便输入字符。本程序段用来输入80个字符。个字符。n分析:分析:8251A的控制和状态端口地址为的控制和状态端口地址为42H数据输入和输出端口地址为数据输入和输出端口地址为40H字符输入后,放在字符输入后,放在BUFFER标号所指的内存缓冲区中。标号

36、所指的内存缓冲区中。n具体的程序段如下:具体的程序段如下:52参考程序参考程序 MOV AL,0FAH OUT 42H,AL MOV AL,35H OUT 42H,AL MOV DI,0 MOV CX,80B:IN AL,42H TEST AL,02H JZ B IN AL,40H MOV DX,OFFSET BUFFER MOV DX+DI,AL INC DI IN AL,42H TEST AL,38H JNZ E LOOP B JMP EXITE:CALL ERR-OUT EXIT:536.4 并行通信和并行接口并行通信和并行接口n并行传输以计算机的字长为传输单位(通常是并行传输以计算机的

37、字长为传输单位(通常是8位、位、16位或位或32位),一次可传送位),一次可传送1个字长的数据个字长的数据n并行传输是并行传输是微机系统中最基本的信息交换方法微机系统中最基本的信息交换方法例如:系统板上各部件之间,接口电路板上各部件之间例如:系统板上各部件之间,接口电路板上各部件之间n适合于外部设备与微机之间进行近距离、大量和快适合于外部设备与微机之间进行近距离、大量和快速的信息交换速的信息交换例如:微机与并行接口打印机、磁盘驱动器例如:微机与并行接口打印机、磁盘驱动器54典型的并行接口和外设连接的示意图典型的并行接口和外设连接的示意图*输入准备好输入准备好*55 6.5 可编程并行通信接口可

38、编程并行通信接口8255A8255A是一个通用的可编程的并行接口芯片;是一个通用的可编程的并行接口芯片;它有三个并行它有三个并行I/O口;口;可通过编程设置多种工作方式;可通过编程设置多种工作方式;价格低廉,使用方便,可以直接与价格低廉,使用方便,可以直接与Intel系列的系列的芯片连接使用;芯片连接使用;在中小系统中有着广泛的应用在中小系统中有着广泛的应用566.5.1 8255A的内部结构的内部结构数据数据总线总线缓冲器缓冲器内部控制线内部控制线内部数据线内部数据线D0D7A组组控制控制A组组端口端口C上部上部B组组控制控制B组组端口端口BB组组端口端口C下部下部读写读写控制控制逻辑逻辑P

39、C0PC3CL口口PB0PB7B口口PC4PC7CH口口PA0PA7A口口-RD-WRA0A1-CSRESETA组组端口端口A A组控制电路用来组控制电路用来控制控制A口及口及C口的口的高高4位位 B组控制电路用来控组控制电路用来控制制B口及口及C口的低口的低4位位 读读/写控制逻辑电路负写控制逻辑电路负责管理责管理8255A的数据的数据传输过程。传输过程。n8位的双向三态缓冲器位的双向三态缓冲器n三个数据端口三个数据端口A,B,Cn这三个端口均可看作是这三个端口均可看作是I/O口,但它们的结构和功口,但它们的结构和功能也稍有不同。能也稍有不同。nA口:是一个独立的口:是一个独立的8位位I/O

40、口,它的内部有对数据口,它的内部有对数据输入输入/输出的锁存功能。输出的锁存功能。nB口:也是一个独立的口:也是一个独立的8位位I/O口,仅对输出数据有口,仅对输出数据有锁存功能。锁存功能。nC口:可以看作是一个独立的口:可以看作是一个独立的8位位I/O口;也可以看口;也可以看作是两个独立的作是两个独立的4位位I/O口。也是仅对输出数据进口。也是仅对输出数据进行锁存。行锁存。576.5.2 8255A芯片引脚信号芯片引脚信号nA组数据信号:组数据信号:PA0-PA7,8位位端口,支持工作方式端口,支持工作方式0、1、2nB组数据信号:组数据信号:PB0-PB7,8位位端口,支持工作方式端口,支

41、持工作方式0、1nC组数据信号:组数据信号:PC0-PC7,拆分,拆分为两个为两个4位端口,仅支持工作方位端口,仅支持工作方式式01.连接外设的数据端口连接外设的数据端口602.与与CPU连接的信号连接的信号nD0-D7:8位,双向,三态数据线位,双向,三态数据线nRESET:复位信号,用来清除:复位信号,用来清除8255的的内部寄存器,并置内部寄存器,并置A口,口,B口,口,C口均口均为输入方式;为输入方式;n-CS:片选;片选;n-RD:读信号;:读信号;n-WR:写信号写信号nA1,A0:内部口地址的选择,这两个:内部口地址的选择,这两个引脚上的信号组合决定对引脚上的信号组合决定对825

42、5A内部内部的哪一个口或寄存器进行操作。的哪一个口或寄存器进行操作。612.与与CPU一边连接的信号一边连接的信号-CS A1 A0读操作-RD写操作-WR0 0 00 0 10 1 00 1 1读端口A读端口B读端口C非法写端口A写端口B写端口C写方式字和位控字n其余无效其余无效626.5.3 8255A的控制字的控制字n控制字分为两类:控制字分为两类:方式控制字方式控制字C口的置位口的置位/复位控制字复位控制字n对对8255A的编程涉及到两个内容:的编程涉及到两个内容:写控制字设置工作方式等信息,写控制字设置工作方式等信息,使使C口的指定位置位口的指定位置位/复位的功能。复位的功能。注:均

43、写入控制端口注:均写入控制端口63方式选择控制字方式选择控制字64方式选择控制字方式选择控制字可编程并行接口可编程并行接口8255A有三种基本的工作方式有三种基本的工作方式)方式)方式0基本输入输出方式;基本输入输出方式;三个端口的每一个都可由程序选定作为输入或输出三个端口的每一个都可由程序选定作为输入或输出)方式)方式1选通输入选通输入/输出方式;输出方式;端口端口A或端口或端口B仍作为数据的输入仍作为数据的输入/输出口;输出口;同时规定端口同时规定端口C的某些位作为控制或状态信息。的某些位作为控制或状态信息。3)方式)方式2双向传送方式双向传送方式方式方式2只用于端口只用于端口A;既能发送

44、数据也能接收数据既能发送数据也能接收数据(双向总线双向总线I/O)。工作时可用程序查询方式,也可以工作在中断方式工作时可用程序查询方式,也可以工作在中断方式65方式选择控制字举例方式选择控制字举例 n设一个微型机系统中有设一个微型机系统中有2个个8255A芯片芯片J1和和J22个个8255A的的A1、A0端端分别和系统地址总线的分别和系统地址总线的A2、A1端相连,端相连,RESET、-RD、-WR以以及数据端也都分别连在及数据端也都分别连在一起,然后与系统的有一起,然后与系统的有关信号端相连关信号端相连系统仅靠系统仅靠-CS端来区分当端来区分当前是对前是对J1还是还是J2进行访进行访问。问。

45、66方式选择控制字例方式选择控制字例地址分配分析地址分配分析 n例如:例如:J1控制口地址控制口地址:A5 A4 A3 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 67方式选择控制字例方式选择控制字例地址分配分析地址分配分析J1A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 0 0 0 0 E0 A口口 1 1 1 0 0 0 1 0 E2 B口口 1 1 1 0 0 1 0 0 E4 C口口 1 1 1 0 0 1 1 0 E6 控制控制68方式选择控制字例方式选择控制字例地址分配分析地址分配分析J2A7 A6 A5 A4 A3 A2 A1 A0

46、1 1 1 0 1 0 0 0 E8 A口口 1 1 1 0 1 0 1 0 EA B口口 1 1 1 0 1 1 0 0 EC C口口 1 1 1 0 1 1 1 0 EE 控制控制69方式选择控制字例方式选择控制字例J1的各个端口处于如下工作方式:的各个端口处于如下工作方式:n端口端口A方式方式0,输出;端口,输出;端口B方式方式0,输入;,输入;n端口端口C的高的高4位位 输出;端口输出;端口C的低的低4位位 输入。输入。70方式选择控制字例方式选择控制字例J2的各个端口处于如下工作方式:的各个端口处于如下工作方式:n端口端口A方式方式0,输入;端口,输入;端口B方式方式1,输出;,输出

47、;n端口端口C的高的高4位位 输出;端口输出;端口C的低的低4位配合端口位配合端口B工作工作(已由已由方式方式1决定决定),可任意为,可任意为1或或0,此处设为,此处设为0。71方式选择控制字例方式选择控制字例MOV AL,83HMOV DX,00E6HOUT DX,ALMOV AL,94HMOV DX,00EEHOUT DX,AL722 C口的置位口的置位/复位功能复位功能置置位位/复复位位的的控控制制字字格格式式 73端口端口C置置1置置0控制字几点说明控制字几点说明nC端口置端口置1置置0控制字尽管是对端口控制字尽管是对端口C进行操作,但此控制进行操作,但此控制字必须写入控制口,而不是写

48、入字必须写入控制口,而不是写入C端口。端口。n置置1置置0控制字的控制字的D0位决定了是置位决定了是置1操作还是置操作还是置0操作。如操作。如为为1,则对端口,则对端口C中某一位置中某一位置1,如为,如为0,则置,则置0n置置1置置0控制字的控制字的D3、D2、D1位决定了对位决定了对C端口中的哪一位端口中的哪一位进行操作。进行操作。n置置1置置0控制字的控制字的D4、D5、D6位可为位可为1,也可为,也可为0,它们不,它们不影响置影响置1置置0操作。操作。nD7位必须为位必须为0,它是对,它是对C端口置端口置1置置0控制字的标识符控制字的标识符74 6.5.4 8255A的工作方式的工作方式

49、方式方式0基本输入输出方式基本输入输出方式n特点特点输出是锁存的,输入是不锁存的;输出是锁存的,输入是不锁存的;任何一个端口可作为输入口,也可以作为输出口任何一个端口可作为输入口,也可以作为输出口各个端口的输入、输出可以有各个端口的输入、输出可以有16种不同的组合种不同的组合 n适用场合适用场合同步方式同步方式无条件输入输出方式;无条件输入输出方式;查询方式查询方式把把A、B口作为口作为8位数据的输入或输出口,位数据的输入或输出口,C口的口的高高/低低4位分别定义为位分别定义为A、B口的控制位和状态位。口的控制位和状态位。75方式方式0的输入时序的输入时序76方式方式0的输出时序的输出时序77

50、方式方式1选通输入选通输入/输出方式输出方式n方式方式1的工作特点的工作特点端口端口A和端口和端口B可分别作为两个数据口工作在方式可分别作为两个数据口工作在方式1,并且,任何一个,并且,任何一个端口可作为输入口或者输出口。端口可作为输入口或者输出口。如果如果8255A的端口的端口A和端口和端口B中只有一个端口工作于方式中只有一个端口工作于方式1,那么,端,那么,端口口C中就有中就有3位被规定为配合方式位被规定为配合方式1工作的信号,此时,另一个端口可工作的信号,此时,另一个端口可以工作在方式以工作在方式0,端口,端口C中的其他数位也可以工作在方式中的其他数位也可以工作在方式0,即作为输,即作为

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁