problème LED et NFC shield ( Arduino Uno )

Bonjour, Bonsoir à tous !

Tout d’abord, j’espère être dans la bonne section, étant nouveau sur le forum…

Alors voilà mon problème : pour mon projet de TPE ( oui je ne suis pas en avance… ) j’ai pour projet de programmer une Arduino Uno, accompagnée d’un NFC shield de SEED studio et de faire clignoter une LED si le TAG RFID ( oulà plein de mot qui sont pour moi technique j’espère n’embrouiller personne ) est le bon. Si le TAG n’est pas le bon, la LED ne clignotera pas mais restera allumée.

ça c’est pour la partie théorique.

Donc je fais mes branchements, j’écris mon code en m’inspirant du blink exemple code d’Arduino et du code NFC#2 de cette page ( http://www.seeedstudio.com/wiki/NFC_Shield_V2.0#Example_.234:_Write_an_NDEF_Message_to_a_Tag )

j’obtiens donc ce code :

#include <SPI.h>
#include "PN532_SPI.h"
#include "PN532.h"
#include "NfcAdapter.h"

String const myUID = "09 B4 30 09"; // replace this UID with your NFC tag's UID
int const redLedPin = 13; // red led used for incorrect key notification

PN532_SPI interface(SPI, 10); // create a SPI interface for the shield with the SPI CS terminal at digital pin 10
NfcAdapter nfc = NfcAdapter(interface); // create an NFC adapter object
 
void setup(void) {
    Serial.begin(9600); // start serial comm
    Serial.println("NDEF Reader");
    nfc.begin(); // begin NFC comm
    
    // sortie des LED
    pinMode(13,OUTPUT);
}
 
void loop(void) {
  
    Serial.println("Scanning...");
    if (nfc.tagPresent()) // vérifie si un TAG est présent dans la zone 
    {
        NfcTag tag = nfc.read(); // lis le NFC tag
        String scannedUID = tag.getUidString(); // prend en compte l'UID du TAG
        
        if( myUID.compareTo(scannedUID) == 0) // compare the NFC tag's UID with the correct tag's UID (a match exists when compareTo returns 0)
        {
          // correct NFC TAG 
          Serial.println("Correct Key");
          // allume la LED
          digitalWrite(redLedPin,HIGH);
   
        }else{
          // incorrecte TAG utilisé
          Serial.println("Incorrect key");
          digitalWrite(redLedPin,HIGH);   // allumer la LED
                        
          }
    }
    delay(500);
}

Bon alors c’est du franglais, j’ai modifié ce que j’ai touché surtout. A partir de ce code je ne comprend pas pourquoi la LED ne s’allume pas. Pourtant dans le moniteur il m’indique bien que tout marche, il me dit “correct key” quand je présente la bonne carte ( le bon TAG ) et “incorrect key” quand je présente la mauvaise.

Ma requête est donc la suivante : si quelqu’un pouvait regarder mon code et voir si il n’aperçoit pas une vilaine faute ou un problème, car moi je ne comprend pas pourquoi ma LED ne s’allume pas.

je précise que je suis sous Windows 8.1 ( un survivant ! )

En espérant ne pas avoir fait trop d’erreur/faute d’orthographe dans mon message et vous remerciant d’avance,

Adamelium.

Bonjour,

Ta led devrait s'allumer (aussi bien pour un tag correct que incorrect) Verifie ton cablage et le sens de la led.

Bonjour,

Ma LED est bien dans le bon sens, la broche longue est située dans la borne 13 et la broche courte dans la broche ground, directement. J'ai refait un test avec le blink exemple d'Arduino et tout marche nickel. Je tiens à signaler que la LED clignote très faiblement en même temps que la micro-LED orange de la carte.

peut-être dois-je mettre une résistance ?

Merci pour ta réponse !

Oui entre 220 et 470 Ω
Est ce que tu as essayé sur une autre sortie?

D'accord je vais essayer ça en bidouillant la LED et la résistance

J'ai pas essayé d'autres sorties par contre, n'importe laquelle conviendrait ?

ça marche ! enfaîte je devais changer de port,comme expliqué alors j'ai branché ma résistance dans le pin 3 et ma LED s'est allumée !

merci pour votre aide !

Peut être que la pin 13 est utilisée par le shield NFC ?