您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 第六章 串并行通信和接口技术
1第六章串并行通信和接口技术本章学习要求:1.掌握串行通信的标准及通信方式,数据格式。2.了解8251A芯片引脚和结构,掌握各种寄存器的初始化方法。3.了解8255的工作原理,芯片引脚和结构。4.熟练掌握并行接口芯片8255三种基本工作方式。5.熟练掌握8255的初始化编程方法及其应用编程和与系统的连接方法。2微机与I/O设备的接口按照数据传送方式的不同,可分为:并行接口和串行接口两种。6.1串行接口与并行接口概述CPUI/O接口外设串或并图(a)并行和串行概念3CPU并行接口串行外设数据输出串行接口译码器与逻辑控制ABCB并行外设DBDB(8根)图(b)并行接口和串行接口的结构、功能示意图数据输入地46.2.1串行接口许多外设与计算机之间是按照串行方式来进行通信的,这样就要用串行接口把这个外部设备连接到总线上。串行通信其数据传输是逐位顺序进行传输的,在传输过程中,每1位数据都占据一个固定的时间长度。图5.2是可编程串行接口部件的典型结构+6.2串行接口和串行通信561.数据传送方式6.2.2串行通信的基本概念全双工方式:即对数据的两个传输方向采用不同的通道;信息能同时双向传送。半双工方式:信息能双向传送但不能同时双向传送。单工方式:只允许数据按一个固定的方向传送。72.串行通信的基本方式串行通信又有:同步通信和异步通信两种方式。同步通信:将许多字符组成一个信息组,字符就可以一个接一个地传输,但在每个信息组的开始要加上同步字符,使发送与接收双方取得同步。异步通信:两个字符之间的传输间隔是任意的,每个字符的前后都要用一些数位来作为分隔位。位与位之间还是基本同步传送的。8(1)传输率所谓传输率就是指每秒传输多少位,传输率也常叫波特率。•波特率因子:传送的时钟频率与波特率的比值。•国际上规定的标准波特率系列:标准波特率系列也是最常用的波特率,其系列为:110、300、600、1200、1800、2400、4800、9600和192003.串行通信的物理标准9(2)RS-232-C标准4.收/发时钟收/发时钟频率=n波特率一般n取1,16,32,64等。对于异步通信,常采用n=16;对于同步通信,则必须取n=1。106.3.18251A的基本性能通过编程可决定接口工作在同步还是异步方式。同步方式:58位字符,且内部能自动检测同步字符,从而实现同步。异步方式:58位字符,用1位作为奇/偶校验,能自动增加一个停止位。通过RS-232-C连接,但注意:8251A的接口电平与RS-232-C所要求的电平是不同的,所以,互相连接时,必须6.3可编程串行通信接口8251A增驱动级或接收级。116.3.28251A的基本工作原理1.8251A的编程结构2.8251A的功能结构编程结构图内部工作原理图128251A芯片共有28个引脚,其中:有17个引脚是与系统相连接,有6个是与外部设备相连接,另外,还有3个时钟输入端,1个电源端,1个接地端。3.8251A的对外信号8251A芯片共有28个引脚,其中:有17个引脚是与系统相连接,有6个是与外部设备相连接,另外,还有3个时钟输入端,1个电源端,1个接地端。3.8251A的对外信号TXRDY为“1”的条件是:发送缓冲器空CTSTXEN=1134.8251A的发送和接收数据格式(1)异步接收方式对于数据位低位在前高位在后144.8251A的发送和接收(2)异步发送方式15(3)同步接收方式和同步发送方式16同步接收的两种工作模式:内同步:通过检测输入移位寄存器中的内容与同步字符寄存器中的内容,来判断是否已经达到同步的工作方式。若不相等,重复接收检测过程;若相当,8251A使SYNDET引脚升为高电平,以告知同步字符已找到,同步已经达到。外同步:是通过在同步输入端SYNDET加一个高电平来实现同步的。此引脚一旦出现高电平,8251A就会立即脱离对同步字符的搜索过程,只要此高电平能维持一个接收时钟周期,8251A便认为已经完成同步。17例:异步串行通信的数据格式为7位数据、偶校验、1位停止位,试画出英文字母B的传送波形。若每秒钟传送960个字符,其传送速率为多少?字母B的ASCII码为42H(1000010B)从图上可见,每传送一个字符要用10bit。其传送速率为9600波特。启动0100001偶校停止181.8位接口芯片和16位数据总线连接方法在硬件上将地址总线的A1与8251A的A0(即C/D)引脚相连接,在软件设计时用连续的偶地址代替端口的奇/偶地址,就解决了8位接口芯片与16位数据总线的连接;即就是将8位的接口芯片与16位数据总线的低8位数据线相连接。(见前8251A与系统的连接示意图)6.3.38251A的编程192.8251A的初始化(1)8251A端口地址及分配端口地址8251A只有两个连续的端口地址,是用地址线A1来区分奇地址端口和偶地址端口,即:A1=0偶地址端口系统A1—接口A0A1=1奇地址端口20端口地址的分配奇地址对应于控制端口、模式端口、同步寄存器和状态寄存器4个端口,即用奇地址端口进行写入时,是写入控制字、模式字或同步字符,而用奇地址端口读出时,是从状态寄存器中读出状态;偶地址对应于数据输入缓冲器和数据输出缓冲器,即用偶地址端口读出时,是从数据输入缓冲器中读取数据,而用偶地址端口写入时,是往数据输出缓冲器中写入数据。21(2)8251A初始化的约定8251A初始化所必须遵守的约定,主要有3个。即:•芯片复位以后,第一次用奇地址端口写入的值作为模式字进入模式寄存器。•如果模式字中规定了8251A工作在同步模式,那么,CPU接着往奇地址端口输出的1个或2个字节就是同步字符,同步字符被写入同步寄存器。如果有两个同步字符,则会按先后分别写入第一个同步字符寄存器和第二个同步字符寄存器。22•这之后,只要不是复位命令,不管是同步模式还是异步模式,由CPU用奇地址端口写入的值将作为控制字送到控制寄存器•用偶地址端口写入的值将作为数据送到数据输出缓冲寄存器中。8251A的初始化流程图为:(2)8251A初始化的约定23243.模式寄存器的格式同步模式异步模式25说明:在同步模式中,接收和发送的波特率(即移位寄存器的移位率)分别和TXC引脚、RXC引脚上的输入时钟的频率相等。在异步模式中,要用模式寄存器中的两个最低位来确定波特率因子,此时TXC和RXC的频率、波特率因子和波特率之间的关系为:时钟频率=波特率因子波特率例如:模式寄存器的最低两位为10,要求发送的波特率为300接收数据的波特率为1200,则:供给TXC的时钟频率应为:16300=4800HZ供给RXC的时钟频率应为:161200=19.2KHZ264.控制寄存器的格式275.状态寄存器的格式286.3.48251A编程举例1.异步模式下的初始化程序若要求传输数据的数据位为7位,采用偶校验,带2个停止位,设波特率因子为16。控制字设为37H。设控制端口地址为52H则:初始化程序段如下:MOVAL,0FAHOUT52H,ALMOVAL,37HOUT52H,AL;设置模式字(11111010B);设置控制字(00110111),使发送和接收器启动,并设置有关信号292.同步模式下的初始化程序若要求有两个同步字符,采用内同步模式,偶校验方式,7位数据位;且控制字设置为97H,两个同步字符相同且为16H。设:“奇”地址端口地址为52H则:初始化程序段如下:MOVAL,38HOUT52H,ALMOVAL,16HOUT52H,ALOUT52H,ALMOVAL,97HOUT52H,AL;两个同步字符均为16H;使发送器、接收器启动,并设置其它有关信号;初始化00111000303.利用状态字进行编程的举例:输入80个字符,要求采用异步方式,7位数据,偶校验,2个停止位,波特率因子为16。设:控制和状态端口地址为52H,数据输入输出端口为50H。MOVAL,OFAH;11111010BOUT52H,ALMOVAL,35H;00110101BOUT52H,ALMOVDI,0;变址寄存器初始化MOVCX,8031BEGIN:INAL,52HTESTAL,02HJZBEGININAL,50HMOVDX,OFFSETBUFFERMOV[DX+DI],ALINCDIINAL,52HTESTAL,38HJNZERRORLOOPBEGINJMPEXITERROR:CALLERR_OUTEXIT:…326.5可编程并行通信接口8255A6.5.18255A的内部结构及芯片引脚信号1.数据端口A、B、C8255A的三个数据端口都是8位的,而各有特点。(1)端口A是一个独立的8位数据I/O口,它的内部有对数据输入/输出的锁存功能。335.5可编程并行通信接口8255A5.5.18255A的内部结构及芯片引脚信号(2)端口B是一个独立的8位数据I/O口,对输入的数据不锁存,仅对输出的数据锁存。345.5可编程并行通信接口8255A5.5.18255A的内部结构及芯片引脚信号(3)端口C可以看作是一个独立的8位I/O口;也可以看作是两个独立的4位I/O口。还可以用作A口和B口的控制信号。对输出数据进行锁存,对输入数据不锁存。355.5可编程并行通信接口8255A2.A组控制和B组控制这两组控制部件有两个功能:即一是接收芯片内部总线上的控制字;二是接收来自读/写控制逻辑电路的读/写命令,据此而决定两组端口的工作方式和读/写操作。5.5.18255A的内部结构及芯片引脚信号365.5可编程并行通信接口8255A3.读/写控制逻辑电路负责管理8255A的数据传输过程。它接收CS及来自地址总线的信号A1、A0和控制总线的信号RESET、RD、WR,将它们组合后,得到对A组控制部件和B组控制部件的控制命令,并将命令送给这两个部件,再由它们完成对数据、状态和控制信息的传输。5.5.18255A的内部结构及芯片引脚信号375.5可编程并行通信接口8255A4.数据总线缓冲器是一个双向三态的8位数据缓冲器。8255A正是通过它与系统数据总线相连。输入数据、输出数据、CPU发给8255A的控制字都是通过该部件传递的。5.5.18255A的内部结构及芯片引脚信号385.5可编程并行通信接口8255A5.5.18255A的内部结构及芯片引脚信号395.5可编程并行通信接口8255A5.5.18255A的内部结构及芯片引脚信号8255A复位后,所有I/O均处于输入状态,内部寄存器都被清除406.5.28255A的工作方式1.方式0也叫基本输入输出方式。特点:(1)三个端口都可作为独立的输入或输出口,各端口间没有必然的关系。(2)由端口A、端口B和端口C的高4位、低4位,这4个端口可以有16种不同的组合。(3)这种方式下,输出可锁存数据,输入是不锁存的。41使用场合:主要用于同步传送和查询式传送。同步传送时,发送方和接收方由同一时序信号来管理,所以双方相互知道对方的动作,不需要应答信号。即CPU不需要查询外设的状态,对接口要求很简单,只要能传送数据就行,此时8255A的三个数据端口可以实现三路数据传送。查询传送时,一般将A、B口常作为数据口,把C口的两部分用来输出一些控制信号和接收一些状态信号,这样端口C用来配合端口A和B工作。422.方式1—有联络信号的输入/输出是利用端口C所提供的选通和应答信号,来控制输入/输出。所以,方式1又称为选通的输入/输出方式。特点:按方式1工作时,端口A和端口B及端口C的两位可作为独立的数据口,即作为输入或输出;而端口C则有6位分别作为A口和B口的应答联络信号,并且其排列是固定的。这时的A口和B口,无论输入或输出都有数据锁存功能。43(1)方式1的输入组态和应答信号的功能IIPB7~PB044STB:选通信号输入端,低电平有效。它是由外设送往8255A的,当STB有效时8255A的端口A或B的输入缓冲器接收到一个来自外设的8位数据。PB7~PB0(1)方式1的输入组态和应答信号的功能45(1)端口A和端口B均为输
本文标题:第六章 串并行通信和接口技术
链接地址:https://www.777doc.com/doc-3201840 .html