我使用以下命令从Mifare Ultralight标签中读取二进制块:FF B0 00 01 04
但现在我想使用ACR1252 NFC阅读器确定存储在Mifare Ultralight标签中的NDEF消息。我必须使用哪个命令来获取完整的NDEF消息?标签中的哪个位置存储了NDEF消息?
答案 0 :(得分:1)
MIFARE Ultralight标签映射到 NFC Forum Type 2 Tag Operation specification (断开的链接,here is an alternative。因此,为了从这样的标签中提取NDEF消息,您需要关注该规范定义的读取过程。
您已经为读者找到了读取命令:
FF B0 00 BLOCK_NUMBER 10
使用该命令(注意长度字段的值0x10),您将读取从BLOCK_NUMBER
开始的4个连续块。
然后您将首先阅读能力容器(位于第3区):
FF B0 00 03 10
前4个字节(1个块)是能力容器:
0xE1
,表示该标签使用遵循NFC论坛类型2标签操作规范的NDEF映射。一旦确认标签符合NDEF映射规范,就可以从块4开始读取数据(您已经使用上述命令读取了块4-6)。这些块包含TLV结构中的NDEF消息,标记为0x03。有关TLV结构的详细信息,请参阅Writing NDEF data to NTAG216 tag using low-level NFC communication methods。