什么是UART通信?常见的UART串口通信协议有哪些?
什么是UART通信?常见的UART串口通信协议有哪些?
一、什么是UART?
通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART。UART是一种通用串行数据总线,主要应用于串行异步通信。这样的通用串行数据总线属于双向通信,可以实现全双工传输和接收。它将要传输的资料和数据在串行通信与并行通信之间加以转换。作为可以把并行输入信号转化成串行输出信号的集成芯片,[UART串口通信]通常被应用于元器件集成或其他通讯接口的链接。具体实物化表现为一些独立的UART串口通信模块,或作为集成于微处理器中的一些周边固化设备。一般是RS-232C规格的,与类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口。
二、UART无线串口模块通信使用的引脚接口
在UART串口通信中,两个UART模块是可以直接进行相互通信的。发送UART将来自CPU(核心处理器)等控制设备的并行数据转换为串行数据形式,并将将转换得到的串行数据发送到接收的UART,接收UART然后又将串行数据转换回到接收设备的并行数据。数据从发送UART的Tx引脚流向至接收UART的Rx引脚,硬件连接也很简单,只需要连接3条线,如果两个设备UART的高低电平不一致,则需要转换电平后再进行下一步连接。
TX - 数据发送端接口(text)
RX - 数据接受端接口(receive)
GND - 需要保证两设备共地,有统一的参考平面
VCC - 供电引脚,一般是3.3V或3.5V
[](https://springbird3.oss-cn-chengdu.aliyuncs.com/lianxiang/20221022230518.png)
三、UART串口通信协议
UART串口通信指串口按照数位(bit)发送和接收字节。尽管比特字节(byte)的串行通信速率较慢,但是串口可以在使用单线发送数据的同时用另外一根线来接收数据。串口通信协议是指在已经规定了数据包的内容,且内容包含了起始位、主体数据、校验位及停止位,那发送和接收的双方则需要约定一致的数据包格式才能够进行正常收发数据的有关规范。在串口通信中,一般常用的协议包括:RS-232、RS-422和RS-485。
[](https://springbird3.oss-cn-chengdu.aliyuncs.com/lianxiang/20221022230518.png)
一般常用串行通信协议
RS232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用用途非常多,比如连接鼠标、打印机或者Modem,同时也可以连接到工业仪器、仪表。用于驱动以及连线方面的改进,实际应用中RS-232的传输长度或者速度都常常会超过一般标准的标准值。RS-232只限于PC串口和设备间点对点的通信(RS-232串口通信最远距离是50英尺)。
RS422(EIA RS-422-AStandard)是Apple的Macintosh计算机的串口连接标准。RS-232使用非平衡参考地的信号,RS-422则使用差分信号。差分信号传输是使用两根线来进行信号的发送和接收,对比RS-232来说,它具有更优良的抗噪性和更长的传输距离,而在工业应用环境中,这将是一个非常大的优点。
RS485(EIA-485标准)是RS-422改进过后的版本,因为它增加了可用设备的个数,已然从10个增加到32个,并同时定义了在最大设备个数情况下的某些电气特性,来保证可以有足够的信号电压输出。在具有了多个设备的能力基础下,你还可以使用单个RS-485口来进行设备网络建立。RS-485其出色的抗噪性和多设备可用能力,在连向PC机的分布式设备网络的建立、其他数据收集控制器、HMI或者其他操作的工业应用中时,串行数据连接都会选择RS-485。RS-485是RS-422的超级集合,因此所有的RS-422设备实际上都可以被RS-485所控制。此外RS-485还可以用大约4000英尺(超远距离)的线来进行串行数据通信。
四、JTAG
JTAG是联合测试工作组(Joint Test Action Group)的简称,是在名为标准测试访问端口和边界扫描结构的IEEE的标准1149.1的常用名称。此标准用于验证设计与测试生产出的印刷电路板功能。
1990年JTAG正式由IEEE的1149.1-1990号文档标准化,在1994年,加入了补充文档对边界扫描描述语言(BSDL)进行了说明。从那时开始,这个标准被全球的电子企业广泛采用。边界扫描几乎成为了JTAG的同义词。