¡Tu carrito está actualmente vacío!
Utilizar sensor PN532 con ESP32

Para leer datos de un módulo NFC PN532 usando un ESP32.

Un ejemplo básico utilizando la librería Adafruit_PN532
para el PN532 con Wire.h
para la comunicación I2C:
Librerias:
Adafruit_PN532Wire
y También instalar dependencia Adafruit bus IO 1.16.1
Wire
El circuito debe estar conectado de la siguiente manera:
- VCC del PN532 a 3.3V del ESP32
- GND del PN532 a GND del ESP32
- SDA del PN532 a GPIO 21 del ESP32 (puedes cambiarlo si quieres)
- SCL del PN532 a GPIO 22 del ESP32 (puedes cambiarlo si quieres)
#include <Wire.h>
#include <Adafruit_PN532.h>
// Configuración de pines I2C en el ESP32
#define SDA_PIN 21
#define SCL_PIN 22
// Crear una instancia del PN532 usando la interfaz I2C
Adafruit_PN532 nfc(SDA_PIN, SCL_PIN);
void setup(void) {
Serial.begin(115200);
Serial.println("Iniciando el lector NFC PN532...");
Wire.begin(SDA_PIN, SCL_PIN);
nfc.begin();
uint32_t versiondata = nfc.getFirmwareVersion();
if (!versiondata) {
Serial.print("No se encontró el PN53x. Revisa las conexiones.");
while (1); // parar aquí
}
// Mostrar información del firmware
Serial.print("Encontrado PN5");
Serial.print((versiondata>>24) & 0xFF, HEX);
Serial.print(" Firmware ver. ");
Serial.print((versiondata>>16) & 0xFF, DEC);
Serial.print('.');
Serial.println((versiondata>>8) & 0xFF, DEC);
// Configurar el módulo para operar en modo RFID con la frecuencia de 106 kbps
nfc.SAMConfig();
Serial.println("Esperando una tarjeta NFC...");
}
void loop(void) {
uint8_t success;
uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 }; // Buffer para almacenar el UID
uint8_t uidLength; // Tamaño del UID
// Esperar a que se detecte una tarjeta
success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid, &uidLength);
if (success) {
// Si se ha detectado una tarjeta, mostrar el UID
Serial.println("Tarjeta detectada!");
Serial.print("UID Length: ");Serial.print(uidLength, DEC);Serial.println(" bytes");
Serial.print("UID Value: ");
for (uint8_t i=0; i < uidLength; i++) {
Serial.print(" 0x");Serial.print(uid[i], HEX);
}
Serial.println("");
// Esperar un momento antes de intentar leer otra vez
delay(1000);
}
}
Etiquetas:
Comentarios
Una respuesta a «Utilizar sensor PN532 con ESP32»
TFM INGENIERIA Nos ayudaron a mejorar nuestra producción de máquinas (Sector Papelera) en una pequeña empresa familiar en Bilabo, España. ¡Gracias por todo! 🙌🚀 #Innovación #Ingeniería TFM INGENIERIA» Ana.
Deja una respuesta