分享

一文了解RS232技术介绍

 松林园 2021-04-07

·串行通信接口标准经过使用和发展,目前已经有几种,都是在RS-232标准的基础上经过改进而形成的.所以,RS-232C为主来讨论.RS-323C标准是美国EIA(电子工业联合会)BELL等公司一起开发的1969年公布的通信协议,它适合于数据传输速率在020000b/s范围内的通信.这个标准对串行通信接口的有关问题,如信号线功能,电器特性都作了明确规定.由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用.



RS-232C标准(协议)的全称是EIA-RS-232C标准,其中EIA(Electronic Industry Association)代表美国电子工业协会,RS(ecommeded standard)代表推荐标准,232是标识号,C代表RS232的最新一次修改(1969),在这之前,RS232B,RS232A,它规定连接电缆和机械,电气特性,信号功能及传送过程,常用物理标准还有有EIA�RS-232-C,EIA�RS-422-A,EIA�RS-423A,EIA�RS-485,这里只介绍EIA�RS-232-C(简称232RS232).例如.目前在IBM PC机上的COM1,COM2接口,就是RS-232C接口.


RS232电气特性:

EIA-RS-232C对电器特性,逻辑电平和各种信号线功能都作了规定,TxDRxD:

逻辑1(MARK)=-3V~-15V

逻辑0(SPACE)=+3~+15V,

      

RTS,CTS,DSR,DTRDCD等控制线上:

                              

信号有效(接通,ON状态,正电压)=+3V+15V

                              

信号无效(断开,OFF状态,负电压)=-3V-15V


以上规定说明了RS-323C标准对逻辑电平的定义,对于数据(信息码):逻辑”1”的电平低于-3V,逻辑“0”的电平高于+3V.对于控制信号,接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V,电路可以有效地检查出来,介于-3+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在±(315)V之间


·RS232原来是基于共用电话网的一种串行通信标准,推荐的最大电缆长度为15M,即传输距离一般不超过15M. 

·不仅要使用正负极性的双电源,而且与传统的TTL数字电路的逻辑电平不兼容,二者必须使用电平转换.

·RS232标准的电气特性参数()

·常见的电平转换器件为1488,1489,MC1488由三个与非门和一个反相器组成,通过它们可以将四路TTL电平转换为RS232C电平,需要正负15V12V双路电源,适用于数据发送.MC1489是四个带控制门的反相器,可以将RS232电平转换为TTL电平,只使用单一的5V电源.适用于信号的接收.


·EIA-RS-232C与TTL转换:EIA-RS-232C是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同.因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换.


电平转换芯片

单一+5V供电的RS232收发芯片

·MC1488/1489是功能单一的发送,接收器,所以双向数据传输中各端都要使用这两个器件,此外又必须同时具备正负两组电源,在很多场合下显的不方便.

·为此,推出了只用单一电源且具有发送/接收功能的RS232收发器.内部集成了电压变换器,可以转换电平.

·由于RS-232C并未定义连接器的物理特性,因此,出现了DB-25,DB-15DB-9各种类型的连接器,其引脚的定义也各不相同,下面分别介绍两种连接器。

·DB-25:PCXT机采用DB-25型连接器,DB-25连接器定义了25根信号线,分为4组:

·异步通信的9个电压信号(含信号地SG)2,3,4,5,6,7,8,20,22

·②20mA电流环信号 9(12,13,14,15,16,17,19,23,24)

·6(9,10,11,18,21,25) ·保护地(PE)1,作为设备接地端(1)


AT机及以后,不支持20mA电流环接口,使用DB-9连接器,作为提供多功能I/O卡或主板上COM1COM2两个串行接口的连接器,只提供异步通信的9个信号,DB-25型连接器的引脚分配与DB-25型引脚信号完全不同,因此,若与配接DB-25型连接器的DCE设备连接,必须使用专门的电缆线

RS232C的接口信号




经常使用的一种接法是将一个串口组成一个信号发射回路,将发送的信息从同一串口的接收端接入.这样可以验证我们所期望的对串口的操作是否正确.这时候,串口并不知道这些信息是来自自己的发送端………………………….



串口调试中要注意的几点:

串口调试时,准备一个好用的调试工具,如串口调试助手,串口精灵等, 强烈建议不要带电插拨串口,插拨时至少有一端是断电的,否则串口易损坏.

信号时序


·RS-232所使用的电缆通常有每英尺40~50pF的分布电容,该标准规定最大电容量为2500uF,所以其传输距离只能局限于15M,(50英尺),传输速率上限只有20kb/s,由于采用非平衡传输方式,接地问题特别重要,当传输电缆两边存在较大的地电位差时,使逻辑01之间的实际过渡区变窄,有可能造成逻辑电平的误判. 

·RS232需要较高的正负电源,有正负3V的盲区,虽然抗干扰能力较强,但消耗的电源功率较大.

·根据RS232的各种不足,又推出了各类标准,RS-422/423/485.

RS232通讯协议基本结构

·波特率 9600 bit/s8bit,1位停止,无校验位 
格式
0EBH,地址,命令,长度(n),数据1---数据n,冗余 
说明:
0EBH为帧起始位 
冗余
=地址+命令+长度+1+---+数n 
如果冗余
=0EBH,为防止与帧起始位相同,则发送反码,即冗余=14H
当接收正确时,
在命令
1256时,回送 0EBH,地址,命令,01H0FAH,冗余,并执行命令,或回送相应信息。
当接收不正确时, 
1) 地址正确,冗余不正确,回送0EBH,地址,命令,01H0F5H,冗余。
2) 地址不正确,不回送任何信息。


奇偶校验

串行数据在传输过程中,由于干扰可能引起信息的出错,例如,传输字符'E’,其各位为:
01000101=45H
D7 D0
由于干扰,可能使位变为1,这种情况,我们称为出现了“误码”。我们把如何发现传输中的错误,叫“检错”。发现错误后,如何消除错误,叫“纠错”。
最简单的检错方法是“奇偶校验”,即在传送字符的各位之外,再传送
1位奇/偶校验位。可采用奇校验或偶校验。
奇校验:所有传送的数位(含字符的各数位和校验位)中,“
1”的个数为奇数,如:
1 01100101
0 0110
0001
偶校验:所有传送的数位(含字符的各数位和校验位)中,“1”的个数为偶数,如:
1 01000101
0 0100
0001

奇偶校验能够检测出信息传输过程中的部分误码(1位误码能检出,2位及2位以上误码不能检出),同时,它不能纠错。在发现错误后,只能要求重发。但由于其实现简单,仍得到了广泛使用。
有些检错方法,具有自动纠错能力。如循环冗余码(
CRC)检错等。

流控制在串行通讯中的作用


·这里的“流”, 指的是数据流.数据在两个串口之间传输时,常常会出现丢失数据的现象,或者两台计算机的处理速度不同,如台式机与单片机之间的通讯,接收端数据缓冲区已满,则此时继续发送来的数据就会丢失.现在我们在网络上通过MODEM进行数据传输,这个问题就尤为突出.流控制能解决这个问题,当接收端数据处理不过来时,就发出“不再接收”的信号,发送端就停止发送,直到收到“可以继续发送”的信号再发送数据.因此流控制可以控制数据传输的进程,防止数据的丢失. PC机中常用的两种流控制是硬件流控制(包括RTS/CTSDTR/CTS)和软件流控制XON/XOFF(继续/停止). 

·下面分别说明:

硬件流控制

·硬件流控制常用的有RTS/CTS流控制和DTR/DSR(数据终端就绪/数据设置就绪)流控制.
硬件流控制必须将相应的电缆线连上,用RTS/CTS(请求发送/清除发送)流控制时,应将通讯两端的RTS,CTS线对应相连,数据终端设备(如计算机)使用RTS来起始调制解调器或其它数据通讯设备的数据流,而数据通讯设备(如调制解调器) 则用CTS来起动和暂停来自计算机的数据流.这种硬件握手方式的过程为:我们在编程时根据接收端缓冲区大小设置一个高位标志(可为缓冲区大小的75%)和一个低位标志(可为缓冲区大小的25%),当缓冲区内数据量达到高位时,我们在接收端将CTS线置低电平(送逻辑0),当发送端的程序检测到CTS为低后,就停止发送数据,直到接收端缓冲区的数据量低于低位而将CTS置高电平.RTS则用来标明接收设备有没有准备好接收数据.
常用的流控制还有还有DTR/DSR(数据终端就绪/数据设置就绪).

软件流控制


·由于电缆线的限制, 在普通的控制通讯中一般不用硬件流控制,而用软件流控制.一般通过XON/XOFF来实现软件流控制.常用方法是:当接收端的输入缓冲区内数据量超过设定的高位时,就向数据发送端发出XOFF字符(十进制的19Control-S,设备编程说明书应该有详细阐述),发送端收到XOFF字符后就立即停止发送数据,当接收端的输入缓冲区内数据量低于设定的低位时,就向数据发送端发出XON字符(十进制的17Control-Q),发送端收到XON字符后就立即开始发送数据.一般可以从设备配套源程序中找到发送的是什么字符.
应该注意,若传输的是二进制数据,标志字符也有可能在数据流中出现而引起误操作,这是软件流控制的缺陷,而硬件流控制不会有这个问题.


·USB通用串行总线是计算机外设接口的发展趋势,将逐渐取代PC机上的RS232协议串口, 很多传统的RS232接口设备都将面临一个向USB接口转换的问题. ·怎样使传统的RS232接口转化为USB接口后直接通过USB总线接入PC?

USB与RS232的特点:

1.USB作为一种新的PC机互连协议,使外设到计算机的连接更加高效,便利.这种接口适合于多种设备, 具有快速,即插即用,支持热插拔的特点, 能同时连接多达127个设备,解决了如资源冲突,中断请求和直接数据通道等问题.

2.而RS232是单个设备接入计算机时,常采用的一种接入方式,其硬件实现简单, 在传统的设备中有很多采用了这种通信方式.


    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多