- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个 Windows/Java 程序(使用 javax.smartcardio
),以使用 ACR122U 设备(内部带有 PN532 NFC Controller 芯片)与 Jewel/Topaz512 标签(来自 Innovision/Broadcom)进行通信.
我实现了 Topaz512 协议(protocol)(来自 this data sheet ),但只有一半的命令有效。
RID、RALL、READ、WRITE-NE、RSEG
WRITE-E、READ8、WRITE-E8、WRITE-NE8
例如,以下是我发送 WRITE-NO-ERASE 命令时得到的结果:
命令:FF:00:00:00:0C:D4:40:01:1A:7F:42:38:01:9A:00:17:E8
地点:
D4:40:01
是 InDataExchange 命令,1A:7F:42
是 WRITE-NO-ERASE 命令(值:0x42, block 0x0F,字节 7),38:01:9A:00
是 4 字节标签 UID,17:E8
是 CRC。响应:D5:41:00:42:90:00
这里的响应是正确的:0x42
。状态字节 (0x00
) 表明一切顺利。
这是我发送 WRITE-WITH-ERASE 命令时得到的结果:
命令:FF:00:00:00:0C:D4:40:01:53:7F:42:38:01:9A:00:28:6E
地点:
D4:40:01
是 InDataExchange 命令,53:7F:42
是 WRITE-WITH-ERASE 命令(值:0x42, block 0x0F,字节 7),38:01:9A:00
是 4 字节标签 UID,28:6E
是 CRC。响应:D5:41:01:90:00
此处,状态字节 (0x01
) 通知 PN532 检测到超时。 (来自 the PN532 documentation (p67):“超时,目标尚未应答 - 0x01”)
此外,当我删除 PN532 超时(使用 FF:00:00:00:06:D4:32:02:00:00:00
)时,非工作命令不会响应 D5:41:01:90:00
,但等更长时间,然后我没有得到任何回应。
我只是尝试使用 gscriptor(来自 pcsc-tools 套件)执行命令,并且得到了相同的行为。这是我的结果:
脚本:
FF 00 00 00 06 D4 32 05 02 02 02
# SAMConfiguration
FF 00 00 00 04 D4 14 01 00
# SetParameters
FF 00 00 00 03 D4 12 04
# InListPassiveTarget: Jewel mode
FF 00 00 00 04 D4 4A 01 04
# InDataExchange: RID
FF 00 00 00 04 D4 40 01 78
# InDataExchange: RALL
FF 00 00 00 04 D4 40 01 00
# InDataExchange: RSEG 0-3
FF 00 00 00 05 D4 40 01 10 00
FF 00 00 00 05 D4 40 01 10 20
FF 00 00 00 05 D4 40 01 10 40
FF 00 00 00 05 D4 40 01 10 60
##########
# GetFirmwareVersion
FF 00 00 00 02 D4 02
# GetGeneralStatus
FF 00 00 00 02 D4 04
##########
# RFConfiguration: No timeout
FF 00 00 00 06 D4 32 02 00 00 00
# InDataExchange: READ-1
FF 00 00 00 05 D4 40 01 01 7F
# InDataExchange: READ-8
FF 00 00 00 05 D4 40 01 02 00
# InDataExchange: WRITE-E-1
FF 00 00 00 06 D4 40 01 53 7F 42
# InDataExchange: WRITE-E-8
FF 00 00 00 0C D4 40 01 55 02 01 02 03 04 05 06 07 08
# InDataExchange: WRITE-NE-1
FF 00 00 00 06 D4 40 01 1A 7F 42
# InDataExchange: WRITE-NE-8
FF 00 00 00 0C D4 40 01 1B 02 01 02 03 04 05 06 07 08
结果:
Sending: FF 00 00 00 06 D4 32 05 02 02 02
Received: D5 33 90 00
Normal processing.
Sending: FF 00 00 00 04 D4 14 01 00
Received: D5 15 90 00
Normal processing.
Sending: FF 00 00 00 03 D4 12 04
Received: D5 13 90 00
Normal processing.
Sending: FF 00 00 00 04 D4 4A 01 04
Received: D5 4B 01 01 0C 00 38 01 9A 00 90 00
Normal processing.
Sending: FF 00 00 00 04 D4 40 01 78
Received: D5 41 00 12 4C 38 01 9A 00 90 00
Normal processing.
Sending: FF 00 00 00 04 D4 40 01 00
Received: D5 41 00 12 4C 38 01 9A 00 00 10 25 00 00 10 3F
00 01 03 F2 30 33 02 03 F0 02 03 03 E3 D1 01 DF
54 02 65 6E 30 31 32 33 34 35 36 37 38 39 30 30
31 32 33 34 35 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 55 55 AA
AA 12 4C 06 00 01 E0 00 00 00 00 00 00 90 00
Normal processing.
Sending: FF 00 00 00 05 D4 40 01 10 00
Received: D5 41 00 38 01 9A 00 00 10 25 00 00 10 3F 00 01
03 F2 30 33 02 03 F0 02 03 03 E3 D1 01 DF 54 02
65 6E 30 31 32 33 34 35 36 37 38 39 30 30 31 32
33 34 35 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 55 55 AA AA 12
4C 06 00 01 E0 00 00 00 00 00 00 00 00 00 00 00
00 00 47 90 00
Normal processing.
Sending: FF 00 00 00 05 D4 40 01 10 20
Received: D5 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 90 00
Normal processing.
Sending: FF 00 00 00 05 D4 40 01 10 40
Received: D5 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 90 00
Normal processing.
Sending: FF 00 00 00 05 D4 40 01 10 60
Received: D5 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 90 00
Normal processing.
Sending: FF 00 00 00 02 D4 02
Received: D5 03 32 01 06 07 90 00
Normal processing.
Sending: FF 00 00 00 02 D4 04
Received: D5 05 01 00 01 01 00 00 02 80 90 00
Normal processing.
Sending: FF 00 00 00 06 D4 32 02 00 00 00
Received: D5 33 90 00
Normal processing.
Sending: FF 00 00 00 05 D4 40 01 01 7F
Received: D5 41 00 47 90 00
Normal processing.
Sending: FF 00 00 00 05 D4 40 01 02 00
Received:
wrong SW size for:
Sending: FF 00 00 00 06 D4 40 01 53 7F 42
Received:
wrong SW size for:
Sending: FF 00 00 00 0C D4 40 01 55 02 01 02 03 04 05 06
07 08
Received:
wrong SW size for:
Sending: FF 00 00 00 06 D4 40 01 1A 7F 42
Received: D5 41 00 47 90 00
Normal processing.
Sending: FF 00 00 00 0C D4 40 01 1B 02 01 02 03 04 05 06
07 08
Received:
wrong SW size for:
Script was executed without error...
最佳答案
不久前,我对此进行了详细研究,得出的结论是,NXP 的 PN532 NFC Controller 芯片的固件存在问题,导致其无法成功地通过 NFC Forum Type 1 标签(Topaz/Jewel 品牌)收发一些命令。如前所述,ACR122U 基于该芯片。
当我尝试使用WRITE-E8 (0x54)
命令一次写入8字节 block 时,收到的响应是0x01
,等待标签超时回复。
我尝试过但不起作用的事情:
包括 InDataExchange
中的 UID 回显,我什至使用了 UID 回显的字节顺序,结果仍然相同。
使用 inCommunicateThru
命令而不是 InDataExchange
并在应用程序级别计算 CRC1 和 CRC2 值(相同的结果)
我得出的最终结论是:
PN532 无法写入 1 型标签上的 0x10
及更高页面,这使得无法写入 Topaz 512 等流行型号的全部内存范围。
建议:
这个问题与 2012 年相关,当时 Topaz 512 是一款出色的低成本但高内存的 NFC 标签。现在有了 NAG215 和 NTAG216 型号,我建议使用那些具有高内存和与 NFC 读卡器通用兼容性的型号。
关于java - "Time Out, the target has not answered"来自带有 Jewel/Topaz512 NFC 标签的 ACR122U 读卡器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61275660/
Mockito 中这两个声明有什么区别? @Mock(answer = Answers.CALLS_REAL_METHODS) ArrayList mock; @Spy ArrayList spy;
我认为形成这个问题的最好方法是举一个例子......所以,我决定问这个问题的实际原因是因为 Problem 55 on Project Euler 。在该问题中,要求找到 10,000 以下的 Lyc
我编写了代码来计算 QuickSort 中完成的比较次数。 每当对长度为 m 的数组执行快速排序时,该算法都会将比较次数增加 m-1(因为主元将与除自身以外的所有内容进行比较)。 枢轴的选择始终是数组
菜鸟开发人员,对任何非常规代码表示歉意。 我正在做一个简单的测验。一次显示一个问题,单选按钮上有 3 个可能的答案。答案“key”存储在名为 allQuestions 的数组中。 我正在寻找正确的方法
我在使用 Java 的 Sphinx 语音识别库时遇到问题。我正在使用它来获取输入并处理它。我第一次获得输入时,它起作用了。第二次,它在我有机会说话之前立即回答了自己。在那之后,它只是继续回答自己。我
ruby 问题: 我可以缩短以下代码吗: total = Paper.where(available: true).count puts total if total > 0 我想象过这样的事情,但我
进程文件: answers or answers.exe 进程名称: 1-Click Answers 进程类别:存在安全风险的进程 英文描述: an
这question and its answers这里建议两者: 可以使用正则表达式匹配嵌套模式。 这是不可能的,因为嵌套模式不是常规语言,因此 DFA(正则表达式)无法识别它们。 在阅读上述问题的答
我正在尝试实现“算法简介”一书中所述的合并排序算法。尽管实现是按照书中指定的,但输出不正确。很有可能出现相差一的错误,但我无法指出它。有什么指点吗? #include #include #defi
我在我的应用程序中添加了一个新的首选项,以允许用户选择退出分析报告。我在我的应用程序 Crashlytics 和 Fabric Answers 中使用。 我在 onCreate 中有这段代码: if
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
这里是Python新手用户。 我有一个文件,last.txt,我正在从中提取信息,该信息显示美国最常见的姓氏,以及它们以整数/小数形式出现的百分比频率。我希望能够检索三个字母长的姓氏数量并将其分配给答
禁用 Crashlytics 错误报告相对 straight forward. .我还想禁用调试版本的答案。然而, new Crashlytics.Builder().answers(null); 不
我是游戏新手,所以可能是个简单的问题。我想做的是制作一个应用程序,其中包含一个问题和一个用于回答的文本文件。然后,我希望应用程序能够识别答案何时正确(在本例中为数字 25)以及何时错误(不是 25)。
http://piratepad.net/IY48xXzsys (由 Peter West 修改,原文来自此处:http://paulbutler.org/archives/a-simple-diff
我正在使用 Answers (Fabric) 以便在我的应用程序中进行一些分析,但我在 fabric.io 中的 Answers 仪表板遇到问题。当我收到从我的应用程序发送的事件时,我无法看到自定义属
我有一个使用 Crashlytics with Answers 的应用程序。两者都工作正常,我看到正在跟踪框架中内置的事件。 我正在尝试通过在我的 View Controller 中使用以下代码行来添
我正在为调查系统构建数据库。 We have employees that fill in a survey with categories that have questions. The empl
我是 Excel 2003 中的 VBA 新手。我编写了一个包含两个字符串的 UDF:一个过滤器和一个将作为单元格引用的字符串。当我在 VBA 编辑器中调试并连续调用该函数几次时,一切都按我的预期工作
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 3个月前关闭。 Improve th
我是一名优秀的程序员,十分优秀!