Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SPI.h>
- #include <MFRC522.h>
- #define RFID_RST_PIN 9
- #define RFID_SS_PIN 10
- #define OPEN_LOCK_INDICATOR_PIN 6
- #define CLOSE_LOCK_INDICATOR_PIN 7
- MFRC522 mfrc522(RFID_SS_PIN, RFID_RST_PIN);
- String read_rfid;
- String trusted_rfid_1 = "0"; //TODO
- String trusted_rfid_2 = "0"; //TODO
- bool isOpened = false;
- void setup() {
- Serial.begin(9600);
- SPI.begin();
- mfrc522.PCD_Init();
- pinMode(OPEN_LOCK_INDICATOR_PIN, OUTPUT);
- pinMode (CLOSE_LOCK_INDICATOR_PIN, OUTPUT);
- }
- void dump_byte_array(byte *buffer, byte bufferSize) {
- read_rfid = "";
- for (byte i = 0; i < bufferSize; i++) {
- read_rfid=read_rfid + String(buffer[i], HEX);
- }
- }
- void open_lock() {
- digitalWrite(OPEN_LOCK_INDICATOR_PIN, HIGH);
- delay(500);
- digitalWrite(OPEN_LOCK_INDICATOR_PIN, LOW);
- isOpened = true;
- }
- void close_lock2() {
- digitalWrite(CLOSE_LOCK_INDICATOR_PIN, HIGH);
- delay(5000);
- digitalWrite(CLOSE_LOCK_INDICATOR_PIN, LOW);
- isOpened = false;
- }
- void loop() {
- if (!mfrc522.PICC_IsNewCardPresent())
- return;
- if (!mfrc522.PICC_ReadCardSerial())
- return;
- dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size);
- Serial.println(read_rfid);
- if (read_rfid==trusted_rfid_1 && !isOpened)
- open_lock();
- Serial.println(read_rfid);
- if(read_rfid==trusted_rfid_2)
- close_lock2();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement