//declarar librerías
#include <SPI.h>
#include <MFRC522.h>
#include <servo.h>
#define RST 9
#define SS 10
MFRC522 lector(SS, RST);
byte lecturaUID[4];
byte user1[4]= {0xCE, 0xAC, 0x63, 0x06} ;
byte user2[4]= {0x95, 0xBA, 0xF2, 0x06} ;
int ledv=2;
int buz=4;
Servo s1;
void setup(){
Serial.begin(9600);
SPI.begin();
lector.PCD_Init();
Serial.println("Sistema Activado");
pinMode(buz,OUTPUT);
pinMode(ledv,OUTPUT);
s1.attach(3);
}
void loop(){
if ( ! lector.PICC_IsNewCardPresent())
return;
if ( ! lector.PICC_ReadCardSerial())
return;
Serial.print("UID:");
for (byte i = 0; i < lector.uid.size; i++) {
if (lector.uid.uidByte[i] < 0x10){
Serial.print(" 0");
}
else{
Serial.print(" ");
}
Serial.print(lector.uid.uidByte[i], HEX);
lecturaUID[i]=lector.uid.uidByte[i];
}
Serial.print("\t");
if(comparaUID(lecturaUID, user1)){
Serial.println("ingreso usuario tarjeta");
digitalWrite(ledv, HIGH);
s1.write(90);
delay(2000);
digitalWrite(ledv, LOW);
s1.write(0);
} else
if(comparaUID(lecturaUID, user2)){
Serial.println("ingreso Usuario llavero");
s1.write(180);
digitalWrite(buz, HIGH);
delay(2000);
s1.write(0);
digitalWrite(buz, HIGH);
}
else{
Serial.println("Usuario no autorizado");
lector.PICC_HaltA();
}
}