Hilfe bei Softwareänderung, gleiche Karte ignorieren

Hallo Stephan,

danke für deine Hilfe. Die Befehle

mfrc522.PICC_HaltA();
mfrc522.PCD_StopCrypto1();

hatte ich nicht weiter drin, da ich dachte, dass ich in die Sequenz eigentlich nicht unterbreche und ich die gegebenen Funktionen wiederverwende. Tja, falsch gedacht. Folgendes funktioniert nun wie ich es mir vorstelle:

if (readCard(&newCard) == true) 
{
Serial.println("Read card");

if ((newCard.folder == myCard.folder) && (newCard.mode == myCard.mode))
{
  Serial.println("folder and mode of cards are identical, return to loop");
  mfrc522.PICC_HaltA();  // <----- HIER 
  mfrc522.PCD_StopCrypto1();  // <----- HIER 
  return;
}
else
{
  Serial.println("folder and mode of cards are not identical, therefore continue");
  myCard = newCard;
  newCard.folder = 0;
  newCard.mode = 0;
}

Da ich per “return” ganz an den Anfang springe und “readCard()” die Verbindung zum MFRC522 nicht “schließt”, kommt es zu den geschilderten Verbindungproblemen (stand auch in der Doku zur MFRC522-Bib). Einfügen und fertig.
Eleganterweise sollte ich aber noch die UID der Karte merken und statt folder & mode diese vergleichen. Mal schauen wie ich das bewerkstellige. Da hilft mir aber sicherlich der zweite Post.

Danke dir vielmals! Danke an die Anteilnahme der anderen. :wink:

Viele tönernde Grüße,
ibuddy :loud_sound: