在使用嵌入式C之前,我已经将R305生物识别模块与微控制器接口。但是当我使用python尝试它时,我在发送十六进制数组时遇到错误。这是我的代码:
import serial
adrport = serial.Serial(port="/dev/tty0",baudrate=9600)
genimg = [0xEF,0x01,0xFF,0xFF,0xFF,0xFF,0x01,0x00,0x03,0x01,0x00,0x05]
我也尝试过这样声明:
genimg = "\xEF\x01\xFF\xFF\xFF\xFF\x01\x00\x03\x01\x00\x05"
我曾经使用以下函数传输上面提到的数组:
txd(genimg)
def txd(tx):
adrport.write(bytearray(tx))
我也尝试使用
adrport.write(bytes(tx))
它没有显示发布回溯的任何错误,但生物识别模块没有响应。
好的,我将serail端口更改为“/ ttyAMA0”&现在我可以看到数据流动。但它也包括“[,]”和逗号“,”;任何人都可以帮忙吗?
终于得到了答案,将数组定义为
genimg = "\xEF\x01\xFF\xFF\xFF\xFF\x01\x00\x03\x01\x00\x05"
并使用了它。
adrport.write(bytes(tx))
注意:我之前也尝试过这种组合,但是因为对数组和函数使用相同的名称而得到了循环迭代错误。我的坏,对不起大家 - ;)