yardimcioyuncu1
Hectopat
- Katılım
- 19 Eylül 2020
- Mesajlar
- 137
- Çözümler
- 4
Daha fazla
- Cinsiyet
- Erkek
Merhaba, ben Arduino ile RFID kart modülünü alıp Robotistan kanalının videosunu izledim sistem sıkıntısız çalışıyor. Fakat bu sistemde tek kart kullanılıyor ben birden fazla kart eklemek istiyorum. Nasıl ekleyebilirim?
Kod aşağıdadır.
Kod aşağıdadır.
Kod:
#include <SPI.h> //SPI kütüphanemizi tanımlıyoruz.
#include <MFRC522.h> //MFRC522 kütüphanemizi tanımlıyoruz.
#include <Servo.h> //Servo kütüphanemizi tanımlıyoruz.
int RST_PIN = 9; //RC522 modülü reset pinini tanımlıyoruz.
int SS_PIN = 10; //RC522 modülü chip select pinini tanımlıyoruz.
int servoPin = 8; //Servo motor pinini tanımlıyoruz.
Servo motor; //Servo motor için değişken oluşturuyoruz.
MFRC522 rfid(SS_PIN, RST_PIN); //RC522 modülü ayarlarını yapıyoruz.
byte ID[4] = {62, 97, 170, 89}; //Yetkili kart ID'sini tanımlıyoruz.
void setup() {
motor.attach(servoPin); //Servo motor pinini motor değişkeni ile ilişkilendiriyoruz.
Serial.begin(9600); //Seri haberleşmeyi başlatıyoruz.
SPI.begin(); //SPI iletişimini başlatıyoruz.
rfid.PCD_Init(); //RC522 modülünü başlatıyoruz.
}
void loop() {
if ( ! rfid.PICC_IsNewCardPresent()) //Yeni kartın okunmasını bekliyoruz.
return;
if ( ! rfid.PICC_ReadCardSerial()) //Kart okunmadığı zaman bekliyoruz.
return;
if (rfid.uid.uidByte[0] == ID[0] && //Okunan kart ID'si ile ID değişkenini karşılaştırıyoruz.
rfid.uid.uidByte[1] == ID[1] &&
rfid.uid.uidByte[2] == ID[2] &&
rfid.uid.uidByte[3] == ID[3] ) {
Serial.println("HOŞ GELDİNİZ ÜYE:UMUT SAYLAĞ YETKİSİ:KÜTÜPHANE ÜYESİ");
ekranaYazdir();
motor.write(180); //Servo motoru 180 dereceye getiriyoruz.
delay(3000);
motor.write(0); //Servo motoru 0 dereceye getiriyoruz.
delay(1000);
}
else{ //Yetkisiz girişte içerideki komutlar çalıştırılır.
Serial.println("BU KARTTA KULLANICI KAYDI BULUNAMADI KARTA SİSTEME KULLANICI TANIMLAYIN");
ekranaYazdir();
}
rfid.PICC_HaltA();
}
void ekranaYazdir(){
Serial.print("ID Numarasi: ");
for(int sayac = 0; sayac < 4; sayac++){
Serial.print(rfid.uid.uidByte[sayac]);
Serial.print(" ");
}
Serial.println("");
}
Son düzenleyen: Moderatör: