本内容包括RS232、RS485与RS介绍422接口、优缺点、针脚定义,与相关电路相关的集成介绍,验证串口和波特率的质量,STM32的URAT几个与单片机串口调试的小技巧等。紫色文字是超链接,点击自动跳转到相关博客。不断更新,原创不容易!
目录:
1)RS232传输方式 2)RS422/RS485传输方式 3)消除通信线上的共模和差模干扰
1)两者的实物图片 2)检测电路 3)检测结果 4)MCU与设备通信(通过串口芯片或直接连接)
1)集成简介 2)一般应用电路 3)带隔离的RS485电路
1)电路图 2)无源转换原理 3)RS485接口保护电路
1)PL2303连接电路 2)CH431连接电路
---------------------------------------------------------------------------------------------------------------------
EIA-422(过去称为RS-422)是一系列的规定采用4线、全双工、差分传输、多点通信的数据传输协议。它采用平衡传输采用单向/非可逆,有使能端或没有使能端的传输线。和RS-485不同的是EIA-422不允许出现多个发送端而只能有多个接受端。硬件构成上EIA-422(RS-422)相当于两组EIA-485(RS-485),即两个半双工的EIA-485(RS-485)构成一个全双工的EIA-422(RS-422)。
RS-422是差模传输,抗干扰能力强,能传1200米,RS232最多传输15米。
-----------------------------------------------------------
1)RS232电平
逻辑1(MARK)=-3V~-15V
逻辑0(SPACE)=+3~+15V
介于-3V~+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义。
------------------------------
2)RS485、RS422电平
RS485电平和RS422电平由于两者均采用差分传输(平衡传输)的方式,所以它们的电平方式,一般有A、B两个引脚。
发送端AB间的电压差:
+2V~+6V 逻辑1
-2V~-6V 逻辑0
----------------
接收端AB间的电压差:
大于 +200mV 逻辑1
小于 -200mV 逻辑0
----------------
定义逻辑1为B>A的状态
定义逻辑0为A>B的状态
AB之间的电压差不小于200mV。
-----------------------------------------------------------
RS232可做到双向传输,全双工通讯 最高传输速率20Kbps;
RS422只能做到单向传输,半双工通讯,最高传输速率10Mbps;
RS485双向传输,半双工通讯,最高传输速率10Mbps。
----------------
RS232与RS485同为异步数据传输方式,都是用于数字信号的传输,仅仅是传输的方法不同。以传输一个8位二进制数值“01001000”为例说明。
------------------------------
1)RS232传输方式
由于RS232采用三线制传输分别为TXD、RXD、GND,其中TXD为发送信号,RXD为接收信号。
在RS232中任何一条信号线的电压均为负逻辑关系。即:逻辑“1”,为信号线对GND电压为-5~-15V;逻辑“0”,为信号线对GND电压为 +5~+15V。理论上说,当要发送“01001000”这个数据时,在TXD信号线上应该测量到的波形为:
之所以说是理论上,是因为在异步数据传输时,要增加起始位、校验位、结束位。
------------------------------
2)RS422/RS485传输方式
采用4线差分传输,发送数据线为T+\T-,接收数据线为R+\R-。
在RS422总线中:数据“1”以两线间的电压差为+2V~+6V表示;数据“0”以两线间的电压差为-2~-6V表示。理论上说,当要发送“01001000”这个数据时,在T+/T-直接的差值在信号线上应该测量到的波形为:
也就是说,RS232的数据是TXD与GND之间的电压代表数据,而RS422的数据是T+与T-之间的电压代表数据。差分信号抗干扰性强,所以RS422更加适合于远距离传输。
RS485是RS422的半双工版本,即T+/T-与R+/R-不同时存在,传输线只有两根,当发送信号时切换为T+/T-,当接收信号时,切换为R+\R-。至于传输的方式与RS422一致。
------------------------------
3)消除通讯线上的共模和差模干扰
485通信线由两根双绞的线组成,它是通过两根通信线之间的电压差的方式来传递信号,因此称之为差分电压传输。
差模干扰在两根信号线之间传输,属于对称性干扰。消除差模干扰的方法是在电路中增加一个匹配电阻,并采用双绞线;
共模干扰是在信号线与地之间传输,属于非对称性干扰。消除共模干扰的方法包括:
(1)采用屏蔽双绞线并有效接地;
(2)强电场的地方还要考虑采用镀锌管屏蔽;
(3)布线时远离高压线,更不能将高压电源线和信号线捆在一起走线;
(4)采用线性稳压电源或高品质的
开关电源(纹波干扰小于50mV)。
----------------
485总线要采用手拉手结构,而不能采用星形结构。星形结构会产生反射信号,从而影响到485通信。总线到每个终端设备的分支线长度应尽量短,一般不要超出5米。分支线如果没有接终端,会有反射信号,对通讯产生较强的干扰,应将其去掉,最好在RS485设备两头接有120R终端电阻。
采用增加一个RS485分配器。可以有效地将星形连接转换为符合RS485工业标准所规定的连接方式,从而避免产生问题,提
高通信可靠性,如图所示。
----------------------------------------------------------------------------------------------------------------------
电路中常用DB9形式连接,管脚定义为2(RXD)、3(TXD)、5(GND),记忆为2R+3T=5G(2G接收3G发送的值为5G)。因此习惯的把RS232接口叫做DB9。
市场上把公头的接插件叫做DR**,母头的叫DB**,比如我们电脑上的串口,在市场上叫做DR9,不是DB9,很多人都误叫做DB9,实际上的DB9是把两个DR9互相连接在一起的接口。一般在教材或者文章中,大家常常把所有的串口设备接口都统一叫做RS232接口。
------------------------------
由于RS232接口标准出现较早,具有以下特点:
接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。
传输速率较低,在异步传输时,波特率为20Kbps。
接口使用一根信号线和一根信号返回线而构成共地的传输形式,容易产生共模干扰,所以抗噪声干扰性弱。
传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在50米左右。
接收数据的发送数据分开,可以同时接收和发送数据,异步全双工传输。
-----------------------------------------------------------
针对RS232接口的不足,于是就不断出现了一些新的接口标准,RS485就是其中之一,它具有以下特点:
RS485的电气特性:逻辑“1”以两线间的电压差为+(2-6) V表示;逻辑“0”以两线间的电压差为-(2-6)V表示。接口信号电平比RS232降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。
RS485的数据最高传输速率为10Mbps。
RS485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。
RS485接口的最大传输距离标准值为4000英尺,实际上可达3000米,另外RS232接口在总线上只允许连接1个收发器,即单站能力。而RS485接口在总线上是允许连接多达128个收发器。即具有多站能力,这样用户可以利用单一的RS485接口方便地建立起设备网络。
RS485接口组成的异步半双工网络,一般只需二根连线(叫AB线),不接地线,所以RS485接口均采用屏蔽双绞线传输。
-----------------------------------------------------------
-----------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------
1)两者实物图片
------------------------------
2)检测电路
------------------------------
3)检测结果
SP3232EEN比SP232EEN通信波特率要高,SP3232EEN可以在115200及以上;SP232EEN在19200及以下。
------------------------------
4)MCU与设备通讯(通过串口芯片或直连)
-----------------------------------------------------------
-----------------------------------------------------------
由于有的设备是232接口的,有的是485接口的,如果有一台232接口的设备与一台485接口的设备通信,那就需要一个RS232/RS485转换器,把232接口的设备的232信号转换成485信号,然后再与485接口的设备通信。如是两台232接口的设备要进行远距离的通信,那只要加上两个RS232/RS485转换电路就可以了。
市场上所谓的“无源RS232/RS485转换器”采用从计算机串口偷电技术,一般多用于负载少,通信距离短的485总线网络。
而“有源RS232/RS485转换器”在电路原理图与前者差不多,只是电源部分有所改动而己。有源的转换器相互间不共地,比无源的转换器抗干扰性能更好。说明如下。
------------------------------
1)电路图