Осваиваем Rfid метки на ридере RFID-RC522 и ардуино robotdyn (очень понравилась,это та которая с микро USB и 2мя дополнительными портами А6 и А7)
Код для простого замка
/*
* MOSI: Pin 11 / ICSP-4
* MISO: Pin 12 / ICSP-1
* SCK: Pin 13 / ISCP-3
* SS: Pin 10
* RST: Pin 9
*/
#include <SPI.h>
#include <RFID.h>
#define SS_PIN 10
#define RST_PIN 9
#define BLUE_LED 6
#define YELLOW_LED 7
RFID rfid(SS_PIN, RST_PIN);
unsigned char reading_card5; //for reading card
unsigned char master5 = {148,251,216,30,169}; // Здесь указываем код вашей метки\ карты для доступа
unsigned char i;
void indication(int led);
void allow();
void denied();
void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.init();
pinMode(BLUE_LED, OUTPUT);
pinMode(YELLOW_LED, OUTPUT);
}
void loop()
{
if (rfid.isCard())
{
if (rfid.readCardSerial())
{
/* Reading card */
Serial.println(" ");
Serial.println("Card found");
Serial.println("Cardnumber:");
for (i = 0; i < 5; i++)
{
Serial.print(rfid.serNumi);
Serial.print(" ");
reading_cardi = rfid.serNumi;
}
Serial.println();
//verification
for (i = 0; i < 5; i++)
{
if (reading_cardi!=masteri)
{
break;
}
}
if (i == 5)
{
allow();
}
else
{
denied();
}
}
}
rfid.halt();
}
void allow()
{
Serial.println("Access accept!");
indication(BLUE_LED);
}
void denied()
{
Serial.println("Access denied!");
indication(YELLOW_LED);
}
void indication(int led)
{
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
}
#arduinoua #club_arduino #RFID #READER #NFC #RF