




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 10 章,串行通信 和 可编程接口芯片8251A,中国科学技术大学 何克东,10.1 串行通信的基本概念,通信:计算机与外部设备交换信息 串行通信:将数据分解成二进制位用一条信号线,一位一位顺序传送的方式 串行通信的优势:用于通信的线路少,因而在远距离通信时可以极大地降低成本 串行通信适合于远距离数据传送,也常用于速度要求不高的近距离数据传送 PC系列机上有两个串行异步通信接口,键盘、鼠标器与主机间采用串行数据传送,一、串行通信与并行通信的比较 从通信距离上看:并行通信适宜于近距离的数据传送,通常小于30米。而串行通信适宜于远距离传送,可以从几米到数千公里。 从通信速率上看:一般应用中,在
2、短距离内,并行接口的数据传输速率显然比串行接口的传输速率高得多,但长距离内串行数据传送速率会比并行数据传送速率快。 由于串行通信的通信时钟频率较并行通信容易提高,因此许多高速外部设备,如数字摄像机与计算机之间的通信也往往使用串行通信方式。,从抗干扰性能上看:串行通信由于只有一两根信号线,信号间的互相干扰完全可以忽略。 从设备和费用上看:随着大规模和超大规模集成电路的发展,逻辑器件价格趋低,而通信线路费用趋高,因此对远距离通信而言,串行通信的费用显然会低得多。另一方面串行通信还可利用现有的电话网络来实现远程通信,降低了通信费用。 串行通信与并行通信相比,虽然有许多优点,但也随之带来了数据的串/并
3、及并/串转换、数据格式的要求以及位计数等问题,使之比并行通信实现起来更复杂。,一、数据传送方向,全双工,半双工,单工,二、串行传送的两种基本工作方式,异步方式:接收端的时钟完全独立于发送端。由自己内部的时钟发生器产生,但它的标称频率必须与发送端一致。 同步方式:接受端的时钟与发送端严格一致。只要使第一位的相位关系正确,以后就可以在一次传输中始终保持这个正确的关系,不会产生任何积累误差。,1. 异步方式,串行通信时的数据、控制和状态信息都使用同一根信号线传送 收发双方必须遵守共同的通信协议(通信规程),才能解决传送速率、信息格式、位同步、字符同步、数据校验等问题 串行异步通信以字符为单位进行传输
4、,其通信协议是起止式异步通信协议,异步串行数据发送格式,起始位每个字符开始传送的标志,起始位采用逻辑0电平,起始位,校验位,停止位,空闲位,数据位,字符,1,0,1,1,1,数据位数据位紧跟着起始位传送。由58个二进制位组成,低位先传送,校验位用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位,停止位表示该字符传送结束。停止位采用逻辑1电平,可选择1、1.5或2位,空闲位传送字符之间的逻辑1电平,表示没有进行传送,2. 同步方式,以一个数据块(帧)为传输单位,每个数据块附加1个或2个同步字符,最后以校验字符结束 同步通信的数据传输效率和传输速率较高,但硬件电路比较复杂 串行同步通信主要应
5、用在网络当中 最常使用高级数据链路控制协议HDLC,三、数据传输速率,数据传输速率称为波特率(Baud Rate) 每秒传输的二进制位数bps 字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数,【例】如果一个串行字符由1个起始位,7个数据位,1个奇偶校验位和1个停止位等10个数位构成,每秒钟传送120个字符,则数据传送的波特率为: 10位/字符120字符/秒=1200位秒=1200波特 传送每位信息所占用的时间为: 1秒/1200=0.833毫秒 常用的波特率为110、300、600、1200、2400、4800、9600和19200波特,它也是国际上规定的标准波特率。同步传送的波
6、特率高于异步传送方式,可达到64000波特。,四、串行接口芯片UART和USART,UART 通用异步收/发器 (Universal Asynchronous ReceiverTransmitter) USART 通用同步异步收发器 (Universal SynchronousAsynchronous Receiver Transmitter);,UART,移位寄存器,并行寄存器,(帧出错),(溢出错),(接收数据就绪),(发送缓冲区空),五、 调制解调器,调制(Modulating) 把数字信号转换为电话线路传送的模拟信号 解调(Demodulating) 将电话线路的模拟信号转换为数字信号
7、 调制解调器MODEM 具有调制和解调功能的器件合制在一个装置,三种调制方式,FSK调制法原理图,10.2 可编程串行通信接口8251A,8251A是可编程的串行通信接口,有下列基本功能 通过编程,可以工作在同步方式也可以工作在异步方式 在同步方式下,每个字符的长度可占58位,内部能自动检测同步字符,实现同步。 在异步方式下,每个字符的长度可占58位,1位奇偶校验位,自动为每个数据增加1个启始位,根据编程为每个数据增加1、1.5、或2个停止位,发送 缓冲器,发送 控制 电路,接收 缓冲器,接收 控制 电路,数据 总线 缓冲器,读/写 控制 电路,调制解 调器控 制电路,TxD,TxRDY,Tx
8、E,TxC,RxD,RxRDY,SYNDET,RxC,D7D0,RESET,CLK,C/D,RD,WR,CS,DSR,DTR,CTS,RTS,8251A内部结构,一、8251A的内部结构,1数据总线缓冲器 数据总线缓冲器是三态双向8位缓冲器,它使825lA与系统数据总线连接起来。它含有数据缓冲器和命令缓冲器。CPU通过输入输出指令可以对它读写数据,也可以写入命令字,再由它产生使8251A完成各种功能的控制信号。另外,执行命令所产生的各种状态信息也是从数据总线缓冲器读出。,2接收器 接收器由接收缓冲器和接收控制电路组成。接收器的功能是,在接收时钟RxC作用下,从数据接收端RxD接收串行数据,送至
9、接收移位寄存器,同时进行校验,若发现错误,则在状态寄存器中保存,以便CPU处理。如果是异步方式,则识别并删除启始位和停止位。如果是同步方式,则要检查同步字符,确认已达到同步,才开始接收数据。一帧数据接收完毕,把它们从移位寄存器并行送入接收数据缓冲器。并把它转换为并行数据。当校验无错时,才将并行数据存放在数据总线缓冲器中,并发出接收器准备好信号(RxRDY=1),通知CPU读数。接收数据的速率取决于从RxC端输入的接收时钟频率。,数据采样过程,起始检测,确定已检测到起始位,采样数据,数据接收时钟频率是数据传输频率的16倍 正确识别起始位,防止因干扰引起的误识别,接收器有关信号 RxC 接收时钟
10、当时钟处在上升沿时,把数据取样输入移位寄存器。时钟速率的规定与TxC相同。在实际使用中,RxC和TxC往往连接在一起,用同一个时钟源。 RxD 接收数据 用来接收外设送来的串行数据,按规定检查有关字符或有关位后,经串并转换,送入数据总线缓冲器,RxD在时钟RxC上升沿采样输入。,RxRDY 接收器准备就绪 如果该位为高电平,表示接收缓冲器中已经接收并组装好了一个数据字符,通知CPU将它取走。与TxRDY相似,RxRDY也可用做中断请求信号。CPU也可以通过读状态字了解接收器状态。一旦CPU取走这个数据字符,RxRDY就被RD的前沿复位。要是CPU没有及时取走数据,新接收数据将覆盖数据,使一个数
11、据丢失,出现溢出错误,并反映在状态字中。,SYNDET/BD 同步/断点检测 芯片在同步方式工作时,用做同步检测端;异步时则用做中止检测输出。芯片可以由编程确定是内同步还是外同步。如果是内同步,就由芯片内电路搜索同步字符,一旦找到,就由该端输出一个高电平。如果是外同步,当片外检测电路找到同步字符后,就可以从该引脚输入一个高电平信号,使8251A正式开始接收。 一旦开始正常接收数据,同步检测端就恢复低电平输出。异步方式工作中,通常在线路上无数据时以高电平表示。在8251A中也可以由程序控制,使无数据的间断时间内线路上呈现低电平,即发送一个字符长度的全“0”码。接收端具有对这种中止码检测的能力,如
12、果检测到中止码,则将从该端输出一个高电平。为了避免接收器对尚未正式开始工作的线路低电平误认为中止状态,8251A在复位后总要在检测到一次高电平输入后,才开始对中止状态的检测。,常见的错误类型有奇偶错误、帧错误和溢出(丢失)错误三类。 奇偶错误(Parity Error):在接收时,8251A检查接受到的每一个字符的“1”的个数,若不符合要求,则置这个标志,发出奇偶校验出错信息。 帧错误(Frame Error):若接受的字格式不符合规定(例如缺少停止位等),则置出错标志,发出帧错误信息。 溢出(丢失)错误(Overrun Error):8251A是一种双缓冲器结构。例如,在接收时,接受的数据先
13、由移位寄存器移位,把串行数据变为并行数据,然后送到接收数据寄存器,由CPU的输入指令输至CPU中。若数据已变为并行且已送至接收数据寄存中时,8251A就可以接收另一个新的字符。但是,若已接受到第二个字符的停止位,且要把第二个字符传送到接收数据寄存器中时,CPU还未取走上一个数据,于是就会出现数据丢失,这就置溢出错误标志。由此可见,若数据缓冲器的级数越多,则溢出错误的概率就越小。,3发送器 发送器由发送缓冲器和发送控制电路组成。发送器的功能是,首先把待发送的并行数据转换成所要求的帧格式并加上校验位,然后在发送时钟TxC的作用下,由TxD引脚一位一位地串行发送出去。发送完一帧数据后,发送器准备好信
14、号置位(TxRDY=1),通知CPU发送下一个数据。如果是异步方式,由发送控制电路加上起始位和停止位,经移位寄存器在发送时钟TxC的作用下,从数据输出端TxD逐位串行输出。如果是同步方式,在发送数据之前,根据编程的设定,先发送出一个(单同步)或两个(双同步)同步字符。,与发送器有关信号 TxC 发送器时钟 控制发送器数据速率的时钟。每个数据的移位输出,是在TxC的下降沿实现的。异步方式下,TxC的频率可以是数据速率的1,16或64倍。同步方式时,TxC的频率与数据速率相同。 例如,300波特的速率,编程决定TxC是它的16倍,则TxC端的时钟频率应为300164800Hz。 TxD 发送数据
15、发送缓冲器从数据总线上接收数据,转换成串行数据流,按要求插入附加字符或附加位后,在时钟TxC的下降沿按位从TxD上发送出去。,TxRDY 发送器准备就绪 如果该信号有效,就表示发送缓冲器已空,CPU可以向芯片送入新的数据。这个信号的状态要受到命令字中TxEN位(允许发送)的控制。如果把TxRDY信号作为向CPU请求数据的中断信号,TxEN位就可以看做是中断控制的屏蔽位。在8251A的状态字中有一位TxRDY,CPU也可以用查询的方式判断是否可以送数据。 TxE 发送缓冲器空 该位为高电平时,表示发送缓冲器中没有要发送的数据了。当从CPU送入一个数据字符时,TxE变成低电平。这个标志可以用来表示
16、一段数据传输的结束。如果是半双工工作,这个标志可以用做从发到收的转换。同步工作时,如果临时出现TxE,就意味着数据发送出现空缺,芯片会自动插补同步字符。,4.读/写控制电路 与CPU的连接信号 RESET 复位 当这个引脚上出现一个6倍时钟宽的高电平信号时,芯片被复位,使芯片处于空闲状态。这个空闲状态将一直保持到由编程确定了新状态才结束。在系统中使用此芯片时,总是把复位端与系统的复位线相连,使它受到加电自动复位和人工复位的控制,所以8251必须在编程后才能使用。,CLK 时钟 这是一个提供片内逻辑操作的时钟,可以从系统时钟发生器上取得。这个时钟的频率与数据速率并无直接关系,但是为了使电路工作可
17、靠,在同步方式下最好使这个频率比数据速率大30倍以上。在异步方式下,大4.5倍。,WRRD 读、写控制 是CPU对8251A中的寄存器读、写时的控制信号。 C/D 控制/数据 用来区分当前读/写的是数据还是控制信息或状态信息。如果该信号为高电平,CPU写入的内容就送入控制寄存器(写控制字),而读出的是状态寄存器的内容(读状态字)。如果该信号是低电平,读/写的内容就是数据。如果将该端与系统地址线的最低位A0相接,8251A就占有两个端口地址,偶地址为数据,而奇地址为控制。 与A1相接,则控制口、数据口都为偶地址。,CS 片选 该引脚输入低电平时,CPU才能对芯片进行有效操作;否则,芯片的8个数据
18、引脚处于悬空状态。CS端连接到地址译码器的某个输出端。 D0D7 数据 双向8位数据线,与片内数据总线缓冲器相连,CPU通过D0D7向8251A写数据和控制字,以及读数据和状态字。 上述各引脚对芯片的控制情况可以用下表表示。,8251A读写操作,5MODEM控制信号 8251A还提供了四个与MODEM相连的控制信号,信号的含义与RS-232C标准相同。 DTR (Data Terminal Ready) 数据终端准备好 这是一个通用的输出信号,可由命令字的位1置“1”而变为有效,用以表示CPU准备就绪。 DSR (Data Set Ready) 数据装置准备好 这是一个通用的输入信号,用以表示
19、调制解调器或外设的数据已准备好。CPU可通过读入状态操作,在状态寄存器的位7检测此信号。,RTS(Request To Send) 请求发送(输出,低电平有效) 此信号用于通知调制器,CPU已准备好发送。它可由命令字的位5置“1”而变为有效。 CTS(Clear To Send) 清除发送信号(输入,低电平有效)。这是调制解调器或其他外设送到8251A中的调制解调器控制器的信号。当其有效时,表示允许USART发送数据。,8251A与异步MODEM连接,6.8251A与CPU及外设的连接,二、8251A的编程,1.8251A的编程流程图,复位操作,输出方式字,同步方式,输出第一个同步字符,双同步
20、,输出第二个同步字符,输出命令字,复位,传送数据,输入状态字,传送完,Y,Y,Y,Y,N,N,N,N,N,8251A编程流程图,2.方式字,方式指令字用来指定通信方式及其方式下的数据格式。即指定8251A为异步方式还是同步方式,并按照其通信方式约定帧数据格式。,波特率系数 00:不用 01:1 10:16 11:64,字符长度 00=5位 01=6位 10=7位 11=8位,奇偶校验 00=无校验 01=奇校验 11=偶校验,停止位 异步(D1D00) 00=不用 01=1位 10=1.5位 11=2位,异步方式方式字格式,同步 1:单字符 0:双字符,同步 1:SYNDET为输入(外同步)
21、0:SYNDET为输出(内同步),与异步方式相同,同步方式方式字格式,3.命令字,命令字指定8251A进行某种操作(如发送、接收、内部复位和检测同步字符等)或处于某种工作状态(如DTR),以便接收或发送数据。,1:启动搜索 同步字符,1:内部复位,使8251回到方式选择格式,1:使RTS引脚输出低电平,1:使错误标志PE,OE,FE复位,1:使TxE线变低,发送空白字符 0:正常工作,1:允许接收 0:禁止接收,1:使DTR引脚输出低电平,1:允许发送 0:禁止发送,8251A命令字格式,4.状态字,CPU向8251A发送各种操作命令,许多时候是依据8251A当前的运行状态决定的,这时8251
22、A需要使用状态字向CPU报告何时才能开始发送和接收,以及接收数据有无错误。,数据装置就绪,同步检测,帧出错,溢出错,奇偶错,发送器空,接收器就绪,发送器就绪,8251A状态字格式,三、8251A初始化编程举例,在接通电源时,8251A能通过硬件电路自动进入复位状态,但不能保证总是正确地复位。为了确保送方式字和命令字之前8251A已正确复位,应先向8251A的控制口连续写入3个全0,然后再向该端口送入一个使D6位等于1的复位控制字(40H);用软件命令使8251A可靠复位。它被复位后,就可向它写入方式字和命令字,这两个字都被写入控制口。8251A是通过写入次序来区分这两个字的,先写入的是方式字,
23、在方式字后送入控制口的是命令字。,另外要注意,对8251A的控制口进行一次写入操作后,需要有写恢复时间。若CLK引脚上输入时钟信号的周期为t,须经过16个时钟周期(16t)后才能再写入第二个字。即两次写操作之间必须延时16个时钟周期才能保证可靠写入。最简单的做法是在两次写操作之间插入几条指令,再加上OUT指令本身要8个时钟周期,使延时时间足以超过16个时钟周期。下面给出能实现这种延时功能的程序段,为便于多次调用,程序段以宏指令的形式给出。,异步方式初始化编程 延时功能的程序 REVTIME MACRO MOV CX,02 ;4个时钟周期 D0:LOOP D0 ;17个或5个。时钟周期 ENDM
24、 若要求8251A工作于异步方式,波特率系数为16,具有7个数据位,一个停止位,有偶校验,控制口地址为3F2H,写恢复时间程序为REVTIME,则对8251A进行初始化的程序为:,MOV DX,3F2H ;控制口 MOV AL,00H OUT DX,AL ;向控制口写入“0” REVTIME ;延时,等待写操作完成 OUT DX,AL ;向控制口写入第二个“0” REVTIME;延时 OUT DX,AL ;向控制口写入第三个“0” REVTIME;延时 MOV AL,40H ;复位字 OUT DX,AL ;写入复位字 REVTIME ;延时 MOV AL,01111010B:方式字:波特率系数
25、为16,7个数据位,一个停止位,偶校验 OUT DX,AL ;写入方式字 REVTIME ;延时 MOV AL,00010101B;命令字:允许接收发送数据,清错误标志 OUT DX,AL ;写入命令字,同步方式字,异步方式字,命令字,同步方式初始化程序 ;先向控制口写入3个0,再送复位字40H MOV DX,3F2H ;控制口 MOV AL,00011000B ;方式字:双同步,内同步,奇校验,7个数据位 OUT DX,AL ;送方式字 REVTIME MOV AL,16H OUT DX,AL ;送入第一个同步字 REVTIME OUT DX,AL ;送入第二个同步字符 REVTIME MO
26、V AL,10010101B ;命令字:启动搜索同步字符,错误标志复位,允许收发 OUT DX,AL,10.3 串行接口标准RS-232C,美国电子工业协会EIA制定的通用标准串行接口 1962年公布,1969年修订 1987年1月正式改名为EIA-232D 设计目的是用于连接调制解调器 现已成为数据终端设备DTE(例如计算机)与数据通信设备DCE(例如调制解调器)的标准接口 可实现远距离通信,也可近距离连接两台微机 属于网络层次结构中的最低层:物理层,一、 RS-232C串行口,232C接口标准使用一个25针连接器 绝大多数设备只使用其中9个信号,所以就有了9针连接器 232C包括两个信道:
27、主信道和次信道 次信道为辅助串行通道提供数据控制和通道,但其传输速率比主信道要低得多,其他跟主信道相同,通常较少使用,EIA RS-232C的电气特性,232C接口采用EIA电平 高电平为3V15V 低电平为3V15V 实际常用12V或15V,标准TTL电平 高电平:2.0V5V 低电平:0V0.8V,相互转换,RS-232C的引脚(1),TxD:发送数据 串行数据的发送端 RxD:接收数据 串行数据的接收端,RTS:请求发送 当数据终端设备准备好送出数据时,就发出有效的RTS信号,用于通知数据通信设备准备接收数据 CTS:清除发送(允许发送) 当数据通信设备已准备好接收数据终端设备的传送数据
28、时,发出CTS有效信号来响应RTS信号 RTS和CTS是数据终端设备与数据通信设备间一对用于数据发送的联络信号,RS-232C的引脚(2),DTR:数据终端准备好 通常当数据终端设备一加电,该信号就有效,表明数据终端设备准备就绪 DSR:数据装置准备好 通常表示数据通信设备(即数据装置)已接通电源连到通信线路上,并处在数据传输方式 DTR和DSR也可用做数据终端设备与数据通信设备间的联络信号,例如应答数据接收,RS-232C的引脚(3),GND:信号地 为所有的信号提供一个公共的参考电平 CD:载波检测(DCD) 当本地调制解调器接收到来自对方的载波信号时,该引脚向数据终端设备提供有效信号 R
29、I:振铃指示 当调制解调器接收到对方的拨号信号期间,该引脚信号作为电话铃响的指示、保持有效,RS-232C的引脚(4),保护地(机壳地) 起屏蔽保护作用的接地端,一般应参照设备的使用规定,连接到设备的外壳或大地 TxC:发送器时钟 控制数据终端发送串行数据的时钟信号 RxC:接收器时钟 控制数据终端接收串行数据的时钟信号,RS-232C的连接,微机利用232C接口连接调制解调器,用于实现通过电话线路的远距离通信 微机利用232C接口直接连接进行短距离通信。这种连接不使用调制解调器,所以被称为零调制解调器(Null Modem)连接,连接调制解调器,不使用调制解调器的3线相连方式,二、8251应
30、用举例,若8253工作于方式3,串行数据传送的波特率为9600Bd,波特率系数为16,则RxC和TxC的频率应是: 960016=153600Hz=0.1536MHz 8253的通道0的分频系数为: n=2MHz0.1536MHz=13,; 先向控制口写3个0,再向控制口写入40H, 使系统复位 BEG-T: MOV DX,1F2H ;控制口 MOV AL,7AH ;方式字:异步方式,7个数据位,1个停止位 ;偶校验、波特率系数为16 OUT DX,AL MOV CX,02H ;延时 D1: LOOP D1 MOV AL,11H OUT DX,AL ;清除错误标志,允许发送 MOV CX,02H ;延时 D2: LOOP D2 MOV DI,BUFF_T ;发送缓冲区始址 MOV DX,COUNT_T ;发送数据个数,NEST_T: IN AL,DX ;读入状态 TEST AL,01H ;TxRDY有效吗? JZ NEXT_T ;否,则等待 MOV DX,1F0H ;是,数据口地址送DX MOV AL,DI ;从缓冲区取一个数据 OUT DX,AL ;向8251A输出一个数据 INC DI ;修改缓冲区指针 LOOP NEXT-T ;没送完则继续 ;送完,同一台机器上接收一批数据的初始化程序和控制
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市燃气管道更新改造项目2025年社会稳定风险评估与风险评估指标创新报告
- 中医药现代化进程中的英国市场拓展研究报告
- 乡村培训机构管理办法
- 临沂阻燃电工管理办法
- 事业编制辞职管理办法
- 仓库周末管理办法细则
- 企业贷款减免管理办法
- 公司印章外出管理办法
- 二手车零售店管理办法
- 云南楚雄垂钓管理办法
- 孕期安全有效运动课件
- 新能源会计面试题及答案
- 初中电学知识点课件
- 艺术疗愈与心理健康工作室行业深度调研及发展战略咨询报告
- 老年骨质疏松性疼痛诊疗与管理中国专家共识2024解读课件
- 2025年企业健康体检计划及总结
- 英语在生活中的应用
- 急诊医学课件-灾害事故急救课件
- 仪表工安全培训课件
- FOCUS-PDCA医院品质管理获奖案例-提高住院患者入院宣教知晓率
- 2025年大学英语四级词汇(乱序版)
评论
0/150
提交评论