V tem primeru bomo povezali RFID čitalnik (RC522) in LED diodo. Čitalnik preko SPI vodila Arduinu sporoči UID številko kartice. Če se številka ujema s tisto v kodi, Arduino vklopi LED indikator.
RFID RC522:
LED indikator:
POMEMBNO: RFID modul RC522 deluje na 3.3V. Priklop na 5V pin lahko trajno poškoduje modul!
Za delovanje potrebujete knjižnico MFRC522. Namestite jo v Arduino IDE: Sketch -> Include Library -> Manage Libraries (iščite "MFRC522", avtor GithubCommunity).
/* * KNJIŽNICA: Namestite "MFRC522" (avtor: GithubCommunity)
* VEZAVA: RFID na SPI pine (10, 11, 12, 13, 9), LED na Pin 2
*/
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 9
#define SS_PIN 10
#define LED_PIN 2
MFRC522 mfrc522(SS_PIN, RST_PIN);
// Vpišite UID vaše kartice, ki ste ga odčitali v Serial Monitorju
byte dovoljenUID[] = {0x70, 0x14, 0xD0, 0x13};
void setup() {
Serial.begin(9600);
SPI.begin();
mfrc522.PCD_Init();
pinMode(LED_PIN, OUTPUT);
digitalWrite(LED_PIN, LOW);
Serial.println("Sistem pripravljen...");
}
void loop() {
// Preveri, če je kartica prisotna
if (!mfrc522.PICC_IsNewCardPresent()) return;
if (!mfrc522.PICC_ReadCardSerial()) return;
bool jePravilna = true;
for (byte i = 0; i < mfrc522.uid.size; i++) {
if (mfrc522.uid.uidByte[i] != dovoljenUID[i]) {
jePravilna = false;
break;
}
}
if (jePravilna) {
Serial.println("Prepoznano: Vklop LED");
digitalWrite(LED_PIN, HIGH);
delay(3000);
digitalWrite(LED_PIN, LOW);
} else {
Serial.println("Neznana kartica");
}
delay(1000);
}
Hvala za obisk! Dodajam politiko zasebnosti.
© 2024 Vse pravice pridržane.
Vam je koda pomagala? Če želite podpreti moj trud pri pripravi vodičev in vzdrževanju strani, mi lahko namenite donacijo za kavo.