Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-13 06:57
Hai εκεί σε αυτό το σεμινάριο θα σας βοηθήσω να διασυνδέσετε το RFID-RC522 με το Arduino Mega 2560 για να διαβάσετε το RFID και να εμφανίσετε τα δεδομένα στη σειριακή οθόνη. ώστε να μπορείτε να το επεκτείνετε μόνοι σας
Χρειάζεσαι:
- Arduino Mega ή Arduino Uno (χρησιμοποίησα Mega)
- RFID-RC522
- 7 καλώδια από jumper αρσενικά προς θηλυκά
- Ορισμένα δελτία ταυτότητας (προαιρετικά)
- Βιβλιοθήκη RFID (πρέπει, παρακάτω σύνδεσμος)
Στη συνέχεια, κατεβάστε την παρακάτω βιβλιοθήκη και προσθέστε την στο Arduino IDE κάνοντας κλικ στην επιλογή Sketch-> Include Library-> Add. Zip Library στο μενού αρχείων
Βήμα 1: Λεπτομέρεια φυσικής σύνδεσης
απλά συνδέστε το arduino με το RFID-RC522 όπως φαίνεται στην παραπάνω εικόνα.
Προειδοποίηση: τροφοδοτήστε μόνο 3,3V διαφορετικά η μονάδα θα καεί
Pin Out για Uno/Nano και Mega
RC522 MODULE 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: Απλός κώδικας για ανάγνωση και εκτύπωση τιμής ετικετών RFID
Αντιγράψτε τον παρακάτω κώδικα και, στη συνέχεια, ανεβάστε τον στο Arduino σας
/*PINOUT: RC522 MODULE 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*//*Συμπεριλάβετε την τυπική βιβλιοθήκη Arduino SPI */ #include/ *Συμπεριλάβετε τη βιβλιοθήκη RFID */ #include
/* Ορίστε το DIO που χρησιμοποιείται για τις καρφίτσες SDA (SS) και RST (επαναφορά). */
#define SDA_DIO 9 #define RESET_DIO 8 / * Δημιουργήστε ένα παράδειγμα της βιβλιοθήκης RFID * / RFID RC522 (SDA_DIO, RESET_DIO).
void setup ()
{Serial.begin (9600); / * Ενεργοποιήστε τη διεπαφή SPI */ SPI.begin (); / * Αρχικοποιήστε τον αναγνώστη RFID */ RC522.init (); }
κενός βρόχος ()
{ /* Εντοπίστηκε κάρτα; */ if (RC522.isCard ()) {/ *Αν ναι, τότε λάβετε τον σειριακό αριθμό του */ RC522.readCardSerial (); Serial.println ("Η κάρτα εντοπίστηκε:"); για (int i = 0; i <5; i ++) {Serial.print (RC522.serNum , DEC); //Serial.print(RC522.serNum , HEX); // για εκτύπωση λεπτομερειών κάρτας σε μορφή δεκαδικού Hexa} Serial.println (); Serial.println (); } καθυστέρηση (1000); }
Βήμα 3: Απλός κώδικας για εφαρμογή Super Market χρησιμοποιώντας RFID
Αντιγράψτε τον παρακάτω κώδικα και, στη συνέχεια, ανεβάστε τον στο Arduino σας. στα παρακάτω, η συνολική αξία αγοράς θα αυξηθεί κατά την πρώτη ανάγνωση της κάρτας και στη συνέχεια θα μειωθεί κατά την ανάγνωση της ίδιας για δεύτερη φορά…
/*
PINOUT:
RC522 MODULE 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
*
* Συμπεριλάβετε την τυπική βιβλιοθήκη Arduino SPI */
#include / * Συμπεριλάβετε τη βιβλιοθήκη RFID * / #include
/* Ορίστε το DIO που χρησιμοποιείται για τις καρφίτσες SDA (SS) και RST (επαναφορά). */
#define SDA_DIO 9 #define RESET_DIO 8 int name name [5] = {228, 18, 37, 75, 24}; int προϊόν [5] = {100, 120, 230, 125, 70}; int διακριτικό [5] = {0, 0, 0, 0, 0}; int Σύνολο? / * Δημιουργήστε ένα παράδειγμα της βιβλιοθήκης RFID */ RFID RC522 (SDA_DIO, RESET_DIO).
void setup ()
{Serial.begin (9600); / * Ενεργοποιήστε τη διεπαφή SPI */ SPI.begin (); / * Αρχικοποιήστε τον αναγνώστη RFID */ RC522.init (); }
κενός βρόχος ()
{ / * Προσωρινός μετρητής βρόχου * / byte i = 0; byte j = 0; byte k = 0; int ID;
/* Εντοπίστηκε κάρτα; */
if (RC522.isCard ()) { / * Εάν ναι, τότε λάβετε τον σειριακό αριθμό του * / RC522.readCardSerial (); Serial.print (RC522.serNum , DEC);
//Serial.println("Ανίχνευση κάρτας: ");
/ * Εξάγετε τον σειριακό αριθμό στο UART */
ID = RC522.serNum [0]; //Serial.print(ID); Serial.println (""); για (i = 0; i <5; i ++) {if (όνομα προϊόντος == ID) {Serial.println ("Συνολική αγορά"); εάν (διακριτικό == 0) {Σύνολο = Σύνολο+προϊόν ; διακριτικό = 1; } else {Σύνολο = Συνολικό προϊόν ; διακριτικό = 0; } Serial.println (Σύνολο); Διακοπή; } else if (i == 5) {Serial.println ("Αρνήθηκε η πρόσβαση"); Διακοπή; }} Serial.println (); Serial.println (); } καθυστέρηση (1000); }
Βήμα 4: Συμπέρασμα.,
Θα ήθελα να σας ευχαριστήσω που διαβάσατε το σεμινάριο μου. Θα το εκτιμούσα αν το βρήκατε χρήσιμο και μου δώσετε ένα like (αγαπημένο) ή με ρωτήσετε οτιδήποτε, καθώς αυτό μου δίνει κίνητρο να κάνω αυτές τις οδηγίες. μη διστάσετε να κάνετε οποιεσδήποτε ερωτήσεις πρέπει να γνωρίζετε…
Happy Coding Arduino…