2.13 UART 模块 API 手册#

1. 概述#

K230 内部集成了五个 UART(通用异步收发传输器)硬件模块,其中 UART0 被小核 SH 占用,UART3 被大核 SH 占用,剩余的 UART1、UART2 和 UART4 可供用户使用。UART 的 I/O 配置可参考 IOMUX 模块。

2. API 介绍#

UART 类位于 machine 模块中。

2.1 示例代码#

from machine import UART

# 配置 UART1: 波特率 115200, 8 位数据位, 无奇偶校验, 1 个停止位
u1 = UART(UART.UART1, baudrate=115200, bits=UART.EIGHTBITS, parity=UART.PARITY_NONE, stop=UART.STOPBITS_ONE)

# 写入数据到 UART
u1.write("UART1 test")

# 从 UART 读取数据
r = u1.read()

# 读取一行数据
r = u1.readline()

# 将数据读入字节缓冲区
b = bytearray(8)
r = u1.readinto(b)

# 释放 UART 资源
u1.deinit()

2.2 构造函数#

uart = UART(id, baudrate=115200, bits=UART.EIGHTBITS, parity=UART.PARITY_NONE, stop=UART.STOPBITS_ONE)

参数

  • id: UART 模块编号,有效值为 UART1UART2UART4

  • baudrate: UART 波特率,可选参数,默认值为 115200。

  • bits: 每个字符的数据位数,有效值为 FIVEBITSSIXBITSSEVENBITSEIGHTBITS,可选参数,默认值为 EIGHTBITS

  • parity: 奇偶校验,有效值为 PARITY_NONEPARITY_ODDPARITY_EVEN,可选参数,默认值为 PARITY_NONE

  • stop: 停止位数,有效值为 STOPBITS_ONESTOPBITS_TWO,可选参数,默认值为 STOPBITS_ONE

2.3 init 方法#

UART.init(baudrate=115200, bits=UART.EIGHTBITS, parity=UART.PARITY_NONE, stop=UART.STOPBITS_ONE)

配置 UART 参数。

参数

参考构造函数。

返回值

2.4 read 方法#

UART.read([nbytes])

读取字符。如果指定了 nbytes,则最多读取该数量的字节;否则,将尽可能多地读取数据。

参数

  • nbytes: 最多读取的字节数,可选参数。

返回值

返回一个包含读取字节的字节对象。

2.5 readline 方法#

UART.readline()

读取一行数据,并以换行符结束。

参数

返回值

返回一个包含读取字节的字节对象。

2.6 readinto 方法#

UART.readinto(buf[, nbytes])

将字节读取到 buf 中。如果指定了 nbytes,则最多读取该数量的字节;否则,最多读取 len(buf) 数量的字节。

参数

  • buf: 一个缓冲区对象。

  • nbytes: 最多读取的字节数,可选参数。

返回值

返回读取并存入 buf 的字节数。

2.7 write 方法#

UART.write(buf)

将字节缓冲区写入 UART。

参数

  • buf: 一个缓冲区对象。

返回值

返回写入的字节数。

2.8 deinit 方法#

UART.deinit()

释放 UART 资源。

参数

返回值