UART概述

简介

  • UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的缩写,是通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输。
  • UART应用比较广泛,常用于输出打印信息,也可以外接各种模块,如GPS、蓝牙等。
  • 两个UART设备的连接示意图如下,UART与其他模块一般用2线(图1)或4线(图2)相连,它们分别是:

    1. TX:发送数据端,和对端的RX相连;
    2. RX:接收数据端,和对端的TX相连;
    3. RTS:发送请求信号,用于指示本设备是否准备好,可接受数据,和对端CTS相连;
    4. CTS:允许发送信号,用于判断是否可以向对端发送数据,和对端RTS相连;

      图 1 2线UART设备连接示意图

  1. ![](/projects/openharmony-1.0-zh-cn/driver/figures/zh-cn_image_0000001053926237.png)
  2. **图 2** 4线UART设备连接示意图<a name='fig1435614171015'></a>
  3. ![](/projects/openharmony-1.0-zh-cn/driver/figures/zh-cn_image_0000001054007499.png)
  • 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设置传输模式

UART概述 - 图1 说明: 本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。