NodeMCU UART,一段时间后没有收到更多数据。怎么调试?

时间:2016-12-31 08:36:10

标签: serial-port uart nodemcu

我已经将一个简单的传感器连接到我的NodeMCU,它每半秒发送一次由回车终止的数据。一段时间后(30分钟 - 5小时),不再传输数据。它不再起作用,但不会崩溃,因为其余的代码仍在工作。

我尝试重新启动设备或重置UART,但在一段时间后没有收到更多数据,但这不起作用。只有当我关闭/打开电源时,它才能正常工作。

由于我使用的是uart.alt,这很难调试,我没有办法调试/修复我的问题。我还用Raspberry Pi对传感器进行了测试,这里它完美无缺,并且不会停止传输。

读取UART的主要代码如下:

local capture = function(data)
  local number = tonumber(data)
  if number ~= nil and number ~= 0 then
    pm25 = number
  end
end

local start = function()
  tmr.alarm(4, 10000, tmr.ALARM_SINGLE, function()
    print("start uart")
    uart.alt(1)
    uart.setup(0, 9600, 8, uart.PARITY_NONE, uart.STOPBITS_1, 0)
    uart.on("data", "\n", function(data)
      capture(data)
    end, 0)
  end)
end

有人知道如何解决或调试这个吗?

最好的问候。

0 个答案:

没有答案