收藏 分销(赏)

通信协议详解模板.docx

上传人:w****g 文档编号:9469845 上传时间:2025-03-27 格式:DOCX 页数:8 大小:110.93KB
下载 相关 举报
通信协议详解模板.docx_第1页
第1页 / 共8页
通信协议详解模板.docx_第2页
第2页 / 共8页
通信协议详解模板.docx_第3页
第3页 / 共8页
通信协议详解模板.docx_第4页
第4页 / 共8页
通信协议详解模板.docx_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、RS232通信协议详解通信协议所谓通信协议是指通信双方一个约定。约定包含对数据格式、 同时方法、 传送速度、 传送步骤、 检纠错方法以及控制字符定义等问题做出统一要求, 通信双方必需共同遵守。所以, 也叫做通信控制规程, 或称传输控制规程, 它属于ISOS OSI七层参考模型中数据链路层。现在, 采取通信协议有两类: 异步协议和同时协议。同时协议又有面向字符和面向比特以及面向字节计数三种。其中, 面向字节计数同时协议关键用于DEC企业网络体系结构中。一、 物理接口标准1.串行通信接口基础任务(1)实现数据格式化: 因为来自CPU是一般并行数据, 所以, 接口电路应含有实现不一样串行通信方法下数

2、据格式化任务。在异步通信方法下, 接口自动生成起止式帧数据格式。在面向字符同时方法下, 接口要在待传送数据块前加上同时字符。(2)进行串并转换: 串行传送, 数据是一位一位串行传送, 而计算机处理数据是并行数据。所以当数据由计算机送至数据发送器时, 首先把串行数据转换为并行数才能送入计算机处理。所以串并转换是串行接口电路关键任务。(3)控制数据传输速率: 串行通信接口电路应含有对数据传输速率波特率进行选择和控制能力。(4)进行错误检测: 在发送时接口电路对传送字符数据自动生成奇偶校验位或其她校验码。在接收时, 接口电路检验字符奇偶校验或其她校验码, 确定是否发生传送错误。(5)进行TTL 与E

3、IA电平转换: CPU 和终端均采取TTL电平及正逻辑, 它们与EIA采取电平及负逻辑不兼容, 需在接口电路中进行转换。(6)提供EIA-RS-232C 接口标准所要求信号线: 远距离通信采取MODEM 时, 需要9根信号线; 近距离零MODEM 方法, 只需要3 根信号线。这些信号线由接口电路提供, 方便与MODEM 或终端进行联络与控制。2、 串行通信接口电路组成为了完成上述串行接口任务, 串行通信接口电路通常由可编程串行接口芯片、 波特率发生器、 EIA 与TTL 电平转换器以及地址译码电路组成。其中, 串行接口芯片, 伴随大规模继承电路技术发展, 通用同时(USRT)和异步(UART)

4、接口芯片种类越来越多, 以下表所表示。它们基础功效是类似, 都能实现上面提出串行通信接口基础任务大部分工作, 且都是可编程。才用这些芯片作为串行通信接口电路关键芯片, 会使电路结构比较简单。3.相关串行通信物理标准为使计算机、 电话以及其她通信设备相互沟通, 现在, 已经对串行通信建立了多个一致概念和标准, 这些概念和标准属于三个方面: 传输率, 电特征, 信号名称和接口标准。1、 传输率: 所谓传输率就是指每秒传输多少位, 传输率也常叫波特率。国际上要求了一个标准波特率系列, 标准波特率也是最常见波特率, 标准波特率系列为110、 300、 600、 1200、 4800、 9600 和19

5、200。大多数CRT 终端都能够按110 到9600范围中任何一个波特率工作。打印机因为机械速度比较慢而使传输波特率受到限制, 所以, 通常串行打印机工作在110 波特率, 点针式打印机因为其内部有较大行缓冲区, 所以能够按高达2400波特速度接收打印信息。大多数接口接收波特率和发送波特率能够分别设置, 而且, 能够经过编程来指定。2、 RS-232-C标准: RS-232-C 标准对两个方面作了要求, 即信号电平标准和控制信号线定义。RS-232C 采取负逻辑要求逻辑电平, 信号电平与通常TTL电平也不兼容, RS-232-C 将-5V-15V 要求为“1”, +5V+15V要求为“0”。图

6、1是TTL 标准和RS-232-C标准之间电平转换。二、 软件协议1.OSI协议和TCP/IP协议(1)OSI 协议OSI 七层参考模型不是通讯标准, 它只给出一个不会因为技术发展而必需修改稳定模型, 使相关标准和协议能在模型定义范围内开发和相互配合。通常通讯协议只符合OSI 七层模型某几层, 如: EIA-RS-232-C: 实现了物理层。IBM SDLC(同时数据链路控制规程): 数据链路层。ANSI ADCCP(优异数据通讯规程): 数据链路层IBM BSC(二进制同时通讯协议): 数据链路层。应用层电子邮件协议SMTP只负责寄信、 POP3 只负责收信。(2)TCP/IP协议实现了五层

