我正在尝试通过 xbee 从 pc 向 arduino 发送一些数据。
我有一个测试包,我知道它做得很好,它是:
7E 00 7D 33 10 01 00 7D 33 A2 00 40 69 76 DD FF FE 00 00 01 52 B8 DA 41 1A
如果我使用:
ser.write(b'\x7E\x00\x7D\x33\x10\x01\x00\x7D\x33\xA2\x00\x40\x69\x76\xDD\xFF\xFE\x00\x00\x01\x52\xB8\xDA\x41\x1A')
我的数据包到达 arduino。
但现在我想通过命令行传递这个数据包。就像是:
python test.py '\x7E\x00\x7D\x33\x10\x01\x00\x7D\x33\xA2\x00\x40\x69\x76\xDD\xFF\xFE\x00\x00\x01\x52\xB8\xDA\x41\x1A'
每次我想都可以通过这种方式更改数据。
我试过:
ser.write(sys.argv[1])
ser.write(sys.argv[1].encode('ascii'))
和其他尝试但总是失败。
关于我必须如何传递数据的任何想法?我认为问题与 ser.write 中的初始 b 有关...
我正在使用 python 2.6 或 2.7 ...不是 3。