首页 > 新闻资讯 > 新闻详情

什么是USART串口通信协议?和UART协议有什么区别

IC先生 IC先生 1950 2023-03-06 16:37:39

通用异步接收器/发送器 (UART) 协议是可用于嵌入式系统的最简单的2线协议之一,一般会在开发板上看到,以便用户可以与笔记本电脑连接并为芯片提供配置命令。此外,UART协议有一个变体,称为通用同步/异步接收/发送器(Universal Synchronous/Asynchronous Receiver/Transmitter),简称USART。

USART是使设备能够使用串行协议进行通信的硬件,它可以在较慢的异步模式下运行,即UART,或者在具有时钟信号的较快同步模式下运行。如今,USART在消费类PC中不再常见,但仍在工业设备和嵌入式系统中使用。

USART串口通信协议

异步和同步串行通信

在串行通信中,每一位数据在传输线上一次发送一个。这是一个串行通信接口。如果发送方和接收方不同意如何发送数据,例如每个位的顺序和时间长短,那么数据就会变成乱码,它们将无法理解对方。异步和同步是标准化串行数据发送方式的两种不同方式。

1、异步串行数据

在异步模式下,只有一根数据线用于将数据从发送器发送到接收器。从发送方到接收方没有共享同步信号。因此,接收方无法知道数据到来的速度有多快或多慢。为了避免这种情况,发送方和接收方都必须事先手动配置为使用相同的数据速率。常见的共享波特率为每秒9,600位。

即使共享相同的比特率,设备也可能会略微不同步。因此,每个数据包都添加了额外的位以确保可靠传输。几乎总是添加起始位和停止位来指示每个数据包。通常情况下,还会添加一个奇偶校验位来指示小错误,添加这些额外的位会导致异步通信效率降低。

以下是一些异步串行协议示例

  • RS-232
  • RS-485

异步串行数据

2、同步串行数据

在同步模式下,数据和时钟线用于发送数据。控制器发送时钟信号,以相同的数据速率同步控制器和外设。由于时钟信号使设备保持同步,因此无需提前配置两个设备即可使用相同的比特率。

使用时钟信号也消除了对额外起始位和停止位的需要,所有的数据都可以不间断地连续发送。它还可以实现更快的比特率,因为发送方无需担心接收方能否跟上同步或不同步。

以下是一些同步协议示例

  • 串行外设接口
  • 内部集成电路
  • 控制器局域网

USART的应用

现今USART不再普遍用于台式计算机,但它们仍然大量用于工业和嵌入式设备。

过去,USART在台式机中很常见,它会控制串口。串行端口通常是计算机背面的DB9连接器。串行端口用于连接调制解调器、鼠标和其他外围设备。随着具有自动配置和即插即用功能的更快USB标准的推出,串行端口不再使用,而最新的台式机不再包含串行端口。

然而,USART在嵌入式和工业系统中仍然很常见,许多控制系统仍然使用串行通信来控制设备,例如可编程逻辑控制器;机器人技术以及供暖、通风和空调系统。此外,USART也是大多数微控制器的一部分,用于与外围系统通信。物联网设备可能有一个USART来与其他设备通信。

USART的应用

USART和UART的区别

USART 是附加到不同专用设备的协调电路,这些适合于改变顺序结构中的并行信息。USART的数据速率通常很高,因为它创建时钟数据或数据。USART适合在注入时序信息的切换请求中指挥整个过程,并据此创建信息的并行类型。在USART中,接收器不必知道发送器的波特率,因为它是从主机提供的信息线和时钟信号中获得的。

UART是一种大型集成小工具,旨在处理顺序信息的传输。它位于以并行结构处理信息的框架和以另类顺序结构处理信息的小工具之间的中心。与USART相比,UART提供较低的数据传输速度。没有与信息相关的接近时钟信号,因此接收方必须在开始采集之前知道发送方的波特率。在UART中,数据时钟在微控制器内部生成,并使用起始位转换与数据流同步。

下表格是USART和UART之间的主要区别,可以参考看看:

USART UART
1 使用半双工模式。 使用全双工模式。
2 速度超过UART的速度。 UART的速度相对较低。
3 USART使用数据信号和时钟来实现其功能,信号计数包括:Tx、Rx、XCK(时钟)和 XDIR(方向)。 UART仅需要数据信号才能发挥作用。
4 数据以块的形式传输。 数据以字节的形式传输(一次一个字节)。
5 可以像UART一样执行其功能。 不能像USART那样发挥其功能。
6 设计比UART更复杂。 UART在设计方面很简单。
7 接收器不必知道发送器的波特率,因为它是从主机提供的信息线和时钟信号中获得的。 由于没有与信息相关的临近时钟信号,因此接收方必须在开始采集之前知道发送方的波特率。
8 在USART中,数据以一定的速率传输(由XCK引脚上的时钟脉冲流定义)。 在UART中,数据可以以可变速度传输(在发射器和接收器之间指定)。

将USART作为UART运行

其实,UART通信可以在USART接口中实现,这就是为什么在较大的微控制器中常见USART连接而不是UART连接的原因,因为UART是通过USART接口实现的。

就固件中发生的事情而言,这种类型的功能可能会集成到设备库中,并将在其中一个头文件 (.h) 中配置一个静态变量。只要提前知道外设所需的波特率,那么带有USART接口的发送器就可以实现UART。发送器只需形成标准UART消息中使用的相同消息格式。

一旦配置为异步模式,发送设备将不会随数据流发送时钟或方向信号。就硬件中发生的事情而言,两者在寄存器级别是兼容的,唯一的区别就是时序。并且,Rx和Tx线路仍将用于外设和主机之间的通信。

当使用Cadence的OrCAD中最好的PCB设计功能集时,可以使用UART和USART协议设计嵌入式系统。众所周知,OrCAD是业界最好的PCB设计和分析软件,其实用程序涵盖原理图捕获、PCB布局和布线以及制造。

总结

低速串行收发器是可用于嵌入式系统的最简单的组件之一,目前许多组件会集成一个串行接口,例如UART、USART、SPI、I2C或CAN,以实现芯片到芯片的通信或芯片到用户的通信。这些协议使用的信号数量少,信令格式简单,很容易通过接口转换芯片、固件、软件或计算机上的终端应用程序转换成其他协议。

推荐商品
RC0402JR-0710RL
库存:0
¥ 0.00251
RC0402FR-0747KL
库存:10000
¥ 0.00189
TMK316BJ475KL-T
库存:0
¥ 0.1974
C1608X7R1H334KT000E
库存:0
¥ 0.189
C1812C154J1GAC7800
库存:0
¥ 28.25
版权声明: 部分文章信息来源于网络以及网友投稿,本网站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性,如本站文章和转稿涉及版权等问题,请作者及时联系本站,我们会尽快处理。
标题:

什么是USART串口通信协议?和UART协议有什么区别


网址: https://www.mrchip.cn/newsDetail/1907
文章标签: 协议
0 购物车
0 消息