串口协议解析,什么是UART、RS232、RS485

UART简介

在嵌入式系统、工控设备及智能硬件通信领域,串口协议凭借其简洁高效的特性,长期占据重要地位。UART 全称Universal Asynchronous Receiver Transmitter,翻译成中文为“通用异步接收器发送器”,是一种通用的串行异步通讯总线。该总线有两条数据线,可以实现全双工的发送和接受。

UART帧格式

起始位(1bit)+数据位(5-9 bit)+校验位(0/1 bit)+停止位(1-2 bit)

数据位:ASCII字符通常用8bit,二进制数可以自定义长度

校验机制:奇偶校验,工业场景中多用无校验

波特率:常见 9600、115200bps,需通信双方严格匹配

硬件连接:TXD接RXD

RS232和RS485

RS232

UART只是对信号的时序进行了定义,而对于接口的电气特性并没有定义:

1. 高电平电压无统一标准:UART 仅规定 “1”“0” 的逻辑含义,未约束电压值。比如有些处理器定义的高电平为5V,而另一些定义的高电平为3.3V;

2. 连接器标准缺失:UART 未定义物理接口形态;

3. 抗干扰能力差,距离短,一般只能用于一块电路板上两个不同芯片的通信;

综上,工程上很少用串口直接通信,需要再电气层做一些补充。由此引出RS232协议和RS485协议。

RS232是由电子工业协会(EIA)制定,常作为设备间(如计算机与外设、工控设备等 )数据传输的物理层协议,该协议规定了一个标准的连接器,规定了尺寸、引脚数量且对每个引脚的作用加以规定,还对信号的电平加以规定。

RS232一般为9根线,我们现在使用RS232时,一般只用3根线,即RXD、TXD和GND。

在232协议中,-3V~-15V定义为逻辑“1”,+3V到+15V定义为逻辑“0”。这样逻辑“1”“0”对于电压的范围都比较宽,例如原本发送的+5V通信过程中收到干扰变成了4.5V,不影响发送的数据,因此可以提高抗干扰能力,增大通信距离,其传输距离一般可达15m。

RS232电平转换

处理器一般会集成UART控制器,但是处理器产生的信号一般都是TTL信号,并不符合RS232的标准,因此一般我们还需要再处理器外部添加电平转换芯片,例如MAX232芯片。

RS485

RS485由电信行业协会和电子工业联盟定义,该标准允许连接多个收发器,一个485总线上可以挂载多个设备。而RS232只能实现点对点的发送。

RS485采用差分信号传输,两线间电压差-2v~-6v表示“0”,+2v~+6v表示“1”。差分信号抗干扰能力更强,因为外界的干扰往往会同时作用到两根线上,而接收端只关心两个信号的差值,所以外界的共模噪声可以被完全抵消,RS485的通信距离可达到1500m。

因为采用两线制,发送和接收都要使用这对差分信号线,发送和接收不能同时进行,所以只能采用半双工。

485电平转换

处理器产生的信号一般都是TTL信号,并不符合RS485的标准,因此一般我们还需要再处理器外部添加电平转换芯片,将TTL信号转换成差分的符合485协议的信号,例如ISO308x系列芯片。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值