第8章 串行通信接口.ppt_第1页
第8章 串行通信接口.ppt_第2页
第8章 串行通信接口.ppt_第3页
第8章 串行通信接口.ppt_第4页
第8章 串行通信接口.ppt_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

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

文档简介

浙江工业大学计算机学院 微机接口技术 1 内容回顾 键盘接口键盘的分类 按结构 按接口 按编码方式 键盘的工作原理 线性键盘 矩阵键盘 行扫描法 行列反转法 行列扫描法 去抖和重键问题 鼠标接口鼠标的工作原理 鼠标的分类 鼠标的接口 鼠标接口的编程 2 内容回顾 LED接口LED显示器的结构 七段 共阴极 共阳极 LED显示器的工作原理 静态显示 动态显示 打印机接口打印机的组成与分类 打印机接口标准 Centronics接口 打印机接口的编程 直接编程 BOIS DOS功能调用 音频设备接口音频处理技术 采样 量化 声卡的组成和接口 3 4 第八章串口通信接口 8 1串口通信基本概念 5 并行传送方式以字长为单位进行传送 用多根线一次传送多位数据 特点 传送速度快 但使用信号线多 成本高 且信号线间电容会引起串扰 不适合远距离传送 一般用于外设与微机间近距离 大量和快速的传输 串行传送方式通过一根线一位一位顺序传输数据 缺点 速度慢 但传输线少 成本低 适合于远距离 低速率的数据传输 单工方式只允许在一个方向上传送数据 半双工方式双方均具备发送 接收能力 但同一时刻只能进行一个方向的传送 全双工方式收发双方可同时进行双向的数据传送 6 1 串行通信的数据传送方式 比特率与波特率比特率 每秒传送的二进制位数 单位 bit s 波特率 每秒传送的 进制位数 单位 bout s 两者的关系 比特率 波特率 log2N 例 传16进制数时 比特率 4 波特率 计算机内部均采用二进制 故比特率 波特率 7 2 通信速率 例8 1 某通信系统每秒传输50个字符 每个字符包含8位八进制数 计算其比特率 解 比特率为50 8 3 1200bit s 收 发时钟与波特率因子串行通信时 收发双方需用时钟信号来同步 收 发时钟直接决定了通信线路上的数据传输速率 发送端在TxClk 使数据送入移位寄存器串行输出 接收端在RxClk 将传输线上的数据逐位打入移位寄存器 8 国际上规定了标准的波特率系列 常用的标准值为110 300 600 2400 4800 9600和19200波特 为提高抗干扰能力 往往用多个时钟来调制一位二进制数 调制一位二进制数的时钟个数称为波特因子 Factor 收 发时钟频率与波特率的关系为 TxClk RxClk Factor Baud Factor一般取1 16 32或64 异步通信时常取16 同步通信则必须1 9 调制与解调原因 数字信号包含很多直流和低频成分 直接传输时会严重衰减 从而在接收端产生严重畸变和失真 解决办法 发送方使用调制器 Modulator 把要传送的数字信号转换为适合在线路上传输的模拟信号 接收方则使用解调器 Demodulator 将模拟信号还原为数字信号 双工和半双工通信设备 既要发送数据又要接收数据 故可将调制器和解调器做在一起 形成调制解调器 Modem 10 3 信号的调制与解调 11 调制解调器类型幅移键控 ASK 频移键控 FSK 和相移键控 PSK 12 一般采用频移键控 FSK 的方法 当信号为1时 开关1闭合 开关2断开 经放大器输出频率1的信号 当信号为0时 开关1断开 开关2闭合 经放大器输出频率2的信号 13 如何自动控制 补充 电子开关控制方法 继电器 定义 是一种当输入量达到一定值时 输出量将发生跳跃式变化的自动控制器件 用途 能够以较小电流控制大电流的导通和切断 相当于一种 自动开关 在电路中起自动调节 安全保护 转换电路等作用 分类 普通 干簧管式继电器 14 普通继电器 15 干簧继电器 组成 干簧管 线圈 干簧管由2或3片铁镍台金 舌 簧片构成 舌簧片的触点部分镀有贵金属 金 铑 钯等 以使其接通后良好的导电性能 舌簧片被密封在充有氮气等惰性气体的玻璃管内 防外界尘埃 污染和腐蚀 可靠性高 寿命长 16 17 未通电时所处的状态 外形展示 18 内容概要 数据传送方式 单工 双工 半双工通信速率 比特率 波特率信号的调制与解调 8 2串口通信协议 19 通信协议 为使通信能顺利进行 数据收发双方必须共同遵守的通信规程 称为通信协议 通信协议的基本内容 波特率 双方约定的数据收 发速率 数据格式 双方约定的帧格式及控制信息的定义等 帧同步 接收方获知一批数据开始和结束的方法 位同步 接收方从数据流中正确采样到每位数据的方法 差错校验方式 接收方判断收到数据正确性的方法 串行通信协议的分类 异步串行通信协议同步串行通信协议 特点以字符为单位进行信息传送 字符间异步 字符内各位之间同步 字符与字符之间没有严格的定时要求 其间隙任意 一旦开始传输一个字符 收发双方必须按照约定的速率 在时钟的作用下 一位一位地进行同步传输 帧格式数据格式包括 同步信息 数据的开始与结束 数据信息和校验信息 20 1 异步串行通信协议 采用极性相反的起始位和停止位提供准确的时间基准 一次传送1个字符 具有信息校验 可靠性高 传输速率较慢 效率低 80 一般用于数据量较小 传输率较低的场合 21 可为任意多位 起止式的异步串行通信 例8 2 异步传输ASCII码 每个字符7位 如果数据传输速率为240字符 秒 使用1位奇偶校验位和1位停止位 问 1 波特率为多少 2 有效数据位传输率是多少 3 传输效率是多少 解题分析 1 波特率 1 7 1 1 240 2400bout s 2 有效数据位传输率 7 240 1680bout s 3 传输效率是 1680 2400 70 7 10 70 22 例8 3 某计算机采用异步串行通信方式 数据格式为 8位数据位 奇校验 2位停止位 试画出传送字符 A 时通信线路上的波形 解题分析 字符A的ASCII码为01000001 按照先低位后高位的顺序 前面加1位起始位 0 后加奇校验位 1 和2位停止位 11 23 特点字符与字符间同步 字符内各位之间也同步 不使用起始位和停止位来标识字符的开始和结束 而是用一串特定的二进制序列 同步字符 来通知接收方串行数据的第一位何时到达 传输效率高 速度快 但其技术复杂 硬件开销大 一般用于高速数据传输场合 分类面向字符的同步通信 一帧数据由若干个字符组成 面向比特的同步通信 一帧数据由任意位bit组成 主要用于二进制的传输 24 2 同步串行通信协议 面向字符的同步通信数据块由字符组成 字符连续 其间不留空隙 要求收发双方时钟完全同频同相 不能有一点误差 近距离传送时 可在传输线上增加一条时钟线 以确保收发双方使用同一时钟 远距离传送时 可通过Modem从数据流中提取同步信号 25 分类根据对同步信号的检测方式 可分为 内同步 对同步信号的检测和同步控制在串行接口芯片内部进行 单同步 只有一个字节的同步字符 双同步 有两个字节的同步字符 外同步 对同步信号的检测在串行接口芯片的外部进行 当外部硬件电路检测到同步字符时 向串行接口发一个同步信号SYNC 串行接口收到同步信号后 立即开始接收信息 26 27 典型的面向字符的同步通信协议 IBMBSCBSC BinarySynchronousCommunication 一帧传输由若干字符组成 比异步起止式传输效率高 规定了10个通信控制字符 作为数据块的开始和结束标志以及整个传输过程的控制信息 增强了通信控制能力和校验功能 28 帧格式 29 面向比特的同步通信一帧数据可由任意位组成 靠约定的位组合模式来标志帧的开始和结束 30 典型的面向比特的同步通信协议IBM的SDLC 同步数据链路控制 SynchronousDataLinkControl ISO的HDLC 高级数据链路控制 HighLevelDataLinkControl ANSI的ADCCP 高级数据通信控制规程 AdvancedDataCommunicationsControlProcedure 31 SDLC HDLC协议的帧格式标志域 开始和结束标志 提供了每帧信息的边界 标志字符为01111110 地址域 A Address 规定了与之通信的目标地址 控制域 C Control 规定了若干个命令 信息域 I Information 包含要传送的数据 数据域为0时表示该帧为控制命令 帧校验域 FC FrameCheck 采用16位CRC校验 32 SDLC HDLC实际应用时的2个技术问题 0 位插入 删除技术 信息域中可能存在和标志字节01111110相同的字符 为了区别 发送端在发送除标志字节外的信息时 当遇到连续5个 1 时 就自动插入一个 0 接收端若连续接收到5个 1 时 就自动删除其后的一个 0 恢复信息 SDLC HDLC异常结束 发送过程若出现错误 用异常结束字符使本帧作废 在HDLC规程中 失效字符为7个连续的 1 在SDLC中为8个连续的 1 异常结束字符中不使用 0 位插入 删除技术 33 34 内容概要 异步串行通信协议 起止式 同步串行通信协议 内同步 外同步 8 3串口通信接口标准 35 常用的串行通信接口标准RS 232C标准 最常用的标准 是基础 全称 EIA RS 232C标准 ElectronicIndustrialAssociate RecommendedStandard 232C 由美国电子工业协会 EIA 于1969年颁布 最初用于远距离通信 适合数据速率在0 20Kb s范围内通信 RS 422A标准RS 485标准 数据终端设备DTE DataTerminalEquipment 通常指计算机或I O设备 代表数据源和目的地 数据通信设备DCE DataCommunicationEquipment 又称数据装置 DataSet 通常为Modem 作用 使数据符合线路要求 36 1 RS 232C标准的设备类型 串行通信系统 RS 232C标准规定了22根控制信号线 实际常常只用到3 9根 多采用9针或25针的D型头来连接 37 2 RS 232C标准的信号功能 38 DB 25型连接器 DB 9型连接器 实际异步通信时 只需9个信号 2个数据信号 6个控制信号 1个信号地线 信号线含义 从数据终端角度来定义 TxD 串行数据发送端 输出 RxD 串行数据接收端 输入 RTS 请求发送信号 输出 为高时表示终端要向Modem或其它通信设备发送数据 CTS 清除发送信号 输入 是对RTS的响应 当Modem或外设准备好接收来自终端的数据时 该信号有效 DTR 终端准备就绪信号 输出 为高时表明终端准备好接收来自Modem或外设的数据 DSR 数据装置准备就绪信号 输入 为高时表明Modem或外设准备好发送数据 DCD 接收信号检测 输入 为高时表明Modem收到通信线路另一端Modem送来的正常载波信号 RI 振铃提示 输入 当高时表明Modem收到交换台送来的振铃信号 39 RS 232C电平 负逻辑逻辑 1 3V 15V逻辑 0 3V 15VTTL电平 正逻辑逻辑 1 2 4V逻辑 0 0 4VRS 232C电平与TTL电平的转换电平转换芯片 MAX232 MAX232A MC1488 MC1489MC1488 TTL电平 RS 232C电平MC1489 RS 232C电平 TTL电平 40 3 RS 232C信号的电平特性 一般使用 12V 使用Modem时 距离 15米时 41 4 RS 232C的连接方式 不使用Modem时 距离 15米时 42 RS 422A接口标准 传输距离更远平衡方式传输 发送端平衡发送 接收端差分接收 两条传输线间的电位差决定电平值 AA BB 200mV表示逻辑 1 AA BB 200mV表示逻辑 0 最大传输率 10Mbps 传输距离 15m 10Mbps 1200m 90Kbps 43 5 其它串行通信标准 RS 422A平衡式接口电路 44 四路差动线路驱动器 具有三态输出的四路差动线路接收器 RS 485接口标准是一种多发送器 平衡式传输的串行接口标准 与RS 422A兼容 但扩充了RS 422A的功能 采用差分发送和差分接收 抗干扰能力强 传输距离 在没有Modem的情况下使用双绞线直接连接时 传输距离为15m 10Mbps 1200m 100Kbps 采用共线结构 实现多个收发器共用一条传输线的多点应用 允许在平衡电缆上连接32对收发器 能实现多点对点的通信 容易联网构成分布式系统 45 46 内容概要 RS 232C标准的设备类型RS 232C标准的信号功能RS 232C标准的电平特性RS 232C标准的连接方式其它串口标准 RS 422A RS 485 8 4可编程串口芯片8251A 47 Intel8251A是一款可编程的通用同步 异步接收发送器 USART UniversalSynchronousAsynchronousReceiverandTransmitter 基本性能 可工作在同步或异步方式 同步方式时 波特率为0 64Kbout s 字符5 8位可选 支持内 外同步 可自动插入同步字符 异步方式时 波特率为0 19 2Kbout s 字符5 8位可选 波特率因子可选为1 16 64 具有独立的发送器和接收器 能以单工 半双工和全双工方式进行通信 提供基本的控制信号 能方便地与Modem相连 48 1 内部结构 49 数据总线缓冲器8位三态双向缓冲区 用于在CPU与8251之间传送数据 状态和控制信息 读 写控制逻辑对CS RD WR C D等信号进行译码 以确定8251的操作 50 调制解调器控制远距离通信时 提供了与Modem联络的信号 近距离串行通信时 提供了与外设联络的应答信号 51 发送器发送缓冲器 发送移位寄存器 发送控制电路 发送控制电路用来控制和管理发送过程 在其控制下 发送缓冲器将来自CPU的并行数据串行化 通过TxD发送出去 异步方式 控制电路在数据帧中加上起始 校验和停止位 同步方式 控制电路在数据帧中插入同步字符和校验位 同步方式发送过程中 两字符间不允许有间隔 若CPU未及时提供新字符 则控制电路自动补上同步字符 52 接收器接收缓冲器 接收移位寄存器 接收控制电路 接收控制电路用来控制和管理接收过程 在其管理下 接收器从RxD上接收串行数据 并行化后存入接收缓冲器 异步方式 8251监视RxD线 当发现 时 开始接收一帧数据 经校验后剔除起始位和停止位等 将有效信息转换为并行数据存入接收缓冲器 同步方式 8251监视RxD线 依次对数据移位 每收到一位 都将接收寄存器与同步字符比较 若不等 则移入下一位继续比较 若相等 则表示搜索到同步字符 SYNDET 1 这时在RxC的同步下移位RxD上的数据 并将其组装成并行数据 送入接收缓冲器 53 2 外部引脚 28引脚的DIP封装 信号分为4组 发送器信号接收器信号读写控制逻辑信号Modem控制信号 54 TxRDY 发送器准备就绪 为1表CPU可写入新的数据 可作中断请求信号 TxEmpty 发送器空闲 为1表发送移位寄存器为空 RxRDY 接收器准备就绪 若已接收到数据并将其变为并行时 RxRDY变高 通知CPU来取数据 可作中断请求信号 SYNDET 同步检测信号 内同步时 输出 外同步时输入 55 发送器引脚TxRDY 发送器准备就绪 为1时CPU可将数据写入8251A 中断方式时 可作为中断请求信号 TxC 发送时钟 同步方式下 其频率等于发送数据的波特率 在异步方式下 其频率是发送波特率的1 16或64倍 具体的倍数可编程设定 TxD 数据发送端 输出串行数据 TxEMPTY 发送器空 为1表发送移位寄存器空 56 接收器引脚RxD 数据接收端 用来接收外部输入的数据 RxC 接收时钟 输入 同步方式下 其频率等于接收数据的波特率 异步方式下 其频率是接收波特率的1 16或64倍 57 SYNDET BRKDET 同步检测 间断检测信号 同步方式下 用于同步检测 SYNDET 内同步时 8251内部搜索到同步字符时 SYNDET输出1 外同步时 外部电路找到同步字符后 向SYNDET引脚输入高电平 则8251开始接收数据 异步方式下 用于间断检测 BRKDET 为1表示收到对方发来的间断码 RxRDY 接收器准备好信号 当接收缓冲器接收到串行数据且并行化后 RxRDY 1 通知CPU读取数据 CPU读取后 RxRDY变为0 中断方式时 该信号可作为中断请求信号 58 读 写控制逻辑引脚Reset 复位 使线路处于空闲状态 CLK 时钟输入 同步方式 频率要大于波特率的30倍 异步方式 频率要大于波特率的4 5倍 CS RD WR RD有效时 CPU读取接收缓冲器的数据 WR有效时 CPU将数据写入发送缓冲器 C D 控制 数据信号 输入 当C D 1时 数据总线上传送的是控制字 命令字或状态字 当C D 0时 数据总线上传送的是数据 59 Modem控制信号引脚RTS 请求发送信号 输出 有效时 表CPU已准备好发送数据 CTS 清除发送信号 输入 它是RTS的应答信号 有效时表Modem或外设已做好接收数据准备 DTR 数据终端就绪信号 输出 有效时 表示CPU准备好进行数据接收 DSR 数据装置就绪信号 输入 它是DTR的应答信号 有效时表Modem或外设已准备好发送数据 60 3 8251编程 8251A内部有2个命令字和1个状态字 方式命令字 指定8251A的通信方式 同步 异步 及其约定的数据帧格式 初始化时使用 操作命令字 指定8251A进行何种操作 发送 接收 内部复位等 设置某种工作状态 以便接收和发送数据 状态字 报告8251A何时可发送和接收数据 以及接收的数据有无错误 61 方式命令字 例8 3 某异步通信的数据格式为 1位起始位 2位停止位 奇校验 8位数据 波特率因子为16 设8251A控制端口地址为309H 试写出初始化代码段 62 MOVDX 309HMOVAL 11011110B 异步方式字OUTDX AL 例8 4 某同步通信的数据格式为 双同步字符 内同步方式 奇校验 字符长度8位 设8251A地址端口为309H 试写出初始化代码段 MOVDX 309HMOVAL 00011100B 同步方式字OUTDX AL 63 操作命令字 例8 5 要使8251A内部复位 请写出代码段 设8251地址端口为309H 64 MOVDX 309HMOVAL 01000000B 内部复位OUTDX AL 例8 6 某异步通信 若同时允许发送和接收 试写出代码段 设8251地址端口为309H MOVDX 309HMOVAL 00000101B 允许发送和接收OUTDX AL 65 状态字 存放在状态寄存器中 供CPU读取 和相应引脚的定义完全相同 例8 6 串行通信中 发送时需查询发送器是否准备好 其程序段为 66 L MOVDX 309HINAL DXTESTAL 01H 查询发送器是否准备好JZL 未准备好则继续查询 例8 7 串行通信中 接收时需查询接收器是否准备好 其程序段为 L MOVDX 309HINAL DXTESTAL 02H 查询发送器是否准备好JZL 未准备好则继续查询 67 8251A初始化编程8251A的方式命令字和操作命令字写入同一控制端口地址 采用顺序写入法 系统复位后 必须先写入方式命令字 再写入操作命令字 68 编程顺序 接通电源时硬件自动复位 为确保写方式字和命令字之前已正确复位 应向8251A控制口连续写入3个0 然后再写入复位字 D6 1 例8 8 已知串行通信中 8251为同步传送 有2个同步字符 内同步 偶校验 7位数据位 同步字符为16H 设8251控制口地址为1F2H 试写出初始化程序段 69 MOVDX 1F2H 控制口地址MOVBL 3 设置发送0的次数MOVAL 00HLL OUTDX AL 连续发送3个0DECBLJNZLLMOVAL 40H 送复位命令字OUTDX AL 70 MOVAL 38H 方式命令字 2个同步字符 内同步 OUTDX AL 偶校验 7位数据位MOVAL 16H 第1个同步字符 同步字符为16HOUTDX ALOUTDX AL 第2个同步字符 同步字符为16HMOVAL 95H 操作命令字 开始搜索 错误复位 OUTDX AL 允许发送 允许接收 例8 9 已知某系统使用8251异步串行通信 波特因子为64 偶校验 1位停止位 7位数据位 8251与外设有握手信号 采用查询方式传送 CPU地址线的A1接8251的C D端 8251两个端口地址为1F2H和1F0H 试编写发送字符 A 的程序段 71 MOVDX 1F2H 控制口地址MOVBL 3 设置发送0的次数MOVAL 00HLL OUTDX AL 连续发送3个0DECBLJNZLLMOVAL 40H 送复位命令字OUTDX AL 72 MOVAL 7BH 方式字 异步 波特因子64 偶校验 MOVDX AL 1位停止位 7位数据位MOVAL 11H 操作命令字 允许发送 错误复位OUTDX AL WAIT INAL DX 读取状态字TESTAL 01HJZWAIT TxRDY 0 则继续等待MOVDX 1F0H 发送数据到数据端口MOVAL A OUTDX AL 例8 10 设A B两台PC机利用8251通过RS 232串口进行通信 要求将A机内存缓冲区Tx buf的100个字符发送到通信线上 B机接收线路上的字符 存放至接收缓冲区Rx buf中 设两机之间采用查询方式异步传送 8位数据位 1位停止位 奇校验 波特率因子为16 8251两端口地址为1F0H和1F2H CPU地址线A1接其C D引脚 试编程实现以上串行传输过程 73 74 近距离通信时 不使用Modem 多采用三线零调制法 MC1488 TTL RS232MC1489 TTL RS232 CPU的CLK经过8253分频得到TxCLK和RxCLK A机的发送程序 75 MOVDX 1F2H 控制口地址MOVBL 3 设置发送0的次数MOVAL 00HLL OUTDX AL 连续发送3个0DECBLJNZLLMOVAL 40H 复位命令字OUTDX ALMOVAL 5EH 方式字 异步 8位数据 1位OUTDX AL 停止位 奇校验 波特因子16MOVAL 11H 操作命令字 允许发送 错误复位OUTDX AL 76 LEASI Tx buf 发送缓冲区首址送SIMOVCX 100 设置计数初值WAIT1 MOVDX 1F2HINAL DX 读取状态字TESTAL 01HJZWAIT1 发送器未就绪 则继续等待MOVAL SI MOVDX 1F0H 发送字符OUTDX ALINCSILOOPWAIT1 未发送完100个字符 则继续 B机的接收程序 77 MOVDX 1F2H 控制口地址MOVBL 3 设置发送0的次数MOVAL 00HLL OUTDX AL 连续发送3个0DECBLJNZLLMOVAL 40H 复位命令字OUTDX ALMOVAL 5EH 方式字 异步 8位数据 1位OUTDX AL 停止位 奇校验 波特因子16MOVAL 14H 操作命令字 允许接收 错误复位OUTDX AL 78 LEADI Rx buf 接收缓冲区首址送DIMOVCX 100 设置计数初值WAIT2 MOVDX 1F2

温馨提示

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

评论

0/150

提交评论