Arduino Python 3读取串口

时间:2017-07-20 20:57:32

标签: python-3.x arduino-uno

我从Arduino得到温度读数。 arduino还控制2个开关并经历热循环。 我想要做的是记录每个周期的温度。计算机需要知道arduino处于什么“状态”,即,当循环结束时,它可以生成新图形并存储旧数据。 我在想的是在串行打印这样的数组: [温度,状态] 问题是我并不觉得它很优雅。我想知道是否会有来自arduino的触发器,例如,打破一段时间(在图形上打印数据)并生成一个新触发器。

while True: {
  produce new graph
  while arduinoTrigger==false:{
    plot data
  }
}

1 个答案:

答案 0 :(得分:1)

您可以通过从Arduino发送特定字符串来执行此操作,另一方面,检查收到的字符串是否匹配,例如"state change"。否则,将字符串视为温度。这假设温度字符串永远不会是"state change",这可能永远不会发生。

你可以在python实现中使用这样的东西:

while True:
    msg = ser.readline()

    if msg == 'state change':
        # switch to new graph

    else:
        data = int(msg)
        # plot data on current graph