嵌入式C语言学习进阶系列文章
GUN C编译器拓展语法学习笔记(一)GNU C特殊语法部分详解
GUN C编译器拓展语法学习笔记(二)属性声明
GUN C编译器拓展语法学习笔记(三)内联函数、内建函数与可变参数宏
数组存储与指针学习笔记(一)数据类型与存储、数据对齐、数据移植、typedef
文章目录
一、定义
通用异步收发传输器UART(Universal Asynchronous Receiver/Transmitter)。是一种串行、异步、全双工的通用数据通信协议。其特点是通信线路简单,只需要一对TX、RX的传输线即可实现双向通信,根据约定时序进行传输,但是相对而言传输速率不高。其衍生实体如基于TTL的UART通讯、基于RS232的UART通讯以及基于RS485的UART通讯等。
注:
USART是一个串行通信设备,可以灵活地与外部设备进行全双工数据交换。USART是指单片机的一个端口模块,可以根据需要配置成同步模式(增加了同步时钟),也可以将其配置为异步模式,后者就是UART。所以说UART姑且可以称之为一个与SPI,I2C对等的“协议”,而USART则不是一个协议,而是更应该理解为一个实体。
二、数据协议
2.1 电气连接形式
UART通信协议包含两根数据线分别为RX、TX,两个UART通信设备通信过程交错连接,实现全双工独立通信。双方通信设备通过约定好波特率、起始位、校验位、停止位等核心配置参数,实现数据传输。