Python异或操作和ser.read公司()

2024-09-28 20:45:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在实现一个Python脚本来读取XBee发送的帧。PC将接收帧并进行处理。在

我有一个问题,因为我在XBee中使用AP=2,所以所有帧都可以有转义字符。我想检测它们,并在操作它们之前输入实际值。在

这是我在其中读取转义字节的代码片段:

read = ser.read()
if(toHex(read) != '7d'): #toHex converts a byte in Hex representation
    #escaped char
    read = logical_xor(ser.read(), 20) #you have to take the next character and make xor
#################################
def logical_xor(str1, str2):
    return bool(str1) ^ bool(str2)

但它告诉我str不能在手术中使用。你知道我要怎么解决吗?在

另外,我以前也会像这样一起读四个字节:

^{pr2}$

。。。试着和以前一样(试着得到下一个位置(read[x+1]))但是它告诉我类似的事情。。。在

转换包括将XOR转换为下一个字符和0x20。在

有什么想法吗?在


Tags: 代码脚本read字节serapboolpc