无法在串行通信(pyserial)中读取数组

时间:2021-07-19 14:35:39

标签: arduino pyserial serial-communication

我正在我的计算机和 teency4.0 之间建立串行通信。 Teency 4.0 以 3 个元素 [0, 30, 40] 的数组形式提供反馈。我的计算机应该读取数组并打印它,但是它显示了错误的元素。 我想确定发送数组的方式和使用pyserial读取数组的方式是否正确.那些是代码和输出。

#teency4.0 从我的电脑获取正确的值。

我的电脑(用pyserial编写)

def sensor_command(m, a, c):
    print("Sensor !")
    values = bytearray([np.uint8(m), np.uint8(a), np.uint8(int(c)//256), np.uint8(c)])
    print(len(values))
    teency.write(values)
    time.sleep(10)
    
    response = bytearray(3)
    teency.readinto(response)

    for val in enumerate(response):
        print(val)

    return response

Teency4.0

void Teency::SendFeedBackToRaspi(){
   sensorInfo[0] = 0;
   sensorInfo[1] = 30;
   sensorInfo[2] = 40;
   Serial.write(sensorInfo, 3);
   Serial.println("Sent feedback to Raspi");
}

从我的电脑输出

Sensor !
4
(0, 112)
(1, 114)
(2, 101)

0 个答案:

没有答案