微型计算机原理与接口技术第九章.ppt_第1页
微型计算机原理与接口技术第九章.ppt_第2页
微型计算机原理与接口技术第九章.ppt_第3页
微型计算机原理与接口技术第九章.ppt_第4页
微型计算机原理与接口技术第九章.ppt_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

1、第9章 可编程并行接口芯片与串行通信技术 并行接口一般具有以下特点: 1)通过多根信号线同时传送多位数据; 2)并行接口多用于传送距离短,数据量大,速度高的实时传输场合; 3)传送时一般不需要特定的数据传送格式。 9.1 可编程并行接口芯片8255A 9.1.1 8255A的结构,图9-1 8255A外部引脚,图9-2 8255A内部结构,1、数据端口 在8255A内部包含了三个8位输入/输出数据端口:端口A、端口 B、端口C。 三个端口在功能上有不同的特点: 端口A:一个8位的数据输入锁存器,一个8位的数据输出锁存 器/缓冲器,即端口A输入/输出时都可以锁存数据。 端口B:一个8位的数据输入

2、缓冲器,一个8位的数据输出锁存 器/缓冲器,即端口B输入不能锁存,而输出可以锁存。 端口C:比较特殊,一个8位的数据输入缓冲器,但没有锁存器, 一个8位的数据输出锁存/缓冲器。 2、端口控制逻辑 端口控制逻辑分为A组和B组,各组管理的端口如下: A组:管理端口A及端口C的上半部(PC7PC4) B组:管理端口B及端口C的下半部(PC3PC0),3、数据总线缓冲器 4、读/写控制逻辑 读/写控制逻辑包括: 1) 读信号RD:低电平有效。 2) 写信号WR:低电平有效。 3) 片选信号CS:低电平有效。 4) 复位信号RESET:高电平有效。 5) 端口选择信号A1、A0:通过A1、A0的组合来选

3、择端口。,表9-1 8255A基本操作,9.1.2 方式选择 在8255A的初始化工作中,CPU输出的编程命令有两类: 一类称为方式选择控制字,用于定义各端口的工作方式; 另一类称为置位/复位控制字,用于对端口C任意一位的置位或复位操作。 1、方式选择控制字 8255A有三种基本的工作方式: 方式0:基本输入/输出方式 方式1:选通输入/输出方式 方式2:双向总线I/O方式,图9-3 方式选择控制字,例如:现指定端口A以方式0输出;指定端口B以方式1输入;端口C高4位为输入,低4位为输出。 则根据方式控制字的定义格式可写出相应的方式选择控制字为:10001110B或8EH, 8255A初始化程

4、序段如下:(若控制口的分配地址为303H) MOV DX,303H MOV AL,10001110B(或MOV AL,08EH) OUT DX,AL,2、置位/复位控制字,图9-4 置位/复位控制字格式,例如,设8255A端口地址为60H63H,现要求先置PC4为低电平,再复位PC4,则相应的程序段如下: MOV AL,00001001B OUT 63H,AL MOV AL,00001000B OUT 63H,AL,9.1.3 各方式的功能 1、方式0的功能 主要功能如下: 两个独立的8位端口(端口A和B)和两个4位端口(端口C)。在实际应用时,根据需要也可以将C口的上下两端口合起来使用,构成

5、一个8位的端口; 规定了输出信号可以被锁存,而输入信号不能锁存; 各个端口既可以作为输入使用,也可以作为输出使用,两个8位端口和两个4位端口可以组成16种情况。,图9-5 各端口工作于方式0时的控制字格式,2、方式1的功能 (1)主要功能 1) 端口A和端口B都可作为数据输入/输出端口,但必须通过端 口C相应位的控制来实现。 2)当端口A和端口B中的一个端口被确定为工作方式1时,与此对应的端口C中就有3位被固定了,端口C中的这3位专门用来控制端口A或端口B。 3)若端口A和端口B都工作于方式1,则端口C中有6位固定,剩余2位可工作于其它方式,用作其它用途。,(2) 方式1的输入 1) 输入组态

