Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème Shield NFC et carte SD

    24 avril 2019 à 8:27:39

    Bonjour, je suis actuellement entrain de faire un projet qui consiste, à quand je passe une carte NFC sur mon shield, il repère l'uid de la carte et la compare à uid enregistrer sur la carte sd en fichier text.
    Une fois ceci fais, un message indique que la clé est valide et une led s'allume.
    Dans le cas contraire, si l'uid n'est pas répertorié, une autre led s'allume.
    Mon problème est que je n'arrive pas à faire tourner ma boucle ou même trouver la constante if pour comparer l'uid de la carte et celui du fichier text de la carte sd.
    Si quelqu'un a du temps, ou sais comment y parvenir je ne dis pas non.
    Merci d'avance !

    Ps: voici mon programme pour que vous voyez les erreurs, et oui désolé pour mes fautes d'orthographes.


     #include <SPI.h>
      #include "PN532_SPI.h"
      #include "PN532.h"
      #include "NfcAdapter.h"
      #include "SD.h"
      #define BrSD 2
    
    
      File myFile;
    
      String const myUID = "AC D1 6D 05"; 
      int const led = 2; // clé valide
      int const leds = 3; // clé incorect
    
    
      PN532_SPI interface(SPI, 10); 
      NfcAdapter nfc = NfcAdapter(interface); 
    
      void setup(void) {
          Serial.begin(115200); 
          Serial.println("Lecteur NFC");
           
    
          pinMode(BrSD,OUTPUT);
          digitalWrite(BrSD,HIGH);
    
          pinMode(led,OUTPUT);
          pinMode(leds,OUTPUT);
    
          digitalWrite(led,LOW);
          digitalWrite(leds,LOW);
      }
    
      void loop(void) {
          nfc.begin();
          Serial.println("Scanne...");
          if (nfc.tagPresent()) // vérifié si il y a bien un tag
          {
              NfcTag tag = nfc.read(); // lire le tag nfc
              String scannedUID = tag.getUidString(); // avoir le tag nfc inclut dans la carte
    
              if(String scannedUID  = myFile.read()){ 
              Serial.print("Initialisation de la carte sd...");
                digitalWrite(BrSD,HIGH);
                SD.begin(4);
              Serial.println("initialization terminer.");
              delay(100);
           myFile = SD.open("verif.txt", FILE_READ);
              if (myFile) {
                Serial.println("verif.txt:");
                while (myFile.available()) {
                Serial.write(myFile.read());
                  }
           myFile.close();
    }  
     digitalWrite(BrSD,HIGH);
    // comparer le tag de la carte , au tag inclut dans le programme
    
              
              
                // Le bon tag a été lu
                Serial.println("Clé valide ");
                
                digitalWrite(led,HIGH);
                digitalWrite(leds,LOW);
    
                delay(500);
                digitalWrite(led,LOW);
                delay(500);
                digitalWrite(led,HIGH);
                delay(500);
                digitalWrite(led,LOW);
               
              }
              else{
                // un tag incorrect a été lu
                Serial.println("CLé invalide");
                
                digitalWrite(led,LOW);
                digitalWrite(leds,HIGH);
    
                delay(500);
                digitalWrite(leds,LOW);
                delay(500);
                digitalWrite(leds,HIGH);
                delay(500);
                digitalWrite(leds,LOW);
               
               
              }
              }
          
          delay(2000);
      }
    



    • Partager sur Facebook
    • Partager sur Twitter

    Problème Shield NFC et carte SD

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    • Editeur
    • Markdown