Мы соберем электронный замок)))
Для начала разработки замка рассмотрим процесс считывания и почитаем данные карты метрополитена.Именно их мы и будем использовать их.Для этого нам понадобиться:
Библиотеки можно скачать в каталоге файлов
Перейдем к схеме:
Если тут не возникает вопросов.То перейдем к коду:
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 9
#define SS_PIN 10
MFRC522 mfrc522(SS_PIN, RST_PIN); // Создаем экземпляр MFRC522
void setup() {
Serial.begin(9600); // Настраиваем порт
while (!Serial);
SPI.begin(); //Начинаем работать по spi с устройством
mfrc522.PCD_Init();
ShowReaderDetails(); // Показать детали карты
Serial.println(F("Сканирование PICC, смотрим блоки UID ..."));
}
void loop() {
// Ищем новые карты
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}
// Выберите одну из карт
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}
// Выдача отладочной информации о карточке
mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
}
void ShowReaderDetails() {
// Получаем программное обеспечение MFRC522
byte v = mfrc522.PCD_ReadRegister(mfrc522.VersionReg);
Serial.print(F("MFRC522 Software Version: 0x"));
Serial.print(v, HEX);
if (v == 0x91)
Serial.print(F(" = v1.0"));
else if (v == 0x92)
Serial.print(F(" = v2.0"));
else
Serial.print(F(" (unknown)"));
Serial.println("");
// Когда 0x00 0xFF , вероятно, не удалось связаться
if ((v == 0x00) || (v == 0xFF)) {
Serial.println(F("WARNING: Карты неисправна или проверьте считыватель!"));
}
}
Теперь в "Мониторе порта" вы можете наблюдать данные с карты.Модуль работает по интерфейсу SPI (англ. Serial Peripheral Interface, SPI bus — последовательный периферийный интерфейс, шина SPI) — последовательный синхронный стандарт передачи данных в режиме полного дуплекса, предназначенный для обеспечения простого и недорогого сопряжения микроконтроллеров и периферии. SPI также иногда называют четырёхпроводным (англ. four-wire) интерфейсом.Удачи.