2012-11-16 43 views
1

我在将数据写入Mifare Ultralight C标记时出现问题。我可以读取它并在部分内存中写入,但似乎它的一部分被阻塞,并且它向我展示IOException“Transceive failed”。我不能写内存位置14-27。似乎块没有被锁定。 我第一次写东西,它工作得很好,但现在我甚至不能格式化标签到Ndef。在Android中使用Mifare Ultralight进行书写 - 内存锁定?

我使用的方法

ultralight.writePage(pageOffset, data); 

我不能上传图片,但希望这有助于说明问题更好(从TagInfo应用程序所采取的信息):

 
ATQA 0x4400 
SAK 0x00 
Memory content: 
00 * 04:4F:BD 7E (UID0-UID2, BCC0) 
01 * 5A:53:28:80 (UID3-UID6) 
02 . A1 48 00:00 (BCC1, INT, LOCK0-LOCK1) 
03 . E1:10:12:00 (OTP0-OTP3) 
04-OF . DATA 
10-27 ? DATA 
28 ?p XX XX -- -- (LOCK2-LOCK3) 
29 ?p XX XX -- -- (CNT0-CNT1) 
2A ?p 28 -- -- -- (AUTH0) 
2B ?p XX -- -- -- (AUTH1) 
2C ?- XX XX XX XX 
2D ?- XX XX XX XX 
2E ?- XX XX XX XX 
2F ?- XX XX XX XX 

任何想法?

感谢

回答

0

页面0x10及以后的锁定字节无法访问,因此如果您不知道身份验证密钥,很难确定发生了什么。你可能做的是覆盖页面0x28,并且超出了第一次写入数据的范围,从而无意中锁定了页面0x14-0x27(也许设置了密码)。一旦页面被锁定,不幸的是你不能解锁它。

+0

也许你是对的,我会期待着,谢谢你们。无论如何,有人可以提供一个解释在Mifare Ultralight C标签中写入简单文本所需的步骤吗?例如:1)写入存储器位置XX,2)修改动态锁定,3)... – Tx33

+0

http://www.nxp.com/documents/application_note/AN1303.pdf关于如何存储NDEF和http://www.nxp.com/documents/data_sheet/MF0ICU1.pdf的命令。然而,Android提供了通过'Ndef'和'NdefFormatable'类存储NDEF的高级访问,并通过'MifareUltralight'类访问低级命令。 –

+0

好的,谢谢,我会阅读第一份文档,我正在阅读NFCForum规范的2型标签。 Ndef和android横梁很容易,但我需要低级别访问MifareUltralight和MifareClassic。 – Tx33

0

也许你已经写了一些错误阻止你,即使你有正确的写密钥写入数据访问位。

相关问题