目录
1 UART介绍
1.1 UART特点及问题
UART通用异步收发器,串行、异步通信总线,该总线有两条数据线TX、RX,可以实现全双工的发送和接收,主要用于主机和外设之间通信。
串行通信:一次传输1bit
并行通信:一次传输多bit
单工通信:单向传输
双通通信:双向传输,半双工:不能同时,全双工:可以同时
同步通信:有共同的参考时钟
异步通信:没有共同的参考时钟,以固定波特率传输
波特率:描述串口通信速率,单位bps,即每秒传输的bit数
UART帧格式:
UART硬件连接:
UART通信的问题:
(1)电气接口不统一,UART只对信号时序进行了定义,未定义接口的电气特性,没有连接器标准。
(2)UART一般使用芯片本身的接口电平,不统一可能是TTL电平,3.3V或者1.8V,或者CMOS电平,很难直接连接。
(3)抗干扰能力差,单端传输。
(4)通信距离短,一般只能在板内通信。
因此,一般会使用RS232、RS485接口进行通信。
1.2 UART协议
对UART传输数据的格式帧的详细定义
先发送低位数据在发送高位数据。
具体描述可以参考文章:
最详细的 通讯协议 UART协议 分析在这里 串口,RS232,RS485等总线,内部使用的基本都 UART协议 。 (dreamsourcelab.cn)
2 RS232、RS485基本概念
由于UART协议层的输入是逻辑0/1信号,而逻辑0/1信号在物理层可以通过不同的电平标准来区分。针对不同的通讯需求,便可以使用不同的物理层实现。例如简单的板内通讯,或者常见的设备调试场景,使用简单的LVTTL/TTL电平即可在两个设备间进行UART协议通讯。
通用的串口则使用的是RS232电平,可以增加传输距离,并且抵抗一定程度的信号干扰。付出的成本则是在物理层需要对应的电平转换芯片来实现,发送端需要将内部的高低电平信号转换成电压更高的+/-电压信号,接收端需要将+/-电压信号转换成内部的高低电平信号。
在工业通讯的场景下,为了进一步提高传输距离,以及增强信号的可靠性,一般会采用RS485的电平标准。在发送端将普通的高低电平信号转换成一对差分信号,在接收端将差分信号再转换成普通的高低电平信号。另外,RS485允许总线上连接多达128收发器,而TTL或者RS232则是点对点的连接。
3 RS232、RS485接口标准
RS232/RS485都是TIA/EIA电信电子工业协会建立的串行数据通信接口标准的一种,广泛应用于串行外设接口连接。
3.1 RS232接口标准及特点
3.1.1 RS232的接口标准
TIA/EIA-232-F (RS-232),RS表示是一种推荐的接口标准,除此之外还有很多接口标准。
TIA/EIA-232-F是最古老、最广为人知的DTE/DCE接口标准(1970年)。它是一个完整的标准,规定了串行二进制DTE/DCE接口的机械(连接器)、电气(驱动器/接收器特性)和功能(电路定义)要求。在电气部分,标准规定了不平衡的、单向的点对点接口。驱动器的特点是一个可控制的波特率,这允许电缆被视为一个集总的负载,而不是一个传输线。这是由于驱动器的过渡时间远大于电缆延迟(速度×长度)。驱动器的最大电容负载规定为2500pF。该标准允许高达20 kbps(19.2 kbps)的操作。对于更高的数据率,建议使用TIA/EIA-562或TIA/EIA-423-B。图3说明了一个典型的应用程序,表1列出了主要的电气需求。本标准的主要特点是:
(1)单端的
(2)点对点接口
(3)大型极性驱动器输出摆动
(4)驱动器控制的波特率
(5)完全定义的接口
(6)20 kbps最高数据速率
3.1.2 RS232的接口特点
RS232串口由25帧简化到9帧,现通常使用RX、TX、GND三线,标准连接器是DB9连接器公母头。通常传输大量数据会使用9线,使用较少。
传输信号电压级别:
二进制0:+5 ~ +15 Vdc
(称为“space”或“on”)
二进制1:-5 ~ -15 Vdc
(称为“mark”或“off”)
接收信号电压级别:
二进制0:+3 ~ +32 Vdc
二进制1:-3 ~ -30 Vdc
数据格式:
起始位:二进制0
数据:5、6、7或8位
奇偶校验:奇、偶、mark或
space(不适用于8位数据)
停止位:二进制1,一位或两位
3.2 RS485接口标准及特点
3.2.1 RS485的接口标准
TIA/EIA-485-A是一种电气标准,指定了平衡的驱动器和接收器。它提供了TIA/EIA-422-B的所有优点,并支持多重驱动器操作。TIA/EIA-485-A是目前唯一允许多个驱动器操作的TIA/EIA标准。此协议允许进行多点(派对线)配置。该标准指定了一个双向(半双工)、多点接口。图9说明了一个典型的多点应用程序,表6列出了主要的电气需求。
主要功能有:
(1)平衡接口
(2)多点操作
(3)从单个+5V电源中进行操作
(4)−7V到+12V总线共模范围
(5)最多有32个收发器负载(单位负载)
(6)最大10 Mbps数据速率(@ 40英尺) 15米
(7)最大电缆长度为4000英尺(@ 100 kbps)1500米
3.2.2 RS485的接口特点
RS485并不像RS232一样定义了标准的DB9接口,它并没有定义标准的接口,可以根据具体项目接口要求使用不同连接器。
RS485为复杂的工业环境而设计,和其它UART协议的物理层相比,RS485总线最大的特点就是使用了差分信号传输。信号在发送之前,通过RS485的收发器把单端信号转换成差分信号,再发送到总线上进行传输;同样在接收之前,总线上的差分信号通过收发器的转换变成单端信号再送给UART控制器进行接收。在RS485总线上,如果希望进行全双工的双向通讯,需要两对差分信号线(即4根信号线)。如果只进行半双工的双向通讯,则仅需要一对差分信号即可。
4 RS232、RS485原理图设计
4.1 SIT3232E-RS232收发器应用
3.3V供电,双通道,最高120kbps数据速率。现在器件数据速率一般都会高于接口标准20kbps,很有可能和测试的负载条件有关,假如最高2500pF负载时20kbps,在1000pF时,速率是可以提高的。
4.1.1 特性和功能框图
功能框图:
3.3V供电,两路TTL/CMOS电平转为RS232电平,每路收发器可以单独使用。低功耗,2mA供电电流。
T1IN/T2IN内部没有上拉电阻,未使用的T1IN/T2IN连接VCC或者GND。
4.1.2 引脚定义和电气特性
引脚定义:
具体描述见手册,注意不使用的T1IN/T2IN连接VCC或者GND。
电气特性:电压,电流,功耗
3.3V供电,760mW功耗。如果控制器是1.8V电平UART,不能使用该器件,需要找可以1.8V供电的RS232器件。
4.1.3 总线状态和芯片应用要点
逻辑电平:
注意事项:
(1)3.3V供电,未使用的驱动器输入引脚不要悬空。
(2)RS232收发器相当于电平转换芯片。TX接UART控制器TX。
(3)原理图:
4.2 SIT3485E-RS485收发器应用
3.3V供电,最高数据速率12Mbps,最多允许256个器件连接到总线。功能完全满足 TIA/EIA-485 标准要求的 RS-485收发器。
4.2.1 特性和功能框图
功能框图:
4.2.2 引脚定义和电气特性
引脚定义:
电气特性:电压,电流,功耗
3.3V供电,400mW低功耗器件。
4.2.3 总线状态和芯片应用要点
逻辑电平:
功能表:
注意事项:
(1)典型应用:
(2)原理图:
5 RS232、RS485资料及芯片选型推荐
你学废了吗?
硬件知识分享,喜欢请点赞关注加收藏,如有侵权请联系删除!!!