UART概述
简介
- UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的缩写,是通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输。
- UART应用比较广泛,常用于输出打印信息,也可以外接各种模块,如GPS、蓝牙等。
- 两个UART设备的连接示意图如下,UART与其他模块一般用2线(图1)或4线(图2)相连,它们分别是:
- TX:发送数据端,和对端的RX相连;
- RX:接收数据端,和对端的TX相连;
- RTS:发送请求信号,用于指示本设备是否准备好,可接受数据,和对端CTS相连;
-
CTS:允许发送信号,用于判断是否可以向对端发送数据,和对端RTS相连;
图 1 2线UART设备连接示意图
1. 
3. **图 2** 4线UART设备连接示意图<a name='fig1435614171015'></a>
6. 
- UART通信之前,收发双方需要约定好一些参数:波特率、数据格式(起始位、数据位、校验位、停止位)等。通信过程中,UART通过TX发送给对端数据,通过RX接收对端发送的数据。当UART接收缓存达到预定的门限值时,RTS变为不可发送数据,对端的CTS检测到不可发送数据,则停止发送数据。
- UART接口定义了操作UART端口的通用方法集合,包括获取、释放设备句柄、读写数据、获取和设置波特率、获取和设置设备属性。
接口说明
表 1 UART驱动API接口功能介绍
| 功能分类 | 接口名 | 描述 |
|---|---|---|
| UART获取/释放设备句柄 | UartOpen | UART获取设备句柄 |
| UartClose | UART释放设备句柄 | |
| UART读写接口 | UartRead | 从UART设备中读取指定长度的数据 |
| UartWrite | 向UART设备中写入指定长度的数据 | |
| UART获取/设置波特率接口 | UartGetBaud | UART获取波特率 |
| UartSetBaud | UART设置波特率 | |
| UART获取/设置设备属性 | UartGetAttribute | UART获取设备属性 |
| UartSetAttribute | UART设置设备属性 | |
| UART设置传输模式 | UartSetTransMode | UART设置传输模式 |
说明: 本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。
说明:
本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。