禁用 ACR122U 上的默认红色 LED

Posted

技术标签:

【中文标题】禁用 ACR122U 上的默认红色 LED【英文标题】:Disable the default red LED on the ACR122U 【发布时间】:2013-08-13 21:17:43 【问题描述】:

我想发送一个 APDU,这样 ACS ACR122U 读卡器(没有卡)上的默认 LED 状态将是没有 LED 亮起。

文档会指出这样的命令将是 FF 00 40 0c 04 00 00 00 00,将红色和绿色的 Final LED State 保留为 0(关闭)。但是,这只是将灯闪烁然后关闭。

这似乎是因为 APDU 进入卡而不是读卡器。但是,也有控制设备参数的伪 APDU。基本上,我知道它没有记录,但有谁知道这样的参数是否仍然存在?或者一些解决方法?

谢谢,高西。

【问题讨论】:

您找到解决此问题的方法了吗?我有同样的问题。 很遗憾没有。我与制造商交谈,他们确认这是不可能的。 :-( 【参考方案1】:

他们在 ACR122U 的API driver manual 中提到了一个转义命令。完成附录中描述的步骤后,我可以使用SDK提供的ACR122U工具在读卡器上没有卡的情况下禁用蜂鸣器(命令:“FF 00 52 00 00”,直接模式)。

我玩弄了上面手册中描述的 LED 控制命令(从 FF 00 40 开始)。我发送的配置都没有对 LED 行为有任何改变。我尝试将其关闭,启用闪烁并切换绿色和红色 LED 的角色。它总是保持不变。我用读卡器上的卡片发送了命令,没有卡片。

【讨论】:

【参考方案2】:

如上所述,没有这样的“解决方案”,但有一种解决方法。

PICC 操作参数的第 7 位用于启用自动轮询,如果该位设置为 0,则阅读器不会驱动 LED。命令 0x51 允许您更改 PICC 操作参数。 当然,读卡器不会轮询禁用第 7 位的卡,但这可以通过 PICC 直接传输命令(0x00 - 参见 ACR API 手册 2.02 中的第 6.1 节)直接与 PN532 芯片通信来克服。

通过直接传输,您可以发出 PN532 命令“InAutoPoll”,这将使芯片进入轮询模式,但不要理会 LED,因为它们是阅读器的一部分,而不是 PN532 芯片的一部分。

然后可以使用 PICC LED 和驱动器命令 (0x40) 将 LED 和蜂鸣器设置为您想要的任何值。

PN532 芯片命令可在位于here 的 NXP 用户手册中找到。

ACR122 PICC 通信协议将 PN532 命令封装在 CCID 标头中。 如果您使用的是 libnfc,则使用 LIBNFC_DEBUG_LEVEL=3 运行您的应用程序,您将能够监控数据交换。

【讨论】:

【参考方案3】:

实际上,“完整”的答案是发送“FF 00 52 00 00”关闭蜂鸣器,发送“FF 00 52 FF 00”重新打开它。

请参阅http://www.acs.com.hk/download-manual/419/API-ACR122U-2.03.pdf 的第 6.7 节

【讨论】:

请考虑在您的答案中添加详细信息,可能是信息来源,这样您的答案就可以独立存在。

以上是关于禁用 ACR122U 上的默认红色 LED的主要内容,如果未能解决你的问题,请参考以下文章

ACR122u卡仿真模式发送PN532指令

如何使用 ACR122U 验证 NTAG213

无法验证具有 7 字节 UID ACR122U 的 NFC 标签

智能卡与 ACR122U 交互

ACR122U - 传输 APDU 时出现 InvalidDeviceStateException

ACR122U NFC 点对点演示不工作