描述
本文来源电子发烧友社区,作者:xcs101, 帖子地址:
https://bbs.elecfans.com/jishu_2287666_1_1.html一、AIR105有几个UART?AIR105有4个通用异步收发器(UART),支持单向通信、双工通信和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。与DMA配合使用,可以实现高速数据通信。具体引脚分布见图中橙色部分,这里就不再罗列了。
使用LuatOS的同志,有一个需要注意的地方就是系统的log日志打印是通过UART0输出的,
开发板上有个开关可以切换TYPE-C口是直连AIR105的USB口还是CH340N,而CH340N连接的就是UART0。
开发板的
电路图可看附件,理解起来还是很方便的。
二、LuatOS都有哪些串口函数LuatOS的串口操作库中共有11个函数:
-
uart.setup(id, baud_rate, data_bits, stop_bits, partiy, bit_order, buff_size) uart.write(id, data) uart.tx(id, buff, start, len) uart.read(id, len) uart.rx(id, buff) uart.rx_size(id) uart.close(id) uart.on(id, event, func) uart.wait485(id) uart.exist(id) uart.list(max)
复制代码
这里着重介绍下uart.setup(id, baud_rate, data_bits, stop_bits, partiy, bit_order, buff_size)、uart.write(id, data)及uart.read(id, len)的用法。uart.setup函数是用来配置串口的,其参数由前至后分别为:串口号、波特率、数据位、停止位、校验位、大小端、缓冲区大小配置实例:
-
-- 配置为:串口1设备,波特兰115200,数据位8位,停止位1位,无校验uart.setup(1, 115200, 8, 1, uart.NONE)
复制代码
uart.write函数是用来发送数据的,其参数分别为:串口号、数据使用方法如下:
-
-- 用串口1发送“rdyrn”uart.write(1, "rdyrn")-- 用串口1发送16位数据“0x55,0xAA,0x4B,0x03,0x86”uart.write(1, string.char(0x55,0xAA,0x4B,0x03,0x86))
复制代码
uart.read函数是用来发送数据的,其参数分别为:串口号、数据使用方法如下:
-
-- 用串口1读取16个数据uart.read(1, 16)
复制代码
三、总结学习AIR105要用好LuatOS文档,
https://wiki.luatos.com,特别是要熟悉各个API的用法,建议有大神做一个API配置软件,在窗口设置好各类参数后,生成函数,提高开发效率。
打开APP阅读更多精彩内容