Arduino Python 3 读串口

Arduino Python 3 Read serial port

我正在从我的 Arduino 获取温度读数。 arduino 还控制 2 个开关并进行热循环。 我想做的是记录每个循环的温度。计算机需要知道 arduino 在什么 "state" 中,即循环何时结束,以便它可以生成新图形并存储旧数据。 我想做的是在序列中打印一个这样的数组: [温度、状态] 问题是我并不真的觉得它很优雅。我想知道是否会有来自 arduino 的触发器,例如,中断一段时间(在图形上打印数据)并产生一个新的触发器。

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

您可以通过从 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