Помогите разобраться RFID PN 532

Нет ответов
Rupish
Offline
Зарегистрирован: 19.01.2019

Я абсолютный новичек, не пинайте, а помогите. Что я не так делаю. Бьюсь второй день.

Задача считать номер карты кое как получилось, но что то дальше сделать не получается, зависает цикл. Другие действия возможны только при считывании метки. Пожалуйста подскажите куда копать, всю голову сломал. 

Код не мой, пытаюсь его переделать под свои нужды.

#include <Wire.h>
#include <Adafruit_PN532.h>
unsigned long ID;
Adafruit_PN532 nfc( 6 ,  7 ); // назначаем имя модулю
boolean success; // задаём переменную для считывания номера карты
uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 }; // задаём переменную для хранения номера считанной карты
uint8_t uidLength; // длина номера карты (4 или 7 байт в зависимости от типа карты)
void setup()
{
  Serial.begin(115200);                                                                         // инициируем передачу данных в монитор последовательного порта на скорости 115200 бод
  nfc.begin();                                                                                  // инициируем работу с модулем
  nfc.setPassiveActivationRetries(0xFF);                                                        // указываем количество попыток на считывание карты
  nfc.SAMConfig();                                                                              // настраиваем модуль на чтение RFID-меток

}
void loop()
{

 
  success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, &uid[0], &uidLength);               // считываем первую карту для определения размера и назначения типа карты

    for (uint8_t i = 0; i < uidLength; i++) {                                                   // выводим номер карты (в зависимости от длины номера будет меняться и количество раз, которые должен выполнить цикл)
     if(i<4)ID = ( ID <<8) | uid[i];                                          // выводим номер карты
    }





}