35 lines
716 B
C++
35 lines
716 B
C++
#include "RFID.h"
|
|
|
|
RFIDReader::RFIDReader(int ssPin, int rstPin)
|
|
: _rfid(ssPin, rstPin) {}
|
|
|
|
void RFIDReader::begin() {
|
|
SPI.begin();
|
|
_rfid.PCD_Init();
|
|
}
|
|
|
|
bool RFIDReader::check() {
|
|
if (!_rfid.PICC_IsNewCardPresent()) return false;
|
|
if (!_rfid.PICC_ReadCardSerial()) return false;
|
|
|
|
_rfid.PICC_HaltA();
|
|
return true;
|
|
}
|
|
|
|
void RFIDReader::printUID() const {
|
|
Serial.print(F("RFID Tag UID:"));
|
|
for (byte i = 0; i < _rfid.uid.size; i++) {
|
|
Serial.print(_rfid.uid.uidByte[i] < 0x10 ? " 0" : " ");
|
|
Serial.print(_rfid.uid.uidByte[i], HEX);
|
|
}
|
|
Serial.println();
|
|
}
|
|
|
|
const byte* RFIDReader::getUID() const {
|
|
return _rfid.uid.uidByte;
|
|
}
|
|
|
|
byte RFIDReader::getUIDSize() const {
|
|
return _rfid.uid.size;
|
|
}
|