3.1.11
串口通信设置超时时间
lebai:set_serial_timeout(device, timeout)
- 参数
device
设备名称timeout
超时时间,单位毫秒(ms)。默认800ms
设置波特率
lebai:set_serial_baud_rate(device, baud_rate)
设置串口波特率
- 参数
device
设备名称baud_rate
。串口波特率。默认115200
返回空 或 抛出连接错误
设置奇偶校验位
lebai:set_serial_parity(device, parity)
设置奇偶校验位
- 参数
device
设备名称parity
。奇偶校验位(None: 无奇偶校验; Odd: 奇校验; Even: 偶校验)。默认无奇偶校验位
返回空 或 抛出连接错误
发送数据
lebai:write_serial(device, data)
通过串口发送u8数组
- 参数
device
设备名称data
。待发送的u8数组。
返回空 或 抛出连接错误
接收数据
data = lebai:read_serial(device, len)
通过串口接收u8数组
- 参数
device
设备名称len
。单次接收的最大缓冲长度,可空,默认64字节。
返回u8数组 或 抛出连接错误
示例
local device = "/dev/ttyS1"
lebai:set_serial_baud_rate(device, 9600)
local str = "123"
lebai:write_serial(device, {string.byte(str, 1, #str)}) -- 发送字符串
lebai:write_serial(device, {0x01, 0x02, 0x03}) -- 发送HEX
local data = lebai:read_serial(device)
print(data) -- 打印HEX
print(string.char(table.unpack(data))) -- 打印字符串