第11章 串行通信及其接口电路.ppt_第1页
第11章 串行通信及其接口电路.ppt_第2页
第11章 串行通信及其接口电路.ppt_第3页
第11章 串行通信及其接口电路.ppt_第4页
第11章 串行通信及其接口电路.ppt_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

第11章串行通信及其接口电路 本章主要内容 1 串行通信的基本概念2 可编程串行接口片8251A 11 1串行通信 11 1 1串行通信的特点 数据在单条1位宽的传输线上按时间先后一位一位地传送 节省传输线 优点 数据传输率较低 缺点 主要适用于长距离 低速率的通信中 11 1 2串行通信涉及的常用术语和基本概念 1 单工 半双工和全双工 1 单工 Simplex 特点 仅能进行一个方向的数据传送 2 半双工 HalfDuplex 特点 数据可以在两个方向上进行传送 但是这种传送绝不能同时进行 双向 但不同时 3 全双工 FullDuplex 特点 能够在两个方向同时进行数据传送 2 数据传输率 每秒传输的二进制位数 单位为bps bitpersecond 也称比特率 波特率 每秒传输的 符号 也称信号码元 SignalElement 的个数 例如 每秒传送1个符号 则波特率为1波特 在计算机中 一个 符号 的含义为高 低两种电平 分别代表逻辑值 1 和 0 所以每个符号的信息量为1比特 此时波特率与比特率刚好一致 但在其他一些场合 例如通信中采用的 相一幅 复合调制技术 一个 符号 的信息含量就不是一个比特 此时 波特率就不等于比特率 标准波特率系列 50 75 110 150 300 600 1200 900 1800 00 2700 001 101 011 111 000 100 110 010 现在的电话网是模拟通信系统 它是为传输话音信息而设计的 要在电话网上传送数字信号 必须经过调制和解调 实现调制和解调两个过程的设备称为 调制解调器 ModulatorDemodulator Modem 方法 选取音频范围某一频率的正 余 弦模拟信号作为载波 用以运载所要传送的数字信号 用传送的数字信号改变载波信号的幅值 频率或相位 使之在信道上传送 到达信道另一端 再将数字信号从载波中取出 3 发送时钟和接收时钟 数据输入寄存器 输入移位寄存器 1 16 32 数据输出寄存器 输出移位寄存器 1 16 32 CLK 主时钟 串行数据输入 输入移位脉冲 串行数据输出 输出移位脉冲 接收时钟 发送时钟 4 波特率因子 F 时钟频率 波特率因子 波特率波特率因子 数据传输率 波特率 与时钟频率之间的比例系数 给定时钟频率 选择不同的波特率因子可得到不同的波特率 例如 f 19 2kHz 若选波特率因子为16 则波特率为1200bps 若选定波特率因子和波特率 则相应的确定了对时钟频率的要求 8251 外部的时钟电路 1 16 1MHz N分频 19 2KHz 移位脉冲 CLK OUT 8253 1200 16 19200 时钟频率 若外部时钟电路的频率F 1MHz 需用8253分频 试计算分频系数 8253的计数初值 8253计数初值 时钟频率 波特率 波特率因子 5 异步方式与同步方式 1 异步方式 Asynchronous 也称 起止同步式 串行异步传输数据格式 2 同步方式 Synchronous 串行同步通信信息格式 同步字符 SYN1 同步字符 SYN2 数据 DATA 同步通信的效率 协议开销 例 SDLC HDLC帧格式 假定数据长度为2048位 通信效率为 2048 2048 48 97 协议开销仅为3 一般公式 SDLC HDLC协议开销 1 0 N N 48 其中N为发送数据的比特数 标志01111110 地址8位 控制8位 CRC8位 CRC8位 标志01111110 数据场 11 4可编程串行通信接口8251A Intel8251A是通用同步 异步收发器USART UniversalSynchronousAsynchronousReceiver Transmitter 它是专为Intel微处理器设计的 可用作CPU和串行外设的接口电路 11 4 18251A的基本性能 1 可用于同步和异步传送 2 同步传送 5 8位 字符 内部或外部字符同步 可自动插入同步字符 3 异步传送 5 8位 字符 时钟速率为通信速率的1 16 64倍 4 异步传送时 可产生中止字符 BreakCharacter 可产生1 1 5 或2位的停止位 可检测假起始位 可自动检测和处理中止字符 5 波特率 异步 DC 19 2K 同步 DC 64K 6 全双工 双缓冲器发送和接收 7 差错检测 具有奇偶错 溢出错和帧格式错等差错检测电路 8 28脚双列直插式封装 9 全部输入输出与TTL电平兼容 单一 5V电源 单一TTL电平时钟 Intel8251APROGRAMMABLECOMMUNICATIONINTERFACEnSynchronousandAsynchronousOperationnSynchronous5 8BitCharacters InternalorExternalCharacterSynchronization AutomaticSyncInsertionnAsynchronous5 8BitCharacters ClockRate 1 16or64TimesBaudRate BreakCharacterGeneration 1 1 5 or2StopBits FalseStartBitDetection AutomaticBreakDetectandHandling nSynchronousBaudRate DCto64KBaudnAsynchronousBaudRate DCto19 2KBaudnFullDuplex doubleBuffered TransmitterandReceivernErrorDetection Parity OverrunandFramingnFullyCompatiblewith8080 8085CPUn28 PinDIPPackagenAllInputsandOutputsareTTLCompatiblenSingle 5VSupplynSingleTTLClock 11 4 28251A的基本功能和工作原理 1 8251A的引脚8251A有28条引脚 引脚分配如图11 12所示 8251A D1 TxD CLK RESET DSR RTS DTR RxC Vcc D0 TxEMPTY CTS WR TxC D7 D6 D5 D4 GND RxD D3 CS RD C D SYNDET BRKDET TxRDY RxRDY 1 10 9 8 7 6 5 4 3 2 11 13 12 28 19 20 21 22 23 24 25 26 27 18 15 16 17 14 D2 图11 128251A的引脚信图 2 8251A方块图及工作原理8251A的结构方块图如图11 13所示 由图中可看出8251A可分为5个部分 1 接收器 2 发送器 3 数据总线缓冲器 4 调制解调器控制电路 5 读写控制逻辑电路 数据总线缓冲器 读 写控制逻辑电路 调制 解调控制电路 接收控制电路 串 并转换 发送缓冲器 缓冲器 并 串转换 发送控制电路 RESET CLK C D RD WR CS DSR DTR CTS RTS D7 D0 内部总线 TXD RXD TXEMPTY TXC RXRDY RXC SYNDET TXRDY 发送器 接收器 图11 138251A内部结构方块图 接收 11 4 38251A对外接口信号 8251A是CPU与外设之间的接口电路 其对外的接口信号可分为两组 一组是与CPU的接口信号 另一组是与外设之间的接口信号 参见图11 15 8086 8251A 外设 D7 D0 CLK 译码 CS AB M IO C D RD RD WR WR TXRDY TXEMPTY RXRDY SYNDET RESET DTR DSR RTS CTS TXD RXD 计数器 定时器 RXC TXC 图11 158251A的对外接口信号 1 8251A与CPU之间的接口信号 1 复位信号RESET 2 数据线D7 D0 3 读写控制信号 4 收发联络信号 表11 18251A的读 写控制真值表CSC DRDWR操作0001CPU从8251A读数据0010CPU往8251A写数据0101CPU从8251A读状态0110CPU往8251A写控制命令0 11D7 D0为高阻态1 D7 D0为高阻态 2 8251A与外设之间的接口信号有四个Modem控制信号DTR DSR RTS和CTS 另外还有四个信号 如下所述 1 接收器时钟RXC 2 发送器时钟TXC 3 接收数据线RXD 4 发送数据线TXD V 24 RS 232C信号连接与定时关系a 信号线连接 11 4 48251A的编程 8251A的编程包括两个部分 一个是方式指令字 另一个是命令指令字 前者用来定义8251A的工作方式 它必须紧接在复位后由CPU写入 后者用来指定芯片的实际操作 只有在写入了方式选择控制字后 才能由CPU写入 1 方式指令字方式指令字的格式如图11 16所示 00同步方式01异步方式 X1 10异步方式 X16 11异步方式 X64 00字符长度为5位01字符长度为6位10字符长度为7位11字符长度为8位 1带奇偶校验0不带奇偶校验 1偶校验0奇校验 图11 168251A的方式指令字 2 命令指令字 命令指令字的格式如图11 17所示 它直接让8251A实现某种操作或进入规定的工作状态 1进入搜索方式 1内部复位 1允许发送 1数据终端准备好 1允许接收 1发送中止字符0正常工作 1清除错误标志 1请求发送 图11 178251A的命令指令字 3 状态字 CPU可以在8251A工作过程中利用输入指令读取当前8251A的状态字 从而可以检测接口和数据传输的工作状态 8251A状态字的格式如图11 18所示 1发送器准备好 1数据通信设备准备好 帧格式错标志 溢出错标志 奇偶错标志 1接收器准备好 1发送器空 SYNDETBRKDET 1已达到同步0未达到同步 1接收到中止字符0正常工作 图11 188251A的状态字 1 三个错误标志位PE OE和FE PE 1是奇偶校验错 OE 1是溢出错 也称为 超越错 FE 1是 帧格式错 它们只对异步方式有效 出现这三种错误时都不中止8251A的工作 它们可以用操作命令字中的ER位来复位 2 RXRDY TXE TXEMPTY 和SYNDET BRKDET位与同名引脚的状态含义相同 此处不再重述 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的初始化及数据传送流程图 8251A的初始化及数据传送流程图如图11 19所示 输出方式指令字 输出第一个同步字符 异步方式 是单同步 RESET 输出第二个同步字符 输出命令指令字 有复位命令否 传送数据 输出命令指令字或输入状态字 数据完否 Y N N N N Y Y Y 图11 198251A初始化和数据传送流程图 8251A的初始化编程必须在复位操作之后 先设置方式指令字 如果设定在异步方式 则马上要输出命令指令字进行设置 然后才能进行数据传送 在数据传送过程中 也可使用命令指令字进行某些操作设置或读取8251A的状态 在数据传送结束时 若使用IR位为 1 的内部复位命令使8251A复位 则它又可重新接收方式指令字 从而改变工作方式完成其他传送任务 如果设定8251A工作在同步方式 那么在输出方式指令字后 应紧跟着输出一个同步字符或两个同步字符 然后再输出命令指令字 后面的操作与异步方式相同 5 编程举例 1 异步方式下的初始化编程设定8251A工作于异步方式 波特率因子为64 每字符7个数据位 偶校验 2位停止位 则方式指令字为11111011 FBH 命令指令字的设定 例如使8251A的发送器允许 接收器允许 使状态寄存器中的3个错误标志位复位 使数据终端准备好信号DTR输出低电平 则命令指令字应为00010111 17H 若8251A的端口地址为50H 51H 则本例初始化程序如下 MOVAL 0FBH 输出方式指令字OUT51H ALMOVAL 17H 输出命令指令字OUT51H AL 2 同步方式下的初始化编程举例 8251A工作于同步方式 双同步字符 同步字符设定为16H 内同步 偶校验 每字符7个数据位 则方式指令字为00111000B 38H 命令指令字设定为10010111B 97H 使发送器允许 接收器允许 使错误标志复位 开始搜索同步字符 并通知调制解调器 数据终端设备已准备就绪 8251A的端口地址为50H 51H 则本例初始化程序如下 MOVAL 38H 输出方式指令字OUT51H ALMOVAL 16H 输出两个同步字符16HOUT51H ALOUT51H ALMOVAL 97H 输出命令指令字OUT51H ALCPU执行上述程序之后 即完成了对8251A同步方式的初始化编程 11 4 58251A的应用 1 利用8251A实现与终端的通信2 利用8251A实现双机通信利用8251A实现相距较近 不超过15米 的两台微机通信 其硬件连接如图11 20所示 由于是近距离通信 因此不用Modem 两台微机直接通过RS 232C相连即可 且通信双方均作为数据终端设备DTE 由于采用EIARS 232C接口标准 所以需要加接电平转换电路 通信时假设对方已准备好 所以可不使用四根联络信号 指DTR DSR RTS CTS 仅使8251A的CTS接地即可 甲乙两机可进行半双工或全双工通信 CPU与接口之间可按查询方式或中断方式进行数据传送 本例采用半双工通信 查询方式 异步传送 8251A CTS DSR RxD TxC RxC CLK 系统主时钟 TxD RTS DTR CPU总线 时钟电路 甲机 EIA TTL电平转换 2 3 7 2 3 7 DTE DTE TxD TxD RxD RxD EIA TTL电平转换 8251A CTS DSR RxD TxC RxC CLK TxD RTS DTR 系统主时钟 CPU总线 时钟电路 RS 232C接口 图11 20利用8251A进行双机通信硬件连接图 乙机 GND 1 发送端初始化程序及控制程序如下所示 设在此之前已对8251A进行了复位操作 START MOVDX 8251A控制端口号MOVAL 7AH 输出方式指令字 异步方式 7位数据位 1位停止位OUTDX AL 偶校验 波特率因子为16MOVAL 11H 输出命令指令字 发送器允许 错误标志复位OUTDX ALMOVSI 发送数据块首地址MOVCX 发送数据块字节数NEXT MOVDX 8251A控制端口号INAL DX 输入状态字TESTAL 01H 查询状态位TXRDY是否为 1 JZNEXT 发送未准备好 则继续查询MOVDX 8251A数据端口号MOVAL SI 发送准备好 则从发送区取一字节数据发送OUTDX ALINCSI 修改地址指针LOOPNEXT 未发送完 继续HLT 2 接收端初始化及控制程序如下所示 设在此之前已对8251A进行了复位操作 BEGIN MOVDX 8251A控制端口号MOVAL 7AH 输出方式指令字OUTDX ALMOVAL 14H 输出命令指令字OUTDX ALMOVDI 接收数据块首地址MOVCX 接收数据块字节数L1 MOVDX 8251A控制端口号INAL DX 输入状态字TESTAL 02H 查询状态位R RDY是否为 1 JZL1 接收未准备好 则继续查询TESTAL 08H 检测是否有奇偶校验错JZERR 若有错 则转出错处理MOVD

温馨提示

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

评论

0/150

提交评论