如何使用MIFARE 1k classic在多个块上编写NDEF记录?

时间:2012-07-31 21:42:22

标签: c# nfc mifare ndef

我在C#中编写了一个将NDEF记录写入MIFARE 1k标记的应用程序。我使用ACR122非接触式读卡器发送APDU命令。

我想写的记录是URI类型,它需要很长,以便我的问题开始。

到目前为止,我能够写入我想要的任何块,但我只能读取第一个扇区中写入的内容(块4,5和6)。块8和9(第二扇区)具有内容但无法读取。

由于我无法写入扇区块,因此我从第6块跳转到第8层。所以,我不确定是否必须设置一个字节,指示该消息在另一个块上继续。

有什么想法吗?

我使用我的android nfc enable来阅读消息......

1 个答案:

答案 0 :(得分:4)

有关如何在MIFARE Classic标记中写入和读取NDEF消息的完整文档已公开,请参阅http://www.nxp.com/documents/application_note/AN1304.pdfhttp://www.nxp.com/documents/application_note/AN1305.pdf

您的案件必须做的事情归结为:

  1. 在扇区0(= MIFARE应用程序目录)中写入将存储NDEF消息的扇区
  2. 将NDEF TLV的字节写入这些扇区的数据块。
  3. 无需向包含NDEF数据的数据块添加任何管理数据。但是要小心,正确配置不同的扇区尾部块,否则将无法正确检测到NDEF消息。