第15章串行通信及接口电路_第1页
第15章串行通信及接口电路_第2页
第15章串行通信及接口电路_第3页
第15章串行通信及接口电路_第4页
第15章串行通信及接口电路_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、第15章串行通信及接口电路15.1 串行通信的基本概念串行通信的基本概念15.1.1 串行通信的特点:串行通信的特点:数据在单条1位宽的传输线上按时间先后一位一位地传送;节省传输线(优点);数据传输率较低(缺点);主要适用于长距离、低速率长距离、低速率的通信中。 15.1.2 串行通信涉及的常用术语串行通信涉及的常用术语1. 单工、半双工和全双工单工、半双工和全双工(数据通信的方向性结构)数据通信的方向性结构)(1)单工(Simplex)特点:仅能进行一个方向的数据传送特点:仅能进行一个方向的数据传送 设备A发送器发送器设备B接收器接收器Data flow(2) 半双工(Half Duplex

2、) 特点:数据可以在两个方向上进行传送,但是这种传送特点:数据可以在两个方向上进行传送,但是这种传送绝不能同时进行。绝不能同时进行。【双向,但不同时双向,但不同时】设备A发送器发送器/接收器设备B接收器接收器/发送器Data flow(3) 全双工(Full Duplex)特点:能够在两个方向同时进行数据传送。特点:能够在两个方向同时进行数据传送。设备A发送器发送器/接收器接收器设备B接收器接收器/发送器发送器2. 数据传输率数据传输率 每秒传输的二进制位数,单位为bps(bit per second )也称比特率比特率。 波特率波特率每秒传输的“符号符号”(也称信号码元Signal Elem

3、ent)的个数。【例如,每秒传送例如,每秒传送1个符号,则波特率为个符号,则波特率为1波特波特】 在计算机中,一个“符号”的含义为高、低两种电平高、低两种电平,分别代表逻辑值“1”和“0”,所以每个符号的信息量为1比特,此时波特率与比特率刚好一致。 但在其他一些场合 (例如通信中采用的“相一幅相一幅”复合复合调制技术调制技术),一个“符号”的信息含量就不是一个比特,此时,波特率就不等于比特率。此时,波特率就不等于比特率。 标准标准 波特率系列:波特率系列:50,75,110,150,300,600,1200, 4种相位(0,90,180,270)每种相位有两种振幅值实现 3位位/信号码元信号码

4、元 调制9001800002700001101011111000100110010 现在的 网是模拟通信系统,它是为传输话音信息而设计的。要在 网上传送数字信号,必须经过调制和解调。 实现调制和解调两个过程的设备称为“调制解调器”(Modulator DemodulatorModem) 方法:方法:选取音频范围某一频率的正(余)弦模拟信号作为载波载波,用以运载所要传送的数字信号。 用传送的数字信号改变载波信号的幅值、频率或相位幅值、频率或相位,使之在信道上传送; 到达信道另一端,再将数字信号从载波中取出。000001111数字信号(a)调幅(b)调频 (c)调相按数字信号的按数字信号的值改变载

5、波信值改变载波信号的幅度号的幅度按数字信号的按数字信号的值改变载波信值改变载波信号的频率号的频率按数字信号的按数字信号的值改变载波信值改变载波信号的相位号的相位3. 发送时钟和接收时钟发送时钟和接收时钟 RxCTxCTxD数据输入寄存器输入移位寄存器1,16,32数据输出寄存器输出移位寄存器1,16,32CLK(主时钟主时钟)(串行数据输入)输入移位脉冲输入移位脉冲(串行数据输出)输出移位脉冲输出移位脉冲 接收时钟发送时钟RxD4. 波特率因子波特率因子 F(时钟频率)波特率因子波特率(时钟频率)波特率因子波特率 波特率因子波特率因子: 数据传输率(波特率)(波特率)与时钟频率时钟频率之间的比

