//RST D9 //SDA(SS) D10 //MOSI D11 //MISO D12 //SCK D13 #include #include const int RST_PIN = 1; // Pin 9 para el reset del RC522 const int SS_PIN = 0; // Pin 10 para el SS (SDA) del RC522 MFRC522 mfrc522(SS_PIN, RST_PIN); // Crear instancia del MFRC522 void printArray(byte *buffer, byte bufferSize) { for (byte i = 0; i < bufferSize; i++) { Serial.print(buffer[i] < 0x10 ? " 0" : " "); Serial.print(buffer[i], HEX); } } void setup() { Serial.begin(9600); //Inicializa la velocidad de Serial SPI.begin(); //Función que inicializa SPI mfrc522.PCD_Init(); //Función que inicializa RFID } void loop() { // Detectar tarjeta if (mfrc522.PICC_IsNewCardPresent()) { if (mfrc522.PICC_ReadCardSerial()) { //Serial.print(F("Card UID:")); //printArray(mfrc522.uid.uidByte, mfrc522.uid.size); //Serial.println(); //3A B2 B5 19 es la tarjeta del prototipo 1 if (mfrc522.uid.uidByte[0] == 0x3A && mfrc522.uid.uidByte[1] == 0xB2 && mfrc522.uid.uidByte[2] == 0xB5 && mfrc522.uid.uidByte[3] == 0x19 ) { //Print hello message Serial.print(F("1")); } //2B 45 1B 10 es la tarjeta del prototipo 2 if (mfrc522.uid.uidByte[0] == 0x2B && mfrc522.uid.uidByte[1] == 0x45 && mfrc522.uid.uidByte[2] == 0x1B && mfrc522.uid.uidByte[3] == 0x10 ) { //Print hello message Serial.print(F("2")); } //A0 E7 6A 32 es la tarjeta del prototipo 3 if (mfrc522.uid.uidByte[0] == 0xA0 && mfrc522.uid.uidByte[1] == 0xE7 && mfrc522.uid.uidByte[2] == 0x6A && mfrc522.uid.uidByte[3] == 0x32 ) { //Print hello message Serial.print(F("3")); } //1D 22 4E 63 es la tarjeta del prototipo 4 if (mfrc522.uid.uidByte[0] == 0x1D && mfrc522.uid.uidByte[1] == 0x22 && mfrc522.uid.uidByte[2] == 0x4E && mfrc522.uid.uidByte[3] == 0x63 ) { //Print hello message Serial.print(F("4")); } //99 5D 84 E5 es la tarjeta del prototipo 5 if (mfrc522.uid.uidByte[0] == 0x99 && mfrc522.uid.uidByte[1] == 0x5D && mfrc522.uid.uidByte[2] == 0x84 && mfrc522.uid.uidByte[3] == 0xE5 ) { //Print hello message Serial.print(F("5")); } // Finalizar lectura actual mfrc522.PICC_HaltA(); } } delay(250); }