我用<STX>RFID String<EOT>
读了一些RFID标签
我如何将read_until与这个EOT字符一起使用。我尝试过:
serResponse = self.ser.read_until(chr(4))
没有用,超时后我得到了字符串
[编辑]
while True:
for c in ser.read():
line.append(c)
if c == '\n':
print("Line: " + ''.join(line))
line = []
break
如何更改'\ n'以检查EOT或STX字符。
一个标签的print(c)输出: 2 82 51 48 52 50 70 65岁 50 49 65岁 49 4
我以为我可以检查c =='4'或c == 4,但这没用。
答案 0 :(得分:1)
该代码段对我有用,eol作为字节数组,然后一个字节地读入一个字节数组,并检查最后一个字节是否为eol
eol = bytearray([4])
leneol = len(eol)
line = bytearray()
while True:
c = self.ser.read(1)
if c:
line += c
if line[-leneol:] == eol:
break
else:
break