Я пытаюсь отсканировать тег RFID, чтобы добавить его в переменную строку с именем RFID1. Тем не менее, он продолжает говорить, что доступ запрещен, как если бы он все еще находился в основном l oop при сканировании карты RFID, когда он находится в рабочем состоянии, а l oop в другой пустой функции.
Я не уверен, почему это происходит ..
do{ // DO WHILE STATEMENT FOR ADDING RFID
if
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
//Show UID on serial monitor
Serial.print("UID tag :");
String content= "";
byte letter;
for (byte i = 0; i < mfrc522.uid.size; i++)
{
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
Serial.println();
Serial.print("Message : ");
content.toUpperCase();
RFID1 == content.substring(1); // RFID USER 1 = RFID TAG
delay(3000); // WAIT 3 SECONDS
user1AddLoop + 1; // BREAK OUT OF LOOP
} // END OF DO WHILE STATEMENT FOR ADDING RFID
while(user1AddLoop == 0 );
^^ Функция для попытки добавить RFID в переменную. ^^
// ---- RFID CODE ---- //
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
//Show UID on serial monitor
Serial.print("UID tag :");
String content= "";
byte letter;
for (byte i = 0; i < mfrc522.uid.size; i++)
{
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
Serial.println();
Serial.print("Message : SCAN YOUR RFID TAG");
content.toUpperCase();
if (content.substring(1) == RFID1 || content.substring(1) == RFID2 || content.substring(1) == RFID3) //change here the UID of the card/cards that you want to give access
{
rfidOpen();
}
else {
rfidDeny();
}
^^ Код для поиска RFID для открытия двери в главном l oop ^^
Я знаю, что они используют один и тот же код для поиска RFID, однако я не могу понять, почему он продолжает отказывать мне в доступе, как если бы он находился в пустоте l oop (), а не в своей собственной функции с именем rfidMenu (), которая вызывается из пустоты rfidOpen (), как видно из кода.