为什么我的RFID读取器在Python中输出奇怪的结果?

1 投票
1 回答
517 浏览
提问于 2025-04-17 11:11

我正在使用这个脚本:

import serial

ser = serial.Serial('/dev/ttyUSB0') 
print 'Running..'
while True:
    a=ser.read()      # write a string
    if a is not "":
        print str(a)
        break

ser.close() 

..当我运行这个脚本时,我得到了这个输出:

/Documents/python$ python rfid.py

你可以看到,我得到了一个奇怪的框框,而不是我期待的ID字符串,所以我在想这可能和某种编码有关?补充一下:其实你在这里看不到,但我说的那个框框里面有三个零和一个二,看起来是这样的:

0 0
0 2

1 个回答

1

你看到这个是因为U+0002不是一个可以打印的字符。你从设备那里收到的消息中包含了0x02这个内容;你可以使用od命令来查看脚本输出的整个消息。如果你没有预料到这个情况,那你可能需要确认一下你是否使用setserial命令设置了串口的相关属性。

撰写回答