6、例系数. 给定时钟频率,选择不同的波特率因子波特率因子可得到不同的波特率。 例如:f = 19.2 kHz,若选波特率因子为16,则波特率为1200 bps。 若选定波特率因子和波特率,则相应的确定了对时钟频率时钟频率的要求。 12001619200(时钟频率)若外部时钟电路的频率F1MHz,需用8253分频,试计算分频系数(8253的计数初值)? 8253计数初值时钟频率计数初值时钟频率(波特率波特率因子波特率波特率因子) 8251外部的外部的时钟电路时钟电路 1, 16,1MHzN分频分频移位脉冲移位脉冲CLKOUT 8253 5.异步方式与同步方式异步方式与同步方式(1) 异步方式异步方

7、式(Asynchronous):也称“起止同步式”。串行异步传输数据格式:1/0001115-8位数据位位数据位1/0停止位或空闲位1 1起始位起始位奇偶校验位停止位或、22111第n个字符空闲位第n+1个字符低位低位高位高位(2)同步方式()同步方式(Synchronous) 串行同步通信信息格式串行同步通信信息格式同步字符(SYN1)同步字符(SYN2)数据(DATA)同步通信的效率(协议开销)同步通信的效率(协议开销) 例:例:SDLC/HDLC帧格式: 假定数据长度为2048位,通信效率为:2048/(204848)97% 协议开销仅为3 一般公式:SDLC/HDLC协议开销N/(N+

8、48),其中N为发送数据的比特数。标志地址8位控制8位CRC8位CRC8位标志数据场15.5 可编程串行通信接口可编程串行通信接口8251A Intel 8251A是通用同步/异步收发器USART (Universal Synchronous Asynchronous Receiver/Transmitter) ,它是专为Intel 微处理器设计的,可用作CPU和串行外设的接口电路。15.5.1 8251A的基本性能的基本性能 (1) 可用于同步和异步传送。 (2) 同步传送:58位/字符;内部或外部字符同步;可自动插入同步字符。 (3) 异步传送: 58位/字符;时钟速率为通信速率的1、16

9、、64倍。 (4) 异步传送时,可产生中止字符(BreakCharacter);可产生1、或2位的停止位;可检测假起始位;可自动检测和处理中止字符。(5) 波特率:异步:;同步:DC-64K。(6) 全双工、双缓冲器发送和接收。(7) 差错检测:具有奇偶错、溢出错和帧格式错奇偶错、溢出错和帧格式错等差错检测电路。(8) 28脚双列直插式封装。(9) 全部输入输出与TTL电平兼容;单一+5V电源;单一TTL电平时钟;Intel 8251AP R O G R A M M A B L E C O M M U N I C A T I O N INTERFACEnSynchronous and Asyn

10、chronous OperationnSynchronous 5-8 Bit Characters;Internal or External Character Synchronization; Automatic Sync Insertionn Asynchronous 5-8 Bit Characters; Clock Rate-1,16 or 64 Times Baud Rate; Break Character Generation;1,1.5, or 2 Stop Bits; False Start Bit Detection; Automatic Break Detect and

11、Handling;n Synchronous Baud RateDC to 64K Baudn Asynchronous Baud Rate DC to 19.2K Baudn Full Duplex, double Buffered, Transmitter and Receivern Error Detection Parity, Overrun and Framingn Fully Compatible with 8080/8085 CPUn 28-Pin DIP Packagen All Inputs and Outputs are TTL Compatiblen Single + 5

12、V Supplyn Single TTL Clock 15.5.2 8251A的结构与引脚功能的结构与引脚功能1. 8251A 的引脚的引脚8251A有28条引脚,引脚分配如图所示。8251AD1TxDCLKRESETDSRRTSDTRRxCVccD0TxEMPTYCTSWRTxCD7D6D5D4 GNDRxDD3CSRDC/DSYNDET/BRKDETTxRDYRxRDY211098765432111312281920212223242526271815161714D2图图 15.47 8251A的引脚信号的引脚信号2. 8251A的结构和工作原理的结构和工作原理 8251A的结构方块图如图

13、所示。 由图中可看出8251A可分为5个部分。 (1) 接收器 (2) 发送器 (3) 数据总线缓冲器 (4) 调制解调器控制电路 (5) 读写控制逻辑电路 数据总线数据总线缓冲器缓冲器读读/写写控制逻辑电路控制逻辑电路调制调制/解调解调控制电路控制电路接收控制电路接收控制电路串并串并转换转换发送发送缓冲器缓冲器缓冲器缓冲器并串并串转换转换发送控制电路发送控制电路RESETCLKC/DC/DRDWRCSDSRDTRCTSRTSD7-D0内内部部总总线线TXDRXDTXEMPTYTXCRXRDYRXCSYNDETTXRDY发送器发送器接收器接收器图图 15.48 8251A 内部结构框图内部结构

