WeMOS: D1 R1 mini RFID
Jump to navigation
Jump to search
Download
https://github.com/miguelbalboa/rfid
mv rfid-master.zip Arduino/libraries/ cd Arduino/libraries/ unzip rfid-master.zip
Source
/** Useful links https://wiki.wemos.cc/products:d1:d1_mini https://cdn-images-1.medium.com/max/1400/1*YKc8KpAfMrlhrOLmNjdRwQ.png (D1 full pinout) https://github.com/Jorgen-VikingGod/ESP8266-MFRC522 https://github.com/miguelbalboa/rfid d1 mini rc52 wiring https://discourse-cdn-sjc1.com/business5/uploads/mydevices/original/2X/e/ecedba79dc05f2c0b02b7fba8b3da2681590a11a.jpg RST - D3 MISO - D6 MOSI - D7 SCK - D5 SDA - D8 */ #include "ESP8266WiFi.h" #include <SPI.h> #include <MFRC522.h> constexpr uint8_t RST_PIN = 0; // Configurable, see typical pin layout above 18 constexpr uint8_t SS_PIN = 15; // Configurable, see typical pin layout above 16 MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance void setup() { Serial.begin(74880); // Initialize serial communications with the PC delay(1000); Serial.println("Setup"); while (!Serial); // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4) SPI.begin(); // Init SPI bus mfrc522.PCD_Init(); // Init MFRC522 mfrc522.PCD_DumpVersionToSerial(); // Show details of PCD - MFRC522 Card Reader details Serial.println(F("Scan PICC to see UID, SAK, type, and data blocks...")); Serial.println("Setup done"); } void loop() { // Serial.println("Loop..."); // Look for new cards if ( ! mfrc522.PICC_IsNewCardPresent()) { //delay(50); return; } // Select one of the cards if ( ! mfrc522.PICC_ReadCardSerial()) { //delay(50); return; } // Show some details of the PICC (that is: the tag/card) Serial.print(F("Card UID:")); dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size); Serial.println(); // Dump debug info about the card; PICC_HaltA() is automatically called //mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
delay(1000); }
// Helper routine to dump a byte array as hex values to Serial void dump_byte_array(byte *buffer, byte bufferSize) { for (byte i = 0; i < bufferSize; i++) { Serial.print(buffer[i] < 0x10 ? " 0" : " "); Serial.print(buffer[i], HEX); } }