EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
UART、RS232、RS422和RS485区别
4 p& i2 d" |" S 串口通讯是硬件工程师经常接触的一个概念,你是否也分不清RS232、RS422、RS485、UART它们之间的关系,每次见到其中的一个,就像见到熟悉的陌生人,虽说认识,却不知道它有什么特点,殊途同归的感觉。* T& @4 o- ~' M; Q: d2 J
先来一段网上比较精辟的总结。' f- I. C0 Y+ i, }* H
公交运行可以简单分成两个部分:, `# k( w# n# c7 _( w) C2 N
1、车站3 M3 o6 P6 K# p0 d/ Q o
2、公路
: V4 g; G2 b6 [" R 其中车站决定了车上装什么(人),怎么发送(班次)等。/ E0 Q& I! F! t) x4 L
当汽车跑在路上,就要遵守公路交通的规则,过桥有过桥的规则,高速有高速的规则,和车站没有关系了。& e* ?3 t/ N/ r; u% M: [ I8 Q
回到串口通讯,其实,UART就相当于车站,而RS232/RS485则对应于公路的规则。
) P# S8 \1 G5 {6 F$ r UART,是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),既然是“器”,显然,它就是个设备而已,要完成一个特定的功能的硬件,它本身并不是协议。那么它要完成什么功能呢?它的最基本功能,是数据收发和串并转换。也就相当于车站,决定装什么人以及怎么样把人装上去。
1 _3 z! ] ^6 B RS232/RS485,是两种不同的电气协议,也就是说,是对电气特性以及物理特性的规定,作用于数据的传输通路上,它并不内含对数据的处理方式。比如,最显著的特征是:RS232使用3-15v有效电平,而UART,因为对电气特性并没有规定,所以直接使用CPU使用的电平,就是所谓的TTL电平(可能在0~3.3V之间)。更具体的,电气的特性也决定了线路的连接方式,比如RS232,规定用电平表示数据,因此线路就是单线路的,用两根线才能达到全双工的目的;而RS485, 使用差分电平表示数据(逻辑“1”为+(2-6)V,逻辑“0”为-(2-6)V),因此,必须用两根线才能达到传输数据的基本要求,要实现全双工,必需用4根线。但是,无论使用RS232还是RS485,它们与UART是相对独立的,但是由于电气特性的差别,必须要有专用的器件和UART接驳(例如MAX232),实现电平转换,才能完成数据在线路和UART之间的正常流动。
- \& h1 d- I% n. u6 ?6 M 总结:从某种意义上,可以说,线路上存在的仅仅是电流,RS232/RS485规定了这些电流在什么样的线路上流动和流动的形式;在UART那里,电流才被解释和组装成数据,并变成CPU可直接读写的形式。
( C7 C' S) R" a+ L0 s- A RS232简介+ L+ |! @0 e- K( z& s
①RS232接口符合由美国电子工业协会(EIA)制定的串行数据通信接口标准。它被广泛应用于计算机串行接口外设连接。5 R, v) l- E; N2 `2 t
②电气特性:RS232接口任何一条信号线的电压均为负逻辑关系。即:逻辑“1”为-3—-15V;逻辑“0”:+3—+15V,噪声容限为2V。即要求接收器能识别高于+3V的信号作为逻辑“0”,低于-3V的信号作为逻辑“1”,TTL电平为5V为逻辑正,0为逻辑负。与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。
# I3 S* i N. V8 j8 P ③接口使用一组收发线构成共地的传输形式,这种传输方式很容易受到共模信号的干扰,因此抗噪声干扰性弱。
; j! F0 ^0 \8 X0 A. E- Q( K ④传输速率较低,传输距离有限,实际应用中只能在15米左右。) w3 k2 m* [2 A. h
⑤RS232常用的3线制连接方式为2、3交叉5直连,即两个接口之间TXD和RXD互联,GND直接连接,其余接口不连接。其余接口连接时起流控作用,这里的“流”指的是数据流。数据在数据线上进行传输难免会出现错误,为了减少错误的发生,某些应用条件下需要流控信号来进行信号传输过程的控制。 e$ W: f5 g3 q: Q L
RS485简介, C4 W# I2 D6 m; S7 b
①在通信距离要求为几十米到上千米时,广泛采用RS485串行通信总线。能达到长传输距离,主要原因是它采用平衡发送和差分接收,具有抑制共模信号干扰的能力。
( R% w6 `( f% u7 c ②电气特性:逻辑“1”以两线间的电压差+2V~+6V表示,逻辑“0”以两线间的电压差-6V~-2V表示。接口信号电平比RS-232-C降低了,就不容易损坏接口电路芯片,且该电平与TTL电平兼容,刻方便与TTL电路连接。
6 V r- X# S9 d" z ③RS-485接口的最大传输距离实际上可达3000米。
7 y9 _7 H8 x( C ④RS-232-C接口在总线上只允许连接一个收发器,即单站能力;而RS-485接口在总线上只允许连接多达128个收发器,即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立设备网络。
3 E2 R3 a% k4 C" A ⑤RS485半双工接法为:RX+和TX+并联为Data+;RX-和TX-并联为Data-。 RS422简介
! D# Y2 ^. U( s9 p ①RS-422标准全称是“平衡电压数字接口电路的电气特性”,它定义了接口电路的特性。实际上还有一根信号地线,共5根线。由于接收器采用高输入阻抗和发送驱动器比RS232更强的驱动能力,故允许在相同传输线上连接多个接收节点,最多可接10个节点。一个主设备(Master),其余为从设备(Slave),从设备之间不能通信,所以RS-422支持点对多的双向通信。接收器输入阻抗为4k,故发端最大负载能力是10×4k+100Ω(终接电阻)。
" S) f! ?# W0 {" p ②电气特性:RS422的电气特性与RS485完全一样。主要区别:RS422有4根信号线:两根发送(TXD+、TXD-)、两根接收(RXD+、RXD-)。由于RS-422的收与发是分开的所以可以同时接收和发送(全双工)。% g. J% p% j+ B: `1 T
RS232/RS485/RS422三者间的区别5 X! c8 J+ G& g& B5 b' v7 `
1、RS232是全双工的,RS485是半双工的,RS422是全双工的。
* b y' r! ]( |" V; o' [ 2、RS485与RS232仅仅是通讯的物理协议(即接口标准)有区别,RS485是差分传输方式,RS232是单端传输方式,但通讯程序没有太多的差别。' R+ O- n* q3 m1 t! R |2 F4 U% H
PC机上已经配备有RS232,直接使用就行了,若使用RS485通讯,只要在RS232端口上配接一个RS232转RS485的转换头就可以了,不需要修改程序。
% Z/ {' _( r- F0 e! p. L
) Q5 T3 T5 d. ~8 b' m |