7、协议。(1)物理层: 对应OSI 物理层。(2)网络接口层: 类似于OSI数据链路层。(3)Internet 层: OSI 模型在Internet 网使用前提出, 未考虑网间连接。(4)传输层: 对应OSI 传输层。(5)应用层: 对应OSI 表示层和应用层。2.串行通信协议串行通信协议分同时协议和异步协议。(1)异步通信协议实例起止式异步协议特点与格式: 起止式异步协议特点是一个字符一个字符传输, 而且传送一个字符总是以起始位开始, 以停止位结束, 字符之间没有固定时间间隔要求。其格式如图3 所表示。每一个字符前面都有一位起始位(低电平, 逻辑值0), 字符本身有57 位数据位组成, 接着字

8、符后面是一位校验位(也能够没有校验位), 最终是一位, 或意味半, 或二位停止位, 停止位后面是不定长度空闲位。停止位和空闲位都要求为高电平(逻辑值), 这么就确保起始位开始处一定有一个下跳沿。从图中能够看出, 这种格式是靠起始位和停止位来实现字符界定或同时, 故称为起始式协议。传送时, 数据低位在前, 高位在后, 图4 表示了传送一个字符E ASCAII码波形1010001。当把它最低有效位写到右边时, 就是E ASCII码1000101=45H。起止位作用: 起始位实际上是作为联络信号附加进来, 当它变为低电平时, 告诉收方传送开始。它到来, 表示下面接着是数据位来了, 要准备接收。而停止

9、位标志一个字符结束, 它出现, 表示一个字符传送完成。这么就为通信双方提供了何时开始收发, 何时结束标志。传送开始前, 发收双方把所采取起止式格式(包含字符数据位长度, 停止位位数, 有没有校验位以及是奇校验还是偶校验等)和数据传输速率作统一要求。传送开始后, 接收设备不停地检测传输线, 看是否有起始位到来。当收到一系列“1”(停止位或空闲位)以后, 检测到一个下跳沿, 说明起始位出现, 起始位经确定后, 就开始接收所要求数据位和奇偶校验位以及停止位。经过处理将停止位去掉, 把数据位拼装成一个并行字节, 而且经校验后, 无奇偶错才算正确接收一个字符。一个字符接收完成, 接收设备有继续测试传输线

10、 监视“0”电平到来和下一个字符开始, 直到全部数据传送完成。由上述工作过程可看到, 异步通信是按字符传输, 每传输一个字符, 就用起始位来通知收方, 以此来重新查对收发双方同时。若接收设备和发送设备二者时钟频率略有偏差, 这也不会因偏差累积而造成错位, 加之字符之间空闲位也为这种偏差提供一个缓冲, 所以异步串行通信可靠性高。但因为要在每个字符前后加上起始位和停止位这么部分附加位, 使得传输效率变低了, 只有约80%。所以, 起止协议通常见在数据速率较慢场所(小于19.2kbit/s)。在高速传送时, 通常要采取同时协议。(2)面向字符同时协议特点与格式: 这种协议经典代表是IBM企业二进制

11、同时通信协议(BSC)。它特点是一次传送由若干个字符组成数据块, 而不是只传送一个字符, 并要求了10 个字符作为这个数据块开头与结束标志以及整个传输过程控制信息, 它们也叫做通信控制字。因为被传送数据块是由字符组成, 故被称作面向字符协议。特定字符(控制字符)定义: 由上面格式能够看出, 数据块前后都加了多个特定字符。SYN是同时字符(synchronous Character), 每一帧开始处都有SYN, 加一个SYN称单同时, 加两个SYN称双同时设置同时字符是起联络作用,传送数据时,接收端不停检测,一旦出现同时字符,就知道是一帧开始了。接着SOH 是序始字符(Start Of Head

12、er), 它表示标题开始。标题中包含院地址、 目地址和路由指示等信息。STX是文始字符(StartOf Text), 它标志着传送正文(数据块)开始。数据块就是被传送正文内容, 由多个字符组成。数据块后面是组终字符ETB(End Of Transmission Block)或文终字符ETX(EndOf Text), 其中ETB用在正文很长、 需要分成若干个分数据块、 分别在不一样帧中发送场所, 这时在每个分数据块后面用文终字符ETX。一帧最终是校验码, 它对从SOH 开始到ETX(或ETB)字段进行校验, 校验方法能够是纵横奇偶校验或CRC。另外, 在面向字符协议中还采取了部分其她通信控制字,

