Помогите как сюда добавить еще несколько карт ? Код (C++): #include <SPI.h> #include <MFRC522.h> // библиотека "RFID". #define SS_PIN 10 #define RST_PIN 9 MFRC522 mfrc522(SS_PIN, RST_PIN); unsigned long uidDec, uidDecTemp; // для храниения номера метки в десятичном формате void setup() { Serial.begin(9600); Serial.println("Waiting for card..."); SPI.begin(); // инициализация SPI / Init SPI bus. mfrc522.PCD_Init(); // инициализация MFRC522 / Init MFRC522 card. pinMode(4, OUTPUT); } void loop() { // Поиск новой метки if ( ! mfrc522.PICC_IsNewCardPresent()) { digitalWrite(4, LOW); return; } // Выбор метки if ( ! mfrc522.PICC_ReadCardSerial()) { digitalWrite(4, LOW); return; } uidDec = 0; // Выдача серийного номера метки. for (byte i = 0; i < mfrc522.uid.size; i++) { uidDecTemp = mfrc522.uid.uidByte; uidDec = uidDec * 256 + uidDecTemp; } Serial.println("Card UID: "); Serial.println(uidDec); // Выводим UID метки в консоль. if (uidDec == 2712763339) // Сравниваем Uid метки, если он равен заданому то серва открывает. { digitalWrite(4, HIGH); } digitalWrite(4, LOW); }
Для начала, вставьте, пожалуйста код через теги. В каждом разделе есть прикрепленная тема с инструкциями. Если мне не изменяет память, то, кажется, модули рфид не очень хорошие по отношению к miso, рфид не отпускают их, что и мешает их наращиванию "в лоб". Попробуйте поиском пробежаться по форуму
Все просто.Если uid Dec==2712763339||0123456789||2233445566 что то делаем.Иначе нет.Либо если uidDec==nunber что то делаем иначе нет.Как то так.Мысль понятна?
Код (C++): #include <SPI.h> #include <MFRC522.h> // библиотека "RFID". #define SS_PIN 10 #define RST_PIN 9 MFRC522 mfrc522(SS_PIN, RST_PIN); unsigned long uidDec, uidDecTemp; // для храниения номера метки в десятичном формате void setup() { Serial.begin(9600); Serial.println("Waiting for card..."); SPI.begin(); // инициализация SPI / Init SPI bus. mfrc522.PCD_Init(); // инициализация MFRC522 / Init MFRC522 card. pinMode(4, OUTPUT); } void loop() { // Поиск новой метки if ( ! mfrc522.PICC_IsNewCardPresent()) { digitalWrite(4, LOW); return; } // Выбор метки if ( ! mfrc522.PICC_ReadCardSerial()) { digitalWrite(4, LOW); return; } uidDec = 0; // Выдача серийного номера метки. for (byte i = 0; i < mfrc522.uid.size; i++) { uidDecTemp = mfrc522.uid.uidByte[i]; uidDec = uidDec * 256 + uidDecTemp; } Serial.println("Card UID: "); Serial.println(uidDec); // Выводим UID метки в консоль. if (uidDec == 2712763339); // Сравниваем Uid метки, если он равен заданому то серва открывает. Serial.println("Card UID: "); Serial.println(uidDec); // Выводим UID метки в консоль. if (uidDec == 1027896139) // Сравниваем Uid метки, если он равен заданому то серва открывает. { digitalWrite(4, HIGH); delay(1000); } digitalWrite(4, LOW); return; }