我正在使用pynfc读取NFC标签。我有一个ACR 122U USB NFC读写器。当它读取标签时,该装置能够发出声音,但是我无法在pynfc文档中找到任何有关对其进行控制的信息。 pynfc,某些其他python或linux OS是否可以调用NFC阅读器的声音?
答案 0 :(得分:1)
以下是蜂鸣器蜂鸣的示例:
在第75行的pynfc/__init__.py
处添加以下代码。(在def poll之上,以相同的缩进量显示)
def buzz(self):
ba = (c_ubyte * 9)(*[0xFF,0x00,0x40,0x00,0x4C,0x10,0x00,0x01,0x01])
result = nfc.nfc_initiator_transceive_bytes.argtypes[3]._type_()
nfc.nfc_initiator_transceive_bytes(self.pdevice, ctypes.byref(ba), len(ba), ctypre.byref(result),2,1000)
从脚本中调用nfc.buzz()。
我没有用于测试代码的设备。另外请注意,您不能同时轮询和嗡嗡声。
答案 1 :(得分:0)
对于nfcpy
,我发现如果on-connect
函数返回True
,则蜂鸣器将响起,并且如果阅读器有能力,指示灯将熄灭。
#!/usr/bin/python
import nfc
import time
import datetime
def on_connect(tag):
print('Last read: {}'.format(datetime.datetime.now()))
return True
while True:
with nfc.ContactlessFrontend('usb') as clf:
clf.connect(rdwr={'on-connect': on_connect, 'beep-on-connect': True})
time.sleep(1)