Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Sveiki, šioje pamokoje aš padėsiu jums susieti RFID-RC522 su „Arduino Mega 2560“, kad galėtumėte skaityti RFID ir rodyti duomenis serijiniame monitoriuje. kad galėtumėte ją pratęsti savarankiškai
Tau reikia:
- „Arduino Mega“arba „Arduino Uno“(aš naudojau „Mega“)
- RFID-RC522
- 7 jungiamieji laidai nuo patelių iki moterų
- Kai kurios asmens tapatybės kortelės (neprivaloma)
- RFID biblioteka (būtina, nuoroda žemiau)
Tada atsisiųskite žemiau esančią biblioteką ir pridėkite ją prie „Arduino IDE“spustelėdami Eskizas-> Įtraukti biblioteką-> Pridėti. Zip biblioteką failų meniu
1 žingsnis: fizinio ryšio informacija
tiesiog prijunkite arduino prie RFID-RC522, kaip parodyta aukščiau esančiame paveikslėlyje.
Įspėjimas: maitinkite tik 3.3V, kitaip modulis sudegs
Prijunkite „Uno“/„Nano“ir „Mega“
RC522 MODULIS Uno/Nano MEGASDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ N/A N/A GND GND GND RST D9 D8 3.3V 3.3V 3.3V
2 veiksmas: paprastas RFID žymų vertės skaitymo ir spausdinimo kodas
Nukopijuokite žemiau esantį kodą, tada įkelkite jį į „Arduino“
/*PINOUT: RC522 MODULIS Uno/Nano MEGA SDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ N/AN/A GND GND GND RST D9 D8 3.3V 3.3V 3.3V*//*Įtraukite standartinę „Arduino SPI“biblioteką */ #include/ *Įtraukti RFID biblioteką */ #include
/* Apibrėžkite DIO, naudojamą SDA (SS) ir RST (atstatymo) kaiščiams. */
#define SDA_DIO 9 #define RESET_DIO 8 / * Sukurkite RFID bibliotekos egzempliorių * / RFID RC522 (SDA_DIO, RESET_DIO);
negaliojanti sąranka ()
{Serial.begin (9600); / * Įgalinti SPI sąsają */ SPI.begin (); / * Inicijuokite RFID skaitytuvą */ RC522.init (); }
tuštumos kilpa ()
{ /* Ar aptikta kortelė? */ if (RC522.isCard ()) {/ *Jei taip, gaukite jos serijos numerį */ RC522.readCardSerial (); Serial.println ("Aptikta kortelė:"); už (int i = 0; i <5; i ++) {Serial.print (RC522.serNum , DEC); // serijinis atspaudas (RC522.serNum, HEX); // išspausdinti kortelės informaciją šešioliktainiu dešimtainiu formatu} Serial.println (); Serial.println (); } uždelsimas (1000); }
3 veiksmas: paprastas „Super Market“taikymo kodas naudojant RFID
Nukopijuokite žemiau esantį kodą, tada įkelkite jį į „Arduino“. Toliau bendra pirkimo vertė padidės pirmą kartą skaitant kortelę, o sumažės skaitant tą patį antrą kartą …
/*
PINOUT:
RC522 MODULIS Uno/Nano MEGA
SDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ N/A N/A GND GND GND RST D9 D8 3.3V 3.3V 3.3V
*
* Įtraukite standartinę „Arduino SPI“biblioteką */
#include / * Įtraukti RFID biblioteką * / #include
/* Apibrėžkite DIO, naudojamą SDA (SS) ir RST (atstatymo) kaiščiams. */
#define SDA_DIO 9 #define RESET_DIO 8 int productname [5] = {228, 18, 37, 75, 24}; int produktas [5] = {100, 120, 230, 125, 70}; int žetonas [5] = {0, 0, 0, 0, 0}; int Iš viso; / * Sukurkite RFID bibliotekos egzempliorių */ RFID RC522 (SDA_DIO, RESET_DIO);
negaliojanti sąranka ()
{Serial.begin (9600); / * Įgalinti SPI sąsają */ SPI.begin (); / * Inicijuokite RFID skaitytuvą */ RC522.init (); }
tuštumos kilpa ()
{ / * Laikinas kilpos skaitiklis * / baitas i = 0; baitas j = 0; baitas k = 0; int ID;
/* Ar aptikta kortelė? */
if (RC522.isCard ()) { / * Jei taip, gaukite jos serijos numerį * / RC522.readCardSerial (); Serijinis atspaudas (RC522.serNum , DEC);
//Serial.println("Atrasta kortelė: ");
/ * Išveskite serijos numerį į UART */
ID = RC522.serNum [0]; // Serijos.spaudas (ID); Serial.println (""); už (i = 0; i <5; i ++) {if (produkto pavadinimas == ID) {Serial.println („Visas pirkimas“); if (žetonas == 0) {Iš viso = Iš viso+produktas ; žetonas = 1; } else {Iš viso = Bendras produktas ; žetonas = 0; } Serial.println (Iš viso); pertrauka; } else if (i == 5) {Serial.println ("Prieiga uždrausta"); pertrauka; }} Serial.println (); Serial.println (); } uždelsimas (1000); }
4 žingsnis: Išvada
Norėčiau padėkoti, kad perskaitėte mano vadovėlį. Būčiau dėkingas, jei jums tai būtų naudinga ir pamestumėte mėgstamą (mėgstamiausią) arba ko nors paklaustumėte, nes tai mane motyvuoja daryti šiuos nurodymus. nedvejodami užduokite visus klausimus, kuriuos turite žinoti…
Laimingas kodavimas Arduino…