TTL RS-232 RS-485 RS-422

前言

首先需要严重说明的一点是:这些都不是通信协议!!!它们仅仅是关于UART通讯的一个机械和电气接口标准(顶多是网络协议中的物理层),下面会分别介绍。


TTL

TTL(Transistor-Transistor Logic)电平,+5V等价于逻辑“1”,0V等价于逻辑“0”。TTL接口的通信线一般由RX和TX两根线组成。是一对一的,MCU的TTL接口传输距离2-3米,波特率越高传输距离越短。

1)标准TTL

VCC: 5V
TX_H: >=2.4V
TX_L: <=0.5V
RX_H: >=2V
RX_L: <=0.8V

2)LVTTL(Low Voltage TTL)

LVTTL又分为3.3V、2.5V以及更低电压的LVTTL。

3.3V LVTTL

3.3V LVTTL最多见于微控制器(MCU),如STM32。

VCC: 3.3V
TX_H: >=2.4V
TX_L: <=0.4V
RX_H: >=2V
RX_L: <=0.8V

2.5V LVTTL

VCC: 2.5V
TX_H: >=2.0V
TX_L: <=0.2V
RX_H: >=1.7V
RX_L: <=0.7V


RS-232

RS-232也是一对一的,全双工的,对比TTL,RS-232传输距离稍远一点,最大通信距离为15米。RS-232的通信线一般由RX和TX两根线组成。电平逻辑为负逻辑,即逻辑“1”的电平为-3V~-15V,逻辑“0”的电平为+3V~+15V。RS-232一般使用DB9连接器作为物理接口,相关TTL-RS232转换芯片主要是MAXIM(美信)公司的MAX232。


RS-485

RS-485是多对多的,所有485设备通过差分线连接起来,数据的收发不能同时进行,所以是半双工的。RS-485采用差分信号传输,通信线使用两根差分线,即D-/B和D+/A两根线,也可以加一根地线GND增加通信的可靠性。

RS-485传输的逻辑“0”或“1”通过两根线电压的差值来确定,逻辑“1”为2V <= (D+/A - D-/B) <= 6V,逻辑“0”为-6V <= (D+/A - D-/B) <= -2V。

RS-485的最远传输距离为1200M,最大速率为1Mbps,一般使用带屏蔽的双绞线加120R的终端电阻以减小信号噪声。多设备的网络拓扑一般采用终端匹配的总线型结构,不支持环形或星形网络,而且从总线到每个节点的引出线长度应尽量,以便使引出线中的反射信号对总线信号的影响最低。

由于RS-485的数据收发都是靠两根差分线实现的,为了保证数据收发的不冲突,一般485收发器会提供一个控制引脚来控制是收还是发。例如最初的MAXIM(美信)公司的MAX485需要MCU单独的一个GPIO做流控制(控制收发),但是后来MAXIM出了一些自动硬件流控制的485收发器——MAX13487/MAX13488,方便了不少。


RS-422

RS-422其实可以理解成两个RS-485同时使用(博主已实际验证,使用MAX13487收发器),一个负责收,另一个负责发,从而实现全双工。在RS-422中,主机的发送端口和所有从机的接收端口连接,主机的接收端口和所有的从机的发送端口相连,从机之间不能通信,从机只能发送给主机,也只能从主机接收,因此RS-422是一对多的。

RS-422的数据线一共有四根,分别使用发送和接收各两根差分线,即T+\T-和R+\R-,这两组差分线传输数据的电平逻辑与RS-485一样。RS-422的其他电气属性跟RS-485一样,包括最大传输距离、最大速率等,前面说到的MAX13487/MAX13488也是兼容RS-422的。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值