串行通信仅在屏幕后工作

时间:2016-04-08 08:06:00

标签: lua serial-port uart

在使用串行UART接口进行编程时,我注意到了奇怪的行为。首先,我为串行端口设置了正确的波特率。

stty-F /dev/ttyS0 speed 9600

然后我正在和LUA一起阅读:

 rserial=io.open('/dev/ttyS0','r')
 print (Reading)
 repeat
    local line=rserial:read(1)
    if line == "EOD" then
       EOD = true
       rserial:close()
    elseif line then
       lines = lines .. line
    end
 until EOD == true
 print (lines)

Normaly我只得到“?”作为答案。但后来我尝试通过屏幕连接到设备,工作正常。

screen /dev/ttyS0 9600

关闭屏幕连接后,我重试了我的LUA脚本,奇怪的是,突然它工作正常。而不是“?”我收到了“OK”。

现在最后我的问题: 屏幕会改变我不知道的任何配置吗?如果是这样,我如何在LUA中设置它们?我无法弄清楚我错过了什么。 一如既往地谢谢你。 最好的问候。

0 个答案:

没有答案