MAJ Firmware pour Identification par Pilote
This commit is contained in:
parent
0d4df4c0fc
commit
08c0d2a9d9
74
src/main.cpp
74
src/main.cpp
|
@ -2,65 +2,73 @@
|
||||||
#include <SPI.h>
|
#include <SPI.h>
|
||||||
#include <MFRC522.h>
|
#include <MFRC522.h>
|
||||||
|
|
||||||
#define RST_PIN 9 // Configurable, see typical pin layout above
|
#define RST_PIN 9 // Configurable, see typical pin layout above
|
||||||
#define SS_1_PIN 10 // Configurable, take a unused pin, only HIGH/LOW required, must be different to SS 2
|
#define SS_1_PIN 10 // Configurable, take a unused pin, only HIGH/LOW required, must be different to SS 2
|
||||||
|
|
||||||
MFRC522 mfrc522; // Create MFRC522 instance.
|
MFRC522 mfrc522; // Create MFRC522 instance.
|
||||||
String SerialCMD;
|
String SerialCMD;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper routine to dump a byte array as hex values to Serial.
|
* Helper routine to dump a byte array as hex values to Serial.
|
||||||
*/
|
*/
|
||||||
void dump_byte_array(byte *buffer, byte bufferSize) {
|
void dump_byte_array(byte *buffer, byte bufferSize)
|
||||||
for (byte i = 0; i < bufferSize; i++) {
|
{
|
||||||
|
for (byte i = 0; i < bufferSize; i++)
|
||||||
|
{
|
||||||
Serial.print(buffer[i] < 0x10 ? " 0" : " ");
|
Serial.print(buffer[i] < 0x10 ? " 0" : " ");
|
||||||
Serial.print(buffer[i], HEX);
|
Serial.print(buffer[i], HEX);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void serialprint_rfid_uid()
|
||||||
|
{
|
||||||
|
Serial.print(F("R#"));
|
||||||
|
// Show some details of the PICC (that is: the tag/card)
|
||||||
|
dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size);
|
||||||
|
Serial.print(F("#"));
|
||||||
|
MFRC522::PICC_Type piccType = mfrc522.PICC_GetType(mfrc522.uid.sak);
|
||||||
|
// Serial.println(mfrc522.PICC_GetTypeName(piccType));
|
||||||
|
Serial.print(piccType, HEX);
|
||||||
|
Serial.print(F("#"));
|
||||||
|
Serial.println(mfrc522.PICC_GetTypeName(piccType));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize.
|
* Initialize.
|
||||||
*/
|
*/
|
||||||
void setup() {
|
void setup()
|
||||||
|
{
|
||||||
|
|
||||||
Serial.begin(9600); // Initialize serial communications with the PC
|
Serial.begin(9600); // Initialize serial communications with the PC
|
||||||
while (!Serial); // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
|
while (!Serial)
|
||||||
|
; // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
|
||||||
|
|
||||||
SPI.begin(); // Init SPI bus
|
SPI.begin(); // Init SPI bus
|
||||||
|
|
||||||
mfrc522.PCD_Init(SS_1_PIN, RST_PIN); // Init each MFRC522 card
|
mfrc522.PCD_Init(SS_1_PIN, RST_PIN); // Init each MFRC522 card
|
||||||
Serial.print(F("Reader "));
|
Serial.print(F("AT168RC522#Reader#"));
|
||||||
Serial.print(F(": "));
|
|
||||||
mfrc522.PCD_DumpVersionToSerial();
|
mfrc522.PCD_DumpVersionToSerial();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Main loop.
|
* Main loop.
|
||||||
*/
|
*/
|
||||||
void loop() {
|
void loop()
|
||||||
|
{
|
||||||
|
|
||||||
if (Serial.available() > 0) {
|
if (Serial.available() > 0)
|
||||||
SerialCMD = Serial.readString();
|
{
|
||||||
SerialCMD.trim();
|
SerialCMD = Serial.readString();
|
||||||
}
|
SerialCMD.trim();
|
||||||
|
}
|
||||||
|
|
||||||
if ((mfrc522.PICC_IsNewCardPresent() || SerialCMD.startsWith("READ") ) && mfrc522.PICC_ReadCardSerial()) {
|
if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial())
|
||||||
Serial.print(F("R#"));
|
{
|
||||||
// Show some details of the PICC (that is: the tag/card)
|
serialprint_rfid_uid();
|
||||||
dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size);
|
// Halt PICC
|
||||||
Serial.print(F("#"));
|
mfrc522.PICC_HaltA();
|
||||||
MFRC522::PICC_Type piccType = mfrc522.PICC_GetType(mfrc522.uid.sak);
|
// Stop encryption on PCD
|
||||||
//Serial.println(mfrc522.PICC_GetTypeName(piccType));
|
mfrc522.PCD_StopCrypto1();
|
||||||
Serial.print(piccType,HEX);
|
}
|
||||||
Serial.print(F("#"));
|
|
||||||
Serial.println(mfrc522.PICC_GetTypeName(piccType));
|
|
||||||
|
|
||||||
// Halt PICC
|
|
||||||
mfrc522.PICC_HaltA();
|
|
||||||
// Stop encryption on PCD
|
|
||||||
mfrc522.PCD_StopCrypto1();
|
|
||||||
|
|
||||||
//Reset SerialCMD
|
|
||||||
SerialCMD = "";
|
|
||||||
}
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue