Étape 4: Partie de logiciel :
/ Projet de lecteur carte RFID Voice Robimek 2015
Licence de logiciel de Robimek
#include < SPI.h >
#include < RFID.h >
#include < Wtv020sd16p.h >
int resetPin = 2 ;
int clockPin = 3 ;
int dataPin = 4 ;
int busyPin = 5 ;
Wtv020sd16p wtv020sd16p(resetPin,clockPin,dataPin,busyPin) ;
RFID rfid(10,9) ; ve de sda RFID réinitialisation pinleri
emaomos Byte [5] = {19,168,166,2,31} ; kartın kimlik numarası
serNum Byte [5] ;
octet de données [5] ;
int LED_access = 6 ; Yeşil conduit
int LED_intruder = 7 ; kırmızı conduit
void setup() {}
wtv020sd16p.Reset() ;
Serial.Begin(9600) ;
RFID.init() ;
pinMode(LED_access,OUTPUT) ;
pinMode(LED_intruder,OUTPUT) ;
}
void loop() {}
Boolean emaomos_card = true ;
Si (rfid.isCard()) {/ / karttan verilerin okunması
Si (rfid.readCardSerial()) {}
Delay(1000) ;
Data [0] = rfid.serNum[0] ;
données [1] = rfid.serNum[1] ;
données [2] = rfid.serNum[2] ;
données [3] = rfid.serNum[3] ;
données [4] = rfid.serNum[4] ;
}
pour (int i = 0; i < 5; i ++) {}
Si (données [i]! = emaomos[i]) emaomos_card = false ;
}
Si (emaomos_card) {/ / kartın verileri eşleşiyor ise
wtv020sd16p.playVoice(2) ;
Delay(4000) ;
digitalWrite(LED_access,HIGH) ;
Delay(2000) ; digitalWrite(LED_access,LOW) ;
}
else {/ / kimlik per eşleşmiyor ise
wtv020sd16p.playVoice(1) ;
Delay(4000) ;
digitalWrite (LED_intruder, élevé) ;
Delay(2000) ;
digitalWrite (LED_intruder, basse) ;
}
Delay(500) ;
RFID.Halt() ;
}
}
Plus d’informations : http://www.robimek.com/rfid-sesli-kart-okuyucu-projesi/