Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Dans ce tutoriel, je vais vous aider à interfacer RFID-RC522 avec Arduino Mega 2560 pour lire la RFID et afficher les données sur le moniteur série. afin que vous puissiez l'étendre vous-même
Vous avez besoin:
- Arduino Mega ou Arduino Uno (j'ai utilisé Mega)
- RFID-RC522
- 7 fils de liaison mâle à femelle
- Certaines cartes d'identité (facultatif)
- Bibliothèque RFID (doit, lien ci-dessous)
Ensuite, téléchargez la bibliothèque ci-dessous et ajoutez-la à votre IDE Arduino en cliquant sur Sketch-> Inclure la bibliothèque-> Ajouter la bibliothèque. Zip dans le menu Fichier
Étape 1: détail de la connexion physique
connectez simplement l'arduino avec RFID-RC522 comme indiqué dans l'image ci-dessus.
Attention: n'alimentez que 3.3V sinon le module grillera
Brochage pour Uno/Nano et Mega
MODULE RC522 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
Étape 2: Code simple pour lire et imprimer la valeur des étiquettes RFID
Copiez le code ci-dessous puis téléchargez-le sur votre Arduino
/*PINOUT: MODULE RC522 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 */ /* Inclut la bibliothèque standard Arduino SPI */ #include /* Inclut la bibliothèque RFID */ #include
/* Définit la DIO utilisée pour les broches SDA (SS) et RST (reset). */
#define SDA_DIO 9 #define RESET_DIO 8 /* Créer une instance de la bibliothèque RFID */ RFID RC522(SDA_DIO, RESET_DIO);
void setup()
{ Serial.begin(9600); /* Activer l'interface SPI */ SPI.begin(); /* Initialiser le lecteur RFID */ RC522.init(); }
boucle vide()
{ /* Une carte a-t-elle été détectée ? */ if (RC522.isCard()) { /* Si oui, récupérez son numéro de série */ RC522.readCardSerial(); Serial.println("Carte détectée:"); for(int i=0;i<5;i++) { Serial.print(RC522.serNum, DEC); //Serial.print(RC522.serNum, HEX); //pour imprimer les détails de la carte au format hexadécimal } Serial.println(); Serial.println(); } retard(1000); }
Étape 3: Code simple pour l'application Super Market utilisant la RFID
Copiez le code ci-dessous puis téléchargez-le sur votre Arduino. ci-dessous, la valeur totale d'achat sera incrémentée lors de la première lecture de la carte, puis décrémentée lors de la lecture de la même pour la deuxième fois…
/*
BROCHAGE:
MODULE RC522 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
*
* Inclut la bibliothèque standard Arduino SPI */
#include /* Inclut la bibliothèque RFID */ #include
/* Définit la DIO utilisée pour les broches SDA (SS) et RST (reset). */
#define SDA_DIO 9 #define RESET_DIO 8 int productname[5]={228, 18, 37, 75, 24}; int produit[5]={100, 120, 230, 125, 70}; jeton int[5]={0, 0, 0, 0, 0}; entier total; /* Créer une instance de la bibliothèque RFID */ RFID RC522(SDA_DIO, RESET_DIO);
void setup()
{ Serial.begin(9600); /* Activer l'interface SPI */ SPI.begin(); /* Initialiser le lecteur RFID */ RC522.init(); }
boucle vide()
{ /* Compteur de boucle temporaire */ octet i=0; octet j=0; octet k=0; ID entier;
/* Une carte a-t-elle été détectée ? */
if (RC522.isCard()) { /* Si c'est le cas, obtenez son numéro de série */ RC522.readCardSerial(); Serial.print(RC522.serNum, DEC);
//Serial.println("Carte détectée:");
/* Sortir le numéro de série vers l'UART */
ID=RC522.serNum[0]; //Série.print(ID); Serial.println(" "); for(i=0;i<5;i++) { if(productname==ID) { Serial.println("Total Purchase"); if(jeton==0) { Total=Total+produit; jeton=1; } else { Total=Total-produit; jeton=0; } Serial.println(Total); Pause; } else if(i==5) { Serial.println("Accès refusé"); Pause; } } Serial.println(); Serial.println(); } retard(1000); }
Étape 4: Conclusion.,
Je tiens à vous remercier d'avoir lu mon tutoriel. J'apprécierais que vous le trouviez utile et que vous laissiez un like (favori) ou que vous me demandiez n'importe quoi car cela me motive à faire ces instructables. n'hésitez pas à poser toutes les questions que vous avez besoin de savoir…
Bon codage Arduino…