在 Python 3 中,我导入了 pySerial 库,这样我就可以通过串行命令与我的 Arduino Uno 通信。
它在 Python 2.7 中运行良好,但在 Python 3 中我一直遇到错误,它说这个
类型错误:不支持 unicode 字符串,请编码为字节:’allon’
在 Python 2.7 中,我唯一不同的是使用 raw_input
但我不知道 Python 3 中发生了什么。这是我的代码
import serial, time
import tkinter
import os
def serialcmdw():
os.system('clear')
serialcmd = input("serial command: ")
ser.write (serialcmd)
serialcmdw()
ser = serial.Serial()
os.system('clear')
ser.port = "/dev/cu.usbmodem4321"
ser.baudrate = 9600
ser.open()
time.sleep(1)
serialcmdw()
原文由 Nik Hendricks 发布,翻译遵循 CC BY-SA 4.0 许可协议
将您正在写入串行的数据编码,在您的情况下将“serialcmd”编码为字节。尝试以下操作: