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