14、框图接收接收15.5.3 8251A对外接口信号对外接口信号 8251A是CPU与外设之间的接口电路,其对外的接口信号可分为两组:一组是与CPU的接口信号;另一组是与外设之间的接口信号(参见图15.49)。 80868251A外设外设D7-D0CLK译码译码CSABM/IOC/DRDRDWRWRTXRDYTXERXRDYSYNDETRESETDTRDSRRTSCTSTXDRXD计数器计数器/定时器定时器RXCTXC图图 15.49 8251A的对外接口信号的对外接口信号1. 8251A与与CPU之间的接口信号之间的接口信号 (1) 复位信号RESET (2) 数据线D7D0 (3) 读写控制信

15、号 (4) 收发联络信号 8251A的读的读/写控制真值表写控制真值表CS C/D RD WR 操作0 0 0 1 CPU从8251A读数据0 0 1 0 CPU往8251A写数据0 1 0 1 CPU从8251A读状态0 1 1 0 CPU往8251A写控制命令 0 1 1 D7D0为高阻态1 D7D0为高阻态2. 8251A与外设之间的接口信号与外设之间的接口信号 有四个Modem控制信号DTR、DSR、RTS和CTS。 另外还有四个信号,如下所述: (1) 接收器时钟RXC (2) 发送器时钟TXC (3) 接收数据线RXD (4) 发送数据线TXD本本 地地 Modem远远 程程 Mo

16、dem 计计 算算 机机终终 端端123456782022101103104105106107102109108125机壳地发送数据(TXD)接收数据(RXD) 请求发送(RTS)允许发送(CTS)Modem就绪( DSR)信号地(GND) 载波检测(CD)终端就绪(DTR)呼叫指示载波检测呼叫指示电话线CCITT信号名插脚号图信号连接与定时关系图信号连接与定时关系 a)信号线连接信号线连接15.5.4 8251A的编程的编程 8251A的编程包括两个部分,一个是方式指令字方式指令字,另一个是命令指令字。命令指令字。 前者用来定义8251A的工作方式,它必须紧接在复位后由CPU写入; 后者用来

