Citar (formato IEEE):
Microlab IoT, «Módulo RFID Rc522 con Arduino,» microlab.ec. https://microlab.ec/blog/modulo-rfid-rc522-con-arduino (accessed: Feb. 6, 2023).
El Módulo Lector RFID-RC522 RF utiliza 3.3V como voltaje de alimentación y se controla a través del protocolo SPI, por lo que es compatible con casi cualquier micro controlador, Arduino o tarjeta de desarrollo. El RC522 utiliza un sistema avanzado de modulación y demodulación para todo tipo de dispositivos pasivos de 13.56Mhz
#include <MFRC522.h>
//Configuracion RFID
#define SS_PIN 10
#define RST_PIN 9
MFRC522 rfid(SS_PIN, RST_PIN); // Instance of the class
MFRC522::MIFARE_Key key;
void setup() {
Serial.begin(9600);
while (!Serial); // For Yun/Leo/Micro/Zero/...
//SETUP RFID
SPI.begin(); // Init SPI bus
rfid.PCD_Init(); // Init MFRC522
for (byte i = 0; i < 6; i++) {
key.keyByte[i] = 0xFF;
}
Serial.print(F("Lector RFID inicializado"));
//printHex(key.keyByte, MFRC522::MF_KEY_SIZE);
Serial.println();
delay(1000);
}
void loop() {
//LOOP PARA RFID
//mensaje = "";
// Reset the loop if no new card present on the sensor/reader. This saves the entire process when idle.
if ( ! rfid.PICC_IsNewCardPresent())
return;
// Verify if the NUID has been readed
if ( ! rfid.PICC_ReadCardSerial())
return;
Serial.print(F("Tipo de tarjeta: "));
MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak);
Serial.println(rfid.PICC_GetTypeName(piccType));
Serial.print("Codigo de la tarjeta: ");
Serial.println(leer_rfid(rfid.uid.uidByte, rfid.uid.size));
delay(1000);
// Halt PICC
rfid.PICC_HaltA();
// Stop encryption on PCD
rfid.PCD_StopCrypto1();
delay(50) ;
}
//FUNCIONES DE RFID
String leer_rfid(byte *buffer, byte bufferSize) {
String lectura="";
for (byte i = 0; i < bufferSize; i++) {
//Serial.print(buffer[i] < 0x10 ? " 0" : " ");
lectura = lectura + buffer[i];
//Serial.print(buffer[i], HEX);
}
return lectura;
}
Si necesitas asesoría en proyectos de Arduino, Raspberry, electrónica, estamos localizados en la ciudad de Quito Ecuador. Somos Microlab.
Dejar una contestacion