Salut tout le monde,
Je reviens vers vous car j'ai voulu intégrer un écran LCD à mon programme en m'inspirant de ce tuto: Redirection vers Les écrans LCD
Mon projet est de pouvoir ouvrir une porte d'entrée grâce au NFC de son téléphone en passant par un module arduino uno et d'un shield NFC (NFC Shield V2.0 | Seeed Studio Wiki) et d'afficher un message de bienvenue lorsque que mon téléphone est reconnu.
Cependant c'est ce dernier point qui me fait défaut ![]()
J'ai donc dû faire une erreur car mon branchement avec 4 broches de données à l'air correct.
L'erreur doit venir de mon programme:
#include <LiquidCrystal.h>
#include <PN532.h>
#include <SPI.h>
/*Chip select pin can be connected to D10 or D9 which is hareware optional*/
/*if you the version of NFC Shield from SeeedStudio is v2.0.*/
#define PN532_CS 10
PN532 nfc(PN532_CS);
#define NFC_DEMO_DEBUG 1
void setup(void)
{
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
lcd.begin(16, 2);
lcd.clear();
#ifdef NFC_DEMO_DEBUG
Serial.begin(9600);
Serial.println("Hello!");
#endif
nfc.begin();
uint32_t versiondata = nfc.getFirmwareVersion();
if (! versiondata)
{
#ifdef NFC_DEMO_DEBUG
Serial.print("Didn't find PN53x board");
#endif
while (1); // halt
}
#ifdef NFC_DEMO_DEBUG
// Got ok data, print it out!
Serial.print("Found chip PN5");
Serial.println((versiondata>>24) & 0xFF, HEX);
Serial.print("Firmware ver. ");
Serial.print((versiondata>>16) & 0xFF, DEC);
Serial.print('.');
Serial.println((versiondata>>8) & 0xFF, DEC);
Serial.print("Supports ");
Serial.println(versiondata & 0xFF, HEX);
#endif
// configure board to read RFID tags and cards
nfc.SAMConfig();
}
void loop(void)
{
uint32_t id;
// look for MiFare type cards
id = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A);
switch(id) // Réalisation d'un switch pour gérer les différentes conditions
{
case 363787789: // Condition à remplir si l'ID détecté est 363787789
{ Serial.println();
Serial.println("Acces autorise!"); // Envoi au moniteur
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
lcd.print("Bienvenue Thibaud!");
delay(3000);
}
break;
case 0: // Condition à remplir si le Shield ne détecte aucun Tag
{ Serial.println();
Serial.println("Presentez Pass!");
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
lcd.print("Bonjour pesentez NFC!");
delay(1000);
}
break;
default: // condition à remplir si aucune des conditions précédentes ne sont bonnes
{ Serial.println(); // soit quand l'ID présentée au Shield est différente de 363787789
Serial.println("Acces refuse!");
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
lcd.print("Je ne vous connais pas!");
delay(3000);
}
}
delay(500);
}
j'espère que vous pourrez m'aider
Merci d'avance ;D