17、指定芯片的实际操作,只有在写入了方式选择控制字后,才能由CPU写入。 1. 方式指令字方式指令字 方式指令字的格式如图所示。D7 D6 D5 D4 D3 D2 D1 D0S2S1EPPENL2L1B2B100 同步方式同步方式01 异步方式(异步方式(X1)10 异步方式(异步方式(X16)11 异步方式(异步方式(X64)00 字符长度为字符长度为5位位01 字符长度为字符长度为6位位10 字符长度为字符长度为7位位11 字符长度为字符长度为8位位1 带奇偶校验带奇偶校验0 不带奇偶校验不带奇偶校验1 偶校验偶校验0 奇校验奇校验异步异步00无效无效011位停止位位停止位101.5位停止位位

18、停止位112位停止位位停止位同步同步111个同步字符,外同步,个同步字符,外同步,SYNDET为输入为输入101个同步字符,内同步,个同步字符,内同步,SYNDET为输出为输出012个同步字符,外同步,个同步字符,外同步,SYNDET为输入为输入002个同步字符,内同步,个同步字符,内同步,SYNDET为输出为输出图图 15.50 8251A的方式指令字的方式指令字2. 命令指令字命令指令字命令指令字的格式如图所示,它直接让8251A实现某种操作或进入规定的工作状态。D7 D6 D5 D4 D3 D2 D1 D0EHIRRTSERSBRKRXEDTRTXEN1 进入搜索方式进入搜索方式1 内部

19、复位内部复位1 允许发送允许发送1 数据终端准备好数据终端准备好1 允许接收允许接收1 发送中止字符发送中止字符0 正常工作正常工作1 清除错误标志清除错误标志1 请求发送请求发送图图 15.51 8251A的命令指令字的命令指令字3. 状态字状态字 CPU可以在8251A工作过程中利用输入指令读取当前8251A的状态字,从而可以检测接口和数据传输的工作状态。 8251A状态字的格式如图所示。D7 D6 D5 D4 D3 D2 D1 D0DSRSYNDET/BRKDETFEOEPETXEMPTYRXRDYTXRDY1 发送器准备好发送器准备好1 数据通信设备准备好数据通信设备准备好帧格式错标志

20、帧格式错标志溢出错标志溢出错标志奇偶错标志奇偶错标志1 接收器准备好接收器准备好1 发送器空发送器空SYNDETBRKDET1 已达到同步已达到同步0 未达到同步未达到同步1 接收到中止字符接收到中止字符0 正常工作正常工作图图 15.52 8251A 的状态字的状态字(1) 三个错误标志位PE、OE和FE, PE=1是奇偶校验错;OE=1是溢出错,也称为“超越错”;FE=1是“帧格式错”,它们只对异步方式有效。出现这三种错误时都不中止8251A的工作,它们可以用操作命令字中的ER位来复位。(2) RXRDY、TXE(TXEMPTY)和SYNDET/BRKDET位与同名引脚的状态含义相同,此处

21、不再重述。(3) DSR位是数据通信设备准备好状态位, DSR=1表示调制解调器或其他外设已处于准备好状态,此时DSR输入信号有效。(4) TXRDY是发送器准备好位,它与输出引脚输出引脚TXRDY的含义有所不同。 TXRDY状态位为“1”只反映当前发送缓冲器已空,而TXRDY输出引脚输出引脚为“1”时,除发送缓冲器已空外,还需要以CTS=0和TXEN=1为条件,即存在如下逻辑关系: 输出引脚输出引脚TXRDY为为“1”=发送缓冲器空发送缓冲器空 (CTS=0)(TXEN=1) 通常TXRDY状态位提供CPU查询,而TXRDY引脚引脚的输出信号作为中断请求信号发给CPU。4. 8251A的初始

22、化及数据传送流程图的初始化及数据传送流程图8251A的初始化及数据传送流程图如图所示。输出方式指令字输出方式指令字输出第一个同步字符输出第一个同步字符异步方式?异步方式?是单同步?是单同步?RESET输出第二个同步字符输出第二个同步字符输出命令指令字输出命令指令字有复位命令否?有复位命令否?传送数据传送数据输出命令指令字或输入状态字输出命令指令字或输入状态字数据完否?数据完否?YNNNNYYY图图 15.53 8251A 初始化和数据传送流程图初始化和数据传送流程图 8251A的初始化编程必须在复位操作之后,先设置方在复位操作之后,先设置方式指令字;式指令字; 如果设定在异步方式异步方式,则马

23、上要输出命令指令字命令指令字进行设置,然后才能进行数据传送; 在数据传送过程中,也可使用命令指令字命令指令字进行某些操作设置或读取8251A的状态; 在数据传送结束时,若使用IR位为“1”的内部复位命令使8251A复位,则它又可重新接收方式指令字,从而改变工作方式完成其他传送任务。 如果设定8251A工作在同步方式同步方式,那么在输出方式指令字后,应紧跟着输出一个同步字符或两个同步字符,然后再输出命令指令字,后面的操作与异步方式相同。5. 编程举例编程举例(1) 异步方式下的初始化编程异步方式下的初始化编程 设定8251A工作于异步方式,波特率因子为64,每字符7个数据位,偶校验,2位停止位,

24、则方式指令字方式指令字为11111011=FBH。 操作命令字的设定,例如使8251A的发送器允许,接发送器允许,接收器允许,使状态寄存器中的收器允许,使状态寄存器中的3个错误标志位复位,使个错误标志位复位,使数据终端准备好信号数据终端准备好信号DTR输出低电平输出低电平,则命令指令字命令指令字应为00010111=17H。 若8251A的端口地址为50H、51H,则本例初始化程序如下: MOV AL, 0FBH ; 输出方式指令字 OUT 51H, AL MOV AL, 17H ; 输出命令指令字 OUT 51H, AL(2) 同步方式下的初始化编程举例同步方式下的初始化编程举例 8251A

25、工作于同步方式,双同步字符,同步字符设定为16H,内同步,偶校验,每字符7个数据位,则方式方式指令字指令字为00111000B=38H。 命令指令字命令指令字设定为10010111B=97H,使发送器允许,接收器允许,使错误标志复位,开始搜索同步字符,并通知调制解调器,数据终端设备已准备就绪。 8251A的端口地址为50H、51H,则本例初始化程序如下: MOV AL, 38H ; 输出方式指令字 OUT 51H, AL MOV AL, 16H ; 输出两个同步字符同步字符16H OUT 51H, AL OUT 51H, AL MOV AL, 97H ;输出命令指令字 OUT 51H, AL

26、CPU执行上述程序之后,即完成了对8251A同步方式的初始化编程。15.5.5 8251A 的应用的应用1. 利用利用8251A实现与终端的通信实现与终端的通信2. 利用利用8251A实现双机通信实现双机通信 利用8251A实现相距较近(不超过15米)的两台微机通信,其硬件连接如图所示。 由于是近距离通信,因此不用Modem,两台微机直接通过RS-232C相连即可,且通信双方均作为数据终端设备DTE;由于采用EIA RS-232C接口标准,所以需要加接电平转换电路。 通信时假设对方已准备好,所以可不使用四根联络信号(指DTR,DSR,RTS,CTS),仅使8251A的CTS接地即可。 甲乙两机

27、可进行半双工或全双工通信。CPU与接口之间可按查询方式或中断方式进行数据传送。 本例采用半双工通信,查询方式,异步传送。半双工通信,查询方式,异步传送。8251ACTSDSRRxDTxCRxCCLK系统主时钟系统主时钟TxDRTSDTRCPU总线总线时钟电路时钟电路甲机甲机EIA/TTL电电平平转转换换237237DTEDTETxDTxDRxDRxDEIA/TTL电电平平转转换换8251ACTSDSRRxDTxCRxCCLKTxDRTSDTR系统主时钟系统主时钟CPU总线总线时钟电路时钟电路RS232C接口接口图图 15.55 利用利用8251A进行双机通信硬件连接图进行双机通信硬件连接图乙机

28、乙机GND(1) 发送端初始化程序及控制程序如下所示发送端初始化程序及控制程序如下所示(设在此之前设在此之前已对已对8251A进行了复位操作进行了复位操作):START: MOV DX, 8251A控制端口号 MOV AL, 7AH ; 输出方式指令字输出方式指令字,异步方式,7位数据位,1位停止位 OUT DX, AL ; 偶校验,波特率因子为16 MOV AL, 11H ;输出命令指令字输出命令指令字,发送器允许,错误标志复位 OUT DX, AL MOV SI, 发送数据块首地址 MOV CX, 发送数据块字节数 NEXT: MOV DX, 8251A控制端口号 IN AL, DX ;输

29、入状态字输入状态字 TEST AL, 01H ; 查询状态位TXRDY是否为“1” JZ NEXT ; 发送未准备好,则继续查询 MOV DX, 8251A数据端口号 MOV AL, SI ; 发送准备好,则从发送区取一字节数据发送 OUT DX, AL INC SI ; 修改地址指针 LOOP NEXT ; 未发送完,继续 HLT (2) 接收端初始化及控制程序如下所示接收端初始化及控制程序如下所示(设在此之前已对设在此之前已对8251A进行了复位操作进行了复位操作):BEGIN: MOV DX, 8251A控制端口号 MOV AL, 7AH ; 输出方式指令字输出方式指令字 OUT DX, AL MOV AL, 14H ; 输出命令指令字输出命令指令字 OUT DX, AL MOV DI, 接收数据块首地址 MOV CX, 接收数据块字节数 L1: MOV DX, 8251A控制端口号 IN AL, DX ; 输入状态字输入状态字 TEST AL, 02H ; 查询状态位RRDY是否为“1” JZ L1 ; 接收未准备好,则继续查询 TEST AL, 08H ; 检测是否有奇偶校验错 JZ ERR ; 若有错,则转出错处理 MOV DX, 8251A数据端口号 IN AL, DX

温馨提示

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

评论

0/150

提交评论