Проблема связи SPI между RC522 и Arduino Mega2560 - PullRequest
0 голосов
/ 14 мая 2019

Сейчас я делаю проект, который включает использование RFID-модуля RC522 с Arduino Mega2560 через SPI-связь. Я решил использовать библиотеку MFRC522 (https://github.com/miguelbalboa/rfid) и сначала попробовать ее на встроенном примере (rfid_read_user_data.ino, https://github.com/miguelbalboa/rfid/blob/master/examples/rfid_read_personal_data/rfid_read_personal_data.ino).). Но модуль RC522 ничего не отвечает Arduino, независимо от того, отсканировал RFID-карту.

P.S. 1 .my Arduino Mega2560 является «совместимым / грабительским», а не подлинной платой Arduino.

  1. Я мог случайно коснуться моего Arduino на металлической поверхности MacBook при включенном питании (у моего Arduino нет задней крышки), но после этого все выглядит нормально и все еще может выполнять код.

Подключение RC522 к Arduino:

СБРОС-9

SDA (SS) -10 (я изменил определение RESET и SDA в коде соответственно)

Mosi-51

MISO-50

* * SCK тысячу двадцать-один-52

Чтобы устранить такую ​​проблему, я попробовал следующие вещи:

  1. Используйте ту же программу с Arduino Uno (подлинной), и она работает как положено - модуль RC522 и карта, которую я использую, не повреждены.

  2. Снижение частоты связи SPI на SPI.beginTransaction(SPISettings(27120000,MSBFIRST,SPI_MODE0));, поскольку RC522 может не поспевать за Mega2560 - Не повезло. (27120000 основано на частоте колебания кристалла на модуле RC522)

  3. Измените MOSI, MISO, SCK с цифровых выводов на выводы ICSP - не повезло.

  4. Установите SS (подчиненный) (вывод 53) на OUTPUT после включения - не повезло.

  5. Поменяйте местами MOSI и MISO, так как на некоторых платах Ripoff Arduino кто-то говорит, что TX и RX на UART можно поменять местами, и это может быть то же самое в SPI - не повезло.

Теперь я боюсь, что мой Arduino поврежден электрическим током, но все же, это может быть программная проблема?

P.S.S. Mega2560 MCU на моем Arduino чувствует себя теплым (но не горячим) после включения. Это знак электрического повреждения? Так как некоторые MCS-51-совместимые микроконтроллеры могут сильно нагреваться и функционировать неправильно, но все равно работают после короткого замыкания.

...