Как работать с несколькими RFID-ридерами RC522?
- Войдите на сайт для отправки комментариев
Пнд, 23/03/2015 - 22:06
Можно ли одним МК рулить несколькими ридерами? В примерах такого не нашел, а по схеме подключения непонятно как задействовать еще несколько.
Замок один, а ридеров надо три (два по обеим сторонам двери и третий у пульта охраны). Расстояние от МК не более 2 метров до каждого.
запросто,там SPI шина, каждому отдельный SS и будут работать.
А вот и не получается у них вместе работать
А нужно минимум два считывателя - на вход и на выход из помещения.
Пробовал переключать программно (использовать только один, затем переключаться на следующий):
Вместе не хотят работать, а при отключении любого из считывателей все работает.
Тогда как? Отрывание ноги питания 3,3 В не помогает (паразитное питание с линий данных). Помогает лишь отрывание GND (на платке индикатор питания начинает мерцать, тоже какое-то питание просачивается, мне это не нравится).
Vittorio, покажите пальцем, где в вашем коде происходит выбор CS для нужного считывателя.
Что позволяет вам думать, что достаточно создать один объект MFRC522 для обоих считывателей?
навскидку - строки 84-85, там циклично меняется пин с 10 на 4. Только вот достаточно ли просто менять пин? Надо же сам ридер еще как-то дергать (инициализировать).
По коду получается, что всегда работает только один из двух MFRC522, поэтому зачем создавать более одного объекта?
*facepalm CS задается при инициализации объекта и Ваши манипуляции с переменной SS_PIN до лампочки. Сделайте два объекта, как Вам сказали, или пишите свою библиотеку.
Никакой реакции :( Теперь даже один подключенный считыватель не работает. Видимо, эти имена жестко заданы в библиотеке и менять их нельзя.
Vittorio, покажите пальцем, где в вашем коде происходит выбор CS для нужного считывателя.
...
вопрос все еще актуален...
И?
Во втором сообщении этой темы есть ссылка - почитайте.
Читал. И?
При обмене данными с ведомым устройством, соответствующий ему сигнал SS переводится в активное (низкое) состояние, при этом все остальные сигналы SS находятся в неактивном (высоком) состоянии.
А скетч вообще работает? Меня смущает, что вы работаете с неактивным ридером, одновременно с активным. Я не знаю внутреннего устройства класса - влиять на работу может что угодно.
Попробуйте инициализировать оба экземпляра, но работать только с активным - если заработает - круг поиска существенно сузится.
Я работаю создавая различные инстансы класса
MFC522 Целых 5 штук. Но есть проблемма с тем что они могут работать отлично а могут через раз. Из-за чего такая проблемма хз.
Я работаю создавая различные инстансы класса
MFC522 Целых 5 штук. Но есть проблемма с тем что они могут работать отлично а могут через раз. Из-за чего такая проблемма хз.
гляньте, сколько свободной памяти.
Vittorio Приветсвую. Если не трудно можете помочь как вы решили эту задачу?? у меня тоже такая трудность немогу 2 ридера (RC-522) подключит к одному ардуино (nano)/ спасибо!.
В итоге пришли к выводу, что в китайских модулях (не всо всех, зависит от прошивки) нет строгого соответствия SPI, поэтому первый модуль не дает работать второму (гасит шину).
Способ принудительной инициализации плюс halt() каждого ридера перед считыванием в 85% случаев работает, если не повезло - заказывать ридер из другой партии (у дрогого продавца).
В той теме проблемы если на плате "нога выбора ведомого (SS) прибита и не реагирует". Тогда понятное дело, выходы ридера всегда активны и без аппарптного решения никак. Возможно такое и встречается, но мне не попадало. Если SS выведен и работает никаких сложностей нет вобще, ну конечно кроме кривых либ не расчитаных на несколько ридеров.
ПС. Если чё, я брал год назад здесь https://ru.aliexpress.com/item/MFRC-522-RC522-mfrc-522-RFID-RF-IC-card-inductive-module-with-free-S50-Fudan-card/32433898442.html?af=1516381&cv=23588177&cn=41pakak9nrf417b3688oanq8zivap5hl&dp=v5_41pakak9nrf417b3688oanq8zivap5hl&mall_affr=pr1&aff_platform=default&cpt=1529397370022&sk=RzjEaYr&aff_trace_key=954ff61de9224de7bedf69c55e6a1bac-1529397370022-04646-RzjEaYr&terminal_id=d6e353ff3fd8471fb7f1132626613739 нога не "прибита", отлично уживался на одной шине с экраном.
Vittorio и Logik спасибо!!!