我试图解释来自使用PySerial发送超过9600bps的16位整数的中继单元的信号,我无法弄清楚如何格式化响应。
中继应该发送EXC_BAD_ACCESS (code=1, ...)
...等
这就是我为获得价值而做的事情;我只是不知道如何将其格式化为有用的东西:
257[var]257[var]
答案 0 :(得分:1)
您可以使用struct.unpack
将二进制数据转换为Python值。
val = struct.unpack("<h", ser.read(2))[0]
其中<
表示小端,标准大小值,h
表示signed short int
(即&#34;标准大小&#34;模式下的16位有符号值);如果由于某种原因您的设备以大端发送数据,请写>
而不是<
。