6、,图9-6 方式1输入组态,表9-2 方式1输入组态下C口各引脚的作用,2)联络信号 STB(Strobe):选通信号,低电平有效。这是由外部输入的信号。当该信号为低电平时,8255A将端口A或端口B输入的数据送入相应的输入缓冲器。 IBF(Input Buffer Full):输入缓冲器满信号,高电平有效。这是由8255A发给外部的一个状态信号。当该信号为高电平时,表明数据已送至输入缓冲器,即缓冲器已满,暂时不能再接收新的数据。通过 STB信号使其置位,而 RD信号的上升沿使其复位。当其复位后,即表示可以接收新的数据。,INTE(Interrupt Enable):中断允许信号,高电平有效。

7、8255A能否向CPU发送中断请求将由该信号控制,只有当INTE有效时,才能发送中断请求。需要注意的是,在8255A中设有中断请求触发器。INTE不能自动置位/复位,需要通过软件的方式使其置位/复位。用户可以通过PC4来使端口A的中断允许置位/复位,通过PC2来使端口B的中断允许置位/复位。 INTR(Interrupt Request):中断请求信号,高电平有效。这是8255A发出的信号,可用于向CPU发送中断请求。只有当STB 、IBF和INTE都为高电平时,才能将其置位。在RD 的下降沿使其复位。具体工作过程为:8255A发中断请求(INTR为高)CPU响应中断,并用IN指令读入数据读信

8、号RD 的下降沿使INTR复位(为低电平)。,(3)方式1的输出 1) 输出组态 端口A或端口B工作于方式1,并作为输出端口时,其对应的控制字、端口状态及控制信号定义如图9-10所示,方式1输出组态下C口各引脚的作用详见表9-3。,表9-3 方式1输出组态下C口引脚的作用,OBF(Output Buffer Full) 输出缓冲器满信号,低电平有效。这是由8255A发给外设的一个状态信号。当该信号有效时,表示CPU已将数据写至指定的输出端口,并已锁存,外设可以取走数据。OBF 由输出命令 WR上升沿置位(低电平),由外设响应信号 使其复位。,图9-7 方式1输出组态,2)联络信号,ACK(Ac

9、knowledge)外设响应信号,低电平有效。这是外设发给8255A的信号,表示外设已将CPU送至A口或B口的数据取走,INTE(Interrupt Enable)中断允许信号,高电平有效。其意义与输入方式时相同,不过此时置位/复位控制信号不同了,用户可以通过PC6来使端口A的中断允许置位/复位,通过PC2来使端口B的中断允许置位/复位。,INTR(Interrupt Request)中断请求信号,高电平有效。当外设已接收了一次数据后,若INTE为高(有效)时,INTR为高,用于向CPU发送中断请求,要求CPU继续输出数据。只有当 ACK、OBF 和INTE都为高时,才能使INTR置位。写信号

10、WR 下降沿使其复位。,3、方式2的功能 (1) 方式2的组态,图9-8 端口A工作于方式2时的端口状态和控制字,(2)联络信号 1) OBF:输出缓冲器满,低电平有效。 2) ACK:外设响应信号,低电平有效。 3) STB:选通信号,低电平有效。 4) IBF:输入缓冲器满,高电平有效。 5) INTR:中断请求信号,高电平有效。 6) INTE1,INTE2:中断允许信号,高电平有效。,9.1.4 端口C的状态字 端口C的状态字有以下几种格式: 1、方式1状态字 输入状态字: D7 D6 D5 D4 D3 D2 D1 D0 输入状态字: D7 D6 D5 D4 D3 D2 D1 D0,例

11、如:允许端口A中断请求,禁止端口B中断请求(输入方式),则其程序段为:(设C口地址为62H) MOV AL,00010000B OUT 62H,AL 2、 方式2状态字 其状态字: D7 D6 D5 D4 D3 D2 D1 D0,9.1.5 8255A应用举例 1、基本输入/输出应用举例 以下是8086微机系统扩展一片8255A作为并行口的电路图,同时还配以74LS138译码器等芯片,如图9-14所示。端口A为方式1输入,以中断方式与CPU交换数据,中断类型号为0FH;端口B工作于方式0输出,端口C作为输入。,设端口A中断服务子程序名为SERA。 具体8255A的初始化程序如下: MOV AL

12、,10111001 MOV DX,0B6H OUT DX,AL MOV AL,00001001 OUT DX,AL MOV AX,0 MOV ES,AX MOV DI,0FH*4 MOV AX,OFFSET SERA CLD STOSW MOV AX,SEG SERA STOSW,9.2 串行通信 9.2.1 串行通信的数据传送方向 (1)单工传送 (2)半双工传送 (3)全双工传送,9.2.2 串行通信的异步与同步通信方式 1、异步通信,图9-11 异步通信的一帧数据格式 (a)带空闲位的一帧异步通信数据格式(b)无空闲位的一帧异步通信数据格式,2、同步通信 同步通信是在数据块开始处用l2个

13、同步字符来表示数 据块传送的开始,数据块信息以连续的形式 发送,最后通过校验码对数据块进行校验。 同步传送常用的数据格式有四种:单同步、双同步、SDLC和 HDLC。 (1)单同步数据格式,(2)双同步数据格式,(3)SDLC数据格式 (4)HDLC数据格式,9.2.3 波特率及收发端的同步,1、波特率 波特率在计算机中,把每秒钟内传送二进制代码的位数。 例:假设被传送的字符均为7位ASCII码,采用异步串行传送方式,其数据传送格式由1位起始位,7位数据位,1位奇偶校验位,和1位停止位组成,若每秒钟传送120个这样的字符,则相应的波特率为: 10位/字符120字符/秒=1200位/秒=1200

14、 bit/s 每一位二进制代码传送时间td为波特率的倒数。即:,Td,=1/1200,ms,2、接收和发送的同步 (1) 收/发时钟频率,接收和发送时钟与波特率之间必须保持如下关系:,图9-15 发送时钟,图9-16 接收时钟,收/发时钟周期Ts与发送数据位宽度Td有如下关系 (n=1、16、64) (2)数据采样过程 (2) 数据采样过程,图9-17 数据采样过程,9.2.4常用串行接口介绍 1、传统串行接口标准 EIA RS-232C (1)信号功能与机械特性,(a),(b),图9-18 RS232C的接插件 (a)DB25引脚 (b)DB9引脚,表9-4 RS-232C基本引脚的名称和功

15、能,(2)电气特性,1)电平关系 2)负载要求 3)信号速率与连接距离,表9-5 RS-232C电气特性,(3)电平转换 1)发送电平转换 2)接收电平转换 3)双向电平转换,图9-19 MAX232,2、EIA其它接口标准 RS-232C的缺点,主要表现为以下几个方面: 1)数据传输速度慢(20Kbit/s); 2)传输距离短(一般为15m); 3)接口处各信号间容易产生干扰。 鉴于RS-232C的上述缺点,EIA在RS-232C基础上,制定了更高性能的接口标准如RS449、RS422A 、 RS423A、RS485等。 (1) RS-449标准接口 (2) RS-423A标准接口,图9-2

16、0 单端驱动差分接收电路,(3) RS-422A标准接口,图9-21 平衡驱动差分接收电路,(4) RS-485标准接口,3、USB通用串行总线标准 (1) 主要特点 1)有两种数据传送速度,用于连接打印机、扫描仪等设备的速率可达12Mb/s,连接键盘、鼠标等设备的速率为1.5Mb/s; 2)具有很强的连接能力,最多可以支持127个设备; 3)具有真正的“即插即用”特性,用户可以在不关机的情况下进行外设的更换; 4)连接电缆轻巧、电源体积缩小,USB使用四芯电缆线和+5V的电源,对低功率的USB设备不再需要另接其它电源; 5)连接点的距离可以达到5m。,(2) 连接方法,图9-22 USB通信

17、线,(3) 传输方式 1) 控制传输 该传输为双向传输。 2) 同步传输 该传输为单向传输。 3) 中断传输 该传输为只能外设到主机的传输。 4) 批传输 该传输为单向传输。,4、IEEE-1394总线 (1) 特点 IEEE-1394的主要性能特点包括: 1)采用“级联”方式连接各个外部设备; 2)能够向总线连接的设备提供电源; 3)采用基于内存的地址编码,具有高速传输能力; 4)采用点对点结构; 5)安装方便且容易使用。,(2)工作模式 1) IEEE-1394定义了两种总线数据传输模式,Backplane和Cable模式。 2) IEEE-1394可同时提供同步和异步的数据传输方式。,9

18、.3 可编程串行通信接口芯片 8251A 其主要性能如下: 1)可用于同步和异步传送。 2)可实现同步传送(58)位字符;可选择内部或外部同步;可自动插入同步字符。同步传送波特率为DC64K。 3)可实现异步传送(58)位字符;异步通信的波特率 因子可以有三种选择:1、16或64;停止位也有三种选择 :1、1.5或 2位;异步传送波特率为:DC19.2K。 4)片内含有全双工、双缓冲发送和接收器。 5)出错检测:具有奇偶、溢出和帧错误等检测电路。 6)兼容性:全部输入输出与TTL电平兼容;单一的十5 V电 源;与 Intel 8080、8085、 8086、 8088 CPU接口兼容。,9.3

19、.1 8251A内部结构和外部引脚 1、8251A内部结构,图9-23 8251A内部结构图,(1)数据总线缓冲器 其内部包含三个三态双向8位的缓冲器: 状态字缓冲器:用来存放8251A内部的工作状态,供CPU查询 或测试之用; 接收数据缓冲器:用来存放接收器已经装配完毕的字符,供CPU读取; 发送数据命令缓冲器:存放CPU送入8251A的数据或命令。 CPU通过输入/输出指令可以对这些缓 冲器读/写数据、写入命令(控制) 字和读出8251A的状态信息。 (2)接收器 (3)发送器,(4)读/写控制电路 (5)调制解调控制器,图9-24 8251A与异步MODEM连接电路图,2、8251A外部

20、引脚,图9-25 8251A的外部引脚图,(1) 与接收器有关的引脚信号 1)RxD:接收数据,输入引脚。 2)RxRDY:接收数据准备好,输出引脚,高电平有效。 3)SYNDET:同步检测,输入或输出。 4)RxC:接收时钟,由外部输入。 (2) 与发送器有关的引脚信号 1)TxD:发送数据,输出引脚。 2)TxRDY:发送器准备好,输出引脚,高电平有效。 3)TxE:发送器空,输出引脚,高电平有效。 4)TxC:发送时钟,输入引脚。,(3) 与CPU相关的引脚信号 1)CLK:时钟信号,输入。 2)RESET:复位信号,输入引脚,高电平有效。 3)CS:片选信号,输入引脚,低电平有效。 4

21、) WR:写信号,低电平有效。 5) RD:读信号,低电平有效。 6) C/D:控制/数据选择信号,输入引脚。 (4) 与MODEM接口相关的引脚信号 1)DTR:数据终端准备好,输出引脚,低电平有效。 2)DSR:数据设备准备好,输入引脚,低电平有效。 3)RTS:请求发送信号,输出引脚,低电平有效。 4)CTS:允许传送,输入引脚,低电平有效。,表9-6 8251A读写操作表,9.3.2 8251A编程,图9-27 8251A方式字格式 a) 异步方式 b) 同步方式,a),b),1、方式字,8位方式字分为四组,现说明如下: (1)工作方式及波特率因子的确定 (2)数据字符长度的确定 (3

22、)奇偶校验的确定 (4)其它参数的确定,2、命令字,图9-28 8251A命令字格式,(1)发送控制位 TxEN:允许发送位,即当TxEN=1时,才允许发送。 SBRK:发送空白字符位。 RTS:请求发送位。 (2)接收控制位 RxE:允许接收位。当RxE=1时,允许接收。 (3)数据终端准备就绪位 DTR:数据终端准备好。 (4)同步字符搜索控制位 EH:外部搜索方式位。 (5)复位控制位 IR:内部复位信号。 ER:清除错误标志。,3、状态字,TxRDY:发送器准备好状态位,该状态位只要发送缓冲器一 空就被置1。 PE:奇偶校验错状态位。 OE:溢出(丢失)错误状态位。 FE(Frame Error):帧错误状态位,只适用于异步方式 9.3.3 8251A的应用 8251A的信号可分为两组:一组是8251A与CPU之间的接口信号;另一组是它与外设之间的接口信号。 例: 试采用异步串行通信方式实现双机通信。设波特率为 600 b/s,甲机将内存首址为ADAT的128字节的数据块发送给乙机;乙机将接收到的128字节的数据,顺序存放在内存首址为BDAT的数据缓冲区中。 (1)分析,(2)硬件连接,图9-30 双机利用8251A通信接口图,(3)程序编写 设8251A的数据端口为308H, 控制端口为309H。,图9-31 发送子程序流程,甲机程序段: MOV AL, 0 MO

温馨提示

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

评论

0/150

提交评论