我正在尝试使用PySerial将数据写入第一个串行端口COM1。
import serial
ser = serial.Serial(0)
print (ser.name)
ser.baudrate = 56700
ser.write("abcdefg")
ser.close()
应该有用的。但是,我需要不断地发送28字节的整数;以
255 255 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
在循环中,每个整数使用一个字节的数据。
正在尝试:
import serial
ser = serial.Serial(0)
print (ser.name)
ser.baudrate = 56700
while True:
ser.write(255 255 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000)
ser.close()
引发一个Syntax Error
。
如果^{
这里有very little in the documentation for the class ^{
我从来没有用过pySerial,但是看看上面的文档,你也可以发送字节。 所以请看一下:https://docs.python.org/3.1/library/functions.html#bytes
首先,编写
123 12 123 123 123
不是有效的Python语法。用整数创建一个列表或元组:
values = (1,2,3,4,5)
现在,我们需要将该数据转换为表示我们的值的二进制字符串。
我们是怎么做到的
根据每个数字要使用的字节数,需要对它们进行不同的打包。请参阅此处的文档:https://docs.python.org/3/library/struct.html
为此,我经常使用的习惯用法(从字节值列表中生成字符串)是:
如果你从一个空格分隔的数字列表开始,你可以疯狂地使用:
你可能猜到我喜欢地图。使用lambda函数更有趣!
相关问题 更多 >
编程相关推荐