13、 它们名称以下表所表示: 数据透明实现: 面向字符同时协议, 不象异步起止协议那样, 需要在每个字符前后附加起始和停止位, 所以, 传输效率提升了。同时, 因为采取了部分传输控制字, 故增强了通信控制能力和校验功效。但也存在部分问题, 比如, 怎样区分数据字符代码和特定字符代码问题, 因为在数据块中完全有可能出现与特定字符代码相同数据字符, 这就会发生误解。比如正文有个与文终字符ETX 代码相同数据字符, 接收端就不会把它看成为一般数据处理, 而误认为是正文结束, 所以产生差错。所以, 协议应含有将特定字符作为一般数据处理能力, 这种能力叫做“数据透明”。为此, 协议中设置了转移字符DLE(D

14、ata LinkEscape)。当把一个特定字符看成数据时, 在它前面要加一个DLE, 这么接收器收到一个DLE就可预知下一个字符是数据字符, 而不会把它看成控制字符来处理了。DLE 本身也是特定字符, 当它出现在数据块中时, 也要在它前面加上另一个DLE。这种方法叫字符填充。字符填充实现起来相当麻烦, 且依靠于字符编码。正是因为以上缺点, 故又产生了新面向比特同时协议。(3)面向比特同时协议特点与格式: 面向比特协议中最含有代表性是IBM同时数据链路控制规程SDLC(Synchronous Data Link Control),国际标准化组织ISO(International Standar

15、dOrganization)高级数据链路控制规程HDLC(High Level Data link Control),美国国家标准协会(Americal National Standard Institute)优异数据通信规程ADCCP(AdvancedData Communication Control Procedure)。这些协议特点是所传输一帧数据能够是任意位, 而且它是靠约定位组合模式, 而不是靠特定字符来标志帧开始和结束, 故称“面向比特”协议。这中协议通常帧格式如图5所表示: 帧信息分段: 由图5 可见, SDLC/HDLC一帧信息包含以下多个场(Filed), 全部场都是从有效

16、位开始传送。(1)SDLC/HDLC 标志字符: SDLC/HDLC协议要求, 全部信息传输必需以一个标志字符开始, 且以同一个字符结束。这个标志字符是 01111110, 称标志场(F)。从开始标志到结束标志之间组成一个完整信息单位, 称为一帧(Frame)。全部信息是以帧形传输, 而标志字符提供了每一帧边界。接收端能够经过搜索“01111110”来探知帧开头和结束, 以此建立帧同时。(2)地址场和控制场: 在标志场以后, 能够有一个地址场A(Address)和一个控制场C(Control)。地址场用来要求与之通信次站地址。控制场可要求若干个命令。SDLC要求A 场和C场宽度为8 位或16

17、位。接收方必需检验每个地址字节第一位, 假如为“0”, 则后面跟着另一个地址字节; 若为“1”, 则该字节就是最终一个地址字节。同理, 假如控制场第一个字节第一位为为“0”, 则还有第二个控制场字节, 不然就只有一个字节。(3)信息场: 跟在控制场以后是信息场I(Information)。I 场包含有要传送数据, 并不是每一帧都必需有信息场。即数据场能够为0, 当它为0 时, 则这一帧关键是控制命令。(4)帧校验信息: 紧跟在信息场以后是两字节争校验, 帧校验场称为FC(FrameCheck)场或称为帧校验序列FCS(Frame check Squence)。SDLC/HDLC 均采取16 位

18、循环冗余校验码CRC(Cyclic Redundancy Code)。除了标志场和自动插入“0”以外, 全部信息都参与CRC计算。实际应用时两个技术问题: (1)“0”位插入/删除: 如上所述, SDLC/HDLC协议要求以01111110为标志字节, 但在信息场中也完全有可能有同一个模式字符, 为了把它与标志区分开来, 所以采取了“0”位插入和删除技术。具体作法是发送端在发送全部信息(除标志字节外)时, 只要碰到连续5 个“1”, 就自动插入一个“0”, 当接收端在接收数据时(除标志字节)假如连续收到5个“1”, 就自动将其后一个“0”删除是, 以恢复信息原有形式。这种“0”位插入和删除过程

19、是由硬件自动完成。(2)SDLC/HDLC异常结束: 若在发送过程中出现错误, 则SDLC/HDLC协议常见异常结束(Abort)字符, 或称为失效序列使本帧作废。在HDLC规程中, 7 个连续“1”被作为失效字符, 而在SDLC 中失效字符是8 个连续“1”。当然在试销序列中不使用“0”位插入/删除技术。LC/HDLC 协议要求, 在一帧之内不许可出现数据间隔。在两帧之间, 发送器能够连续输出标志字符序列, 也能够输出连续高电平, 它被称为空闲(Idle)信号。数据帧格式和通讯协议最大区分是: 数据帧格式属于数据链路层协议; 通讯协议属于应用层协议。按ISO/OSI模型见解, 串口进行通信过程最少包含三个层次协议: 物理层协议、 数据路层协议和应用层协议。(1)物理层协议: 要求串口硬件通信方法。以异步串行通信为例, 物理层协议包含串行接口波特率、 数据位位数、 停止位位数以及奇偶校验方法。(2)数据链路层协议: 要求数据帧格式, 包含数据帧起始定义、 帧字节数、 帧结束定义。有时, 数据帧格式中还包含垂直校验和, 如CRC校验和等。(3)应用层协议: 也称为通信协议, 要求双方在通信过程中交互方法, 谁先提议通信, 是否对方需要应答、 是否需要犯错重发等。

展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服