猿问

如下是Python2的代码,向串口发送数据,请问如何改为Python3?

# coding=utf-8import serial

cmd = [0xa5, 0x00, 0x09, 0x0a, 0xcc, 0x33, 0xc3, 0x3c, 0xa6]with serial.Serial('/dev/ttyAMA0', 115200, timeout=1) as ser:    for i in cmd:
        k = chr(i)
        ser.write(k)
    s = ser.read(10)
    print(s)

既然Python2传进去str的是Python3的bytes,为什么我在Python3中将最后要发送的数据转换成bytes后下位机会报错?


慕标5832272
浏览 1085回答 2
2回答

撒科打诨

chr得到的是整数类型。我都是把数改成16进制的字符串,然后发送的数据。发送的都是['a5','00'...]这种。。。不清楚有没有更好的方法。。。
随时随地看视频慕课网APP

相关分类

Python
我要回答