Я новичок в чтении устройств NFC, но мне удалось реализовать в моем собственном проекте код из nfc-mfultralight.c (libnfc).
Чего я не понимаю, так это того, что когда я читаю данные с браслета MIFARE Ultralight, я получаю много мусора.
Например, у меня в теге есть номер 255555574558888 (я использовал Android-устройство, чтобы записать этот номер в тег).
Теперь, когда я бегу:
nfc-mfultralight r /home/user/dump
я понимаю это
d▒r▒!▒ H▒▒U255555574558888▒-67644-67546-2346
Это из примеров libnfc, так не должна ли эта программа просто читать правильные данные? Приложение Android, которое я использую, просто видит значение 255555574558888. Значение -67644-67546-2346 является частью того, что я написал ранее.
Как мне узнать, какие именно данные мне нужно прочитать? Что нужно изменить в коде примера, чтобы он работал корректно?
Я использую ACR122 для чтения данных из тегов.
PS: Это мой первый проект с устройствами NFC, тегами libnfc и MIFARE Ultralight, так что если вы считаете, что мне следует прочитать, пожалуйста, сообщите мне.
Изменить 1
Итак, я нашел этот вопрос: Чтение карты NFC Mifare с помощью NXP Библиотека для чтения
Что, я думаю, немного помогает мне. Я распечатал шестнадцатеричное значение другой тестовой строки и получил это
04 64 13 fb
72 f7 21 84
20 48 00 00
e1 11 06 00
03 0a d1 01
06 54 02 65
6e 68 65 79
fe 00 00 79
35 35 38 38
38 38 fe 00
2d 36 37 36
34 34 2d 36
37 35 34 36
2d 32 33 34
36 fe 00 00
00 00 00 00
00
Я вижу 3d
, за которым следует 0a
, а затем d1
, но каковы все значения перед 3d
? Это что-то из-за libnfc?