RFID считывает номер ключа - если ключа нет

next-999
Offline
Зарегистрирован: 30.09.2013

Всем привет, имею RFID.

При считывании карты, когда ее убираю - значение сохраняется.

 

void loop() {



  delay(10);
  yield();
  display.display();



  if ( ! rfid.PICC_IsNewCardPresent()) {}
  if ( ! rfid.PICC_ReadCardSerial()) {}


  Key = 0;
 
for (byte i = 0; i < rfid.uid.size; i++){

KeyTemp = rfid.uid.uidByte[i];
    Key = Key * 256 + KeyTemp;}
    


    
  Serial.print("Card №: ");
  Serial.println(Key);
   Serial.print("Stat: ");
   Serial.println(stat);




   
if (Key == 1122782336){ 

 stat = stat + 1;
 delay(1000);








 

if (stat == 2){ 

 stat = 0;
 
 }


 
 }

При применении функции {return;} код останавливает весь скетч. но мне так не нужно.

мне нужно чтобы постоянно был поиск карты, когда я карту присланил - код считался, когда убрал, код заменился нулем.

но у меня почему то код сохраняется при первом поднесении карты.

подскажите как сделать так чтобы если карты небыло, был 0 в "Key"

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Ну ты же обнуляешь каждый цикл
Переменную "Key", что мешает обнулять переменную "KeyTemp" ?