#include <LiquidCrystal_I2C.h>
// Définition des broches I2C pour l'ESP32-CAM
#define I2C_SDA 15
#define I2C_SCL 14
// Adresse I2C de l'écran (généralement 0x27 ou 0x3F)
// Paramètres : adresse, colonnes, lignes
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
// Initialisation du bus I2C personnalisé
Wire.begin(I2C_SDA, I2C_SCL);
// Initialisation du LCD
lcd.init();
lcd.backlight(); // Allume le rétroéclairage
// Affichage du message de bienvenue
lcd.setCursor(1, 0); // (colonne, ligne)
lcd.print("ESP32-CAM OK");
lcd.setCursor(1, 1);
lcd.print("LCD I2C Pret !");
}
void loop() {
// Votre code ici
}
/**
Ne pas avoir la bibliothèque PN532_SPI dans le répertoire Libraries...
- Wire.h: [Wire@3.3.7]
- PN532_I2C.h: [PN532_I2C]
- PN532Interface.h: [PN532]
- NfcAdapter.h: [NDEF]
- [LiquidCrystal I2C@1.1.2]
**/
// for I2C Communication (0x24)
#include <Wire.h>
#include <PN532_I2C.h>
#include <PN532.h>
#include <NfcAdapter.h>
PN532_I2C pn532_i2c(Wire);
NfcAdapter nfc = NfcAdapter(pn532_i2c);
String tagId = "None";
byte nuidPICC[4];
#include <LiquidCrystal_I2C.h>
// Définition des broches I2C pour l'ESP32-CAM
#define I2C_SDA 15
#define I2C_SCL 14
// Adresse I2C de l'écran (généralement 0x27 ou 0x3F)
// Paramètres : adresse, colonnes, lignes
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
Serial.begin(115200);
Serial.println("System initialized");
// Initialisation du bus I2C personnalisé
Wire.begin(I2C_SDA, I2C_SCL);
nfc.begin();
// Initialisation du LCD
lcd.init();
lcd.backlight(); // Allume le rétroéclairage
// Affichage du message de bienvenue
lcd.setCursor(1, 0); // (colonne, ligne)
lcd.print("ESP32-CAM OK");
lcd.setCursor(1, 1);
lcd.print("LCD I2C Pret !");
}
void loop() {
readNFC();
}
void readNFC() {
uint8_t success;
if (nfc.tagPresent())
{
Serial.println("===NEW TAG===============");
NfcTag tag = nfc.read();
tag.print();
tagId = tag.getUidString();
Serial.print("Tag id : ");
Serial.println(tagId);
NdefMessage message = NdefMessage();
Serial.println("=========================");
}
delay(1000);
}
