Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Запись на карты Mifare 1K
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
flakman
Работаю с картами Mifare 1K с помощью набора функций, предложенных в примере проекта под ARM7 от самой NXP (). Чтения идут на ура, а вот запись перестаёт работать после первого же её использования. Т.е. за один сеанс работы с картой можно сколько угодно читать блоки, но если хоть один раз запишешь, снова читать/писать получится только если заново запусить весь процесс - антиколлизия, выбор, авторизация.

При записи, даже при первой попытке, всегда происходит ошибка MI_BITCOUNTERR, но если на неё забить, то реально данные на карту при первой попытке пишутся. При всех последующих - нет. А при попытках чтения начинает всегда происходить ошибка MI_BYTECOUNTERR...

Ломаю голову, кривость это библиотеки функций, совместимости оборудования, или моих рук... Библиотека функций писалась под серию ридеров от NXP - RC500. В моём устройстве стоит микросхема FM1702, которая, как утверждается китайским производителем, полностью совместима с RC500. Связь с МК LPC2103 по SPI. Прицепил основной исходник библиотеки функций, что-бы если кто сталкивался с такой проблемой, мог посмотреть с тем же исходником работал или нет.
flakman
Разобрался. Дело было в параметре антенны, определяющем пороговый уровень сигнала после которого он считается устойчивым и начинается его декодирование. В библе, в функции настройки, почему-то по дефолту стояло слишком низкое значение. И по ходу устройство просто ловило кучу помех и пыталось с ними работать. Странно что это убивало связь только после попытки записи... Параметр "RxThreshold" по даташиту на MFRC500.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.