UART、RS232、RS485基础知识
一、UART串口通信介绍
UART是一种采用异步串行、全双工通信方式的通用异步收发传输器功能。
硬件电路:
•简单双向串口通信有两根通信线(发送端TX和接收端RX)
•TX与RX要交叉连接
•当只需单向的数据传输时,可以只接一根通信线
•当电平标准不一致时,需要加电平转换芯片
串口通信最重要的参数是端口(com)、波特率、数据位、停止位和奇偶的校验。对于两个需要进行串口通信的端口,这些参数必须匹配,共同遵守,这也是能够实现串口通讯的前提。
二、数据帧格式
起始位:起始位必须是持续一个比特时间的逻辑0电平,标志传输一个字符的开始,接收方可用起始位使自己的接收时钟与发送方的数据同步。
数据位:数据位紧跟在起始位之后,是通信中的真正有效信息。数据位的位数可以由通信双方共同约定。传输数据时先传送字符的低位,后传送字符的高位。
奇偶校验位:奇偶校验位仅占一位,用于进行奇校验或偶校验,奇偶检验位不是必须有的。如果是奇校验,需要保证传输的数据总共有奇数个逻辑高位;如果是偶校验,需要保证传输的数据总共有偶数个逻辑高位。
停止位:停止位可以是是1位、1.5位或2位,可以由软件设定。它一定是逻辑1电平,标志着传输一个字符的结束。
空闲位:空闲位是指从一个字符的停止位结束到下一个字符的起始位开始,表示线路处于空闲状态,必须由高电平来填充。
三、波特率
波特率是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变的次数来表示。
四、RS232协议介绍
UART存在问题
电气接口不统一: UART只是对信号的时序进行了定义,而未定义接口的电气特性抗干扰能力差: 使用TTL电平来表示0和1,抗干扰能力差,数据在传输过程中很容易出错。
通信距离短: 抗干扰能力差,通信距离短。
引入RS232协议
信号: 提高抗干扰能力,增加通信距离,传送距离一般可达到15m。
接口 : 最开始使用的是DB-25连接器,后面IBM将其改为DB-9连接器。现在工业控制的接口一般只使用RXD、TXD、GND三条线。
电平转换: 输出需要用TTL转为RS232电平
五、RS485协议介绍
该标准由电信行业协会和电子工业联盟定义;使用该标准的通信网络能在远距离条件下以及电子噪声大的环境下有效传输信号:该标准允许连接多个收发器,即具有多站能力,这样可以利用单一的RS485接口方便地建立起一个设备网络。
信号: 采用差分信号进行数据传输,两线之间电压差为+2v~+6v为逻辑1,-2v-6v表示逻辑0。
接口 : RS485采用两线制,这种接线方式为总线式拓扑结构,在同一总线上可以同时存在多个节点。 因为采用两线制,数据的发送和接收都要使用这对差分信号线,发送和接收不能同时进行,所以只能采用半双工的方式工作,编程时也需要加以处理。
电平转换: 输出需要用TTL转为RS485电平电平转换芯片
参考:
RS-485通讯协议解析-CSDN博客
UART、RS232、RS485基础知识+硬件知识_uart rs485-CSDN博客
嵌入式通信协议(一)——UART、RS232、RS485_uart rs485-CSDN博客