pyserial将unicode字符串作为字节数组发送

时间:2016-04-14 02:58:36

标签: python arduino pyserial python-unicode

我正在做一些发送和接收字符串的arduino项目。

它向我发送一个字符串,这是一个以逗号分隔的数字列表,我保存到文件中。 然后我尝试读取文件并以收到它的方式发回字符串。

如果我通过arduino串行监视器执行此操作,这可以正常工作,但我似乎无法通过pyserial以接收方式发送/编码字符串。

我尝试过使用这样的代码:

for b in bytearray("10,20","UTF-8"):
    ser.write(str(b).encode("latin_1"))

ser.flush()

但是没有任何运气可以通过正确的方式发送。

2 个答案:

答案 0 :(得分:2)

假设您正在使用Python 3,您只需使用:

ser.write("10,20".encode())

对于Python 2,我认为字符串可以直接传递给ser.write(),而无需对其进行编码。

答案 1 :(得分:2)

我最终上班的原因是:

if (getFirst().next != null){
   return false;
}