学物联网,来万物简单IoT物联网!!
UART 介绍
- 模块功能:
UART通过串行异步收发通信
接口说明
UART - 构建UART对象
- 函数原型:UART(id, baudrate,bits, parity,stop, tx, rx)
- 参数说明:
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
id | int | Y | uart通道,可为0或1 |
baudrate | int | N | uart 波特率 例如:9600、115200 等 默认:115200 |
bits | int | N | 数据位长度 例如:5、6、7、8 默认为8 |
parity | enum | N | 奇偶检验位 例如:None、Odd、Even |
stop | int | N | 停止位长度 例如:1、2 默认为1 |
tx | object | N | 发送引脚对象 |
rx | object | N | 接收引脚对象 |
- 返回值:
构建的UART对象。
read - 从UART接收指定字节数的数据
- 函数原型:read(size)
- 参数说明:
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
size | int | Y | 读取指定字节长度数据 |
- 返回值:
buffer - 读取的数据区,长度为参数size
write - 从UART发送指定字节数的数据
- 函数原型:write(buffer)
- 参数说明:
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
buffer | array[] | Y | 发送数据的缓冲区,期待发送的字节数为buffer的长度 |
- 返回值:
无
any - 用于检测当前接收缓冲区是否有数据
- 函数原型:any()
- 参数说明:
无
- 返回值:
有数据时返回1,否则返回0 - 案例代码
from machine import UART
import utime
uart =UART(1,baudrate = 115200,bits = 8,parity = None,stop = 1 ,tx = Pin(32),rx = Pin(33))
flag = 0
receiveStr = ''
while True:
flag = uart.any()
if flag>0:
utime.sleep(1)
print(flag)
receiveStr = uart.readline()
uart.write(receiveStr)