Mục lục:

Giao diện RFID-RC522 với Arduino MEGA một bản phác thảo đơn giản: 4 bước
Giao diện RFID-RC522 với Arduino MEGA một bản phác thảo đơn giản: 4 bước

Video: Giao diện RFID-RC522 với Arduino MEGA một bản phác thảo đơn giản: 4 bước

Video: Giao diện RFID-RC522 với Arduino MEGA một bản phác thảo đơn giản: 4 bước
Video: Arduino | Cách sử dụng mạch RFID RC522 | PHẦN 1 2024, Tháng sáu
Anonim
Giao diện RFID-RC522 với Arduino MEGA một bản phác thảo đơn giản
Giao diện RFID-RC522 với Arduino MEGA một bản phác thảo đơn giản

Trong hướng dẫn này, tôi sẽ giúp bạn giao tiếp RFID-RC522 với Arduino Mega 2560 để đọc RFID và hiển thị dữ liệu trên màn hình nối tiếp. vì vậy bạn có thể tự mở rộng nó

Bạn cần:

  1. Arduino Mega hoặc Arduino Uno (tôi đã sử dụng Mega)
  2. RFID-RC522
  3. 7 dây nhảy nam nữ
  4. Một số thẻ ID (tùy chọn)
  5. Thư viện RFID (Phải, Liên kết bên dưới)

Sau đó, Tải xuống thư viện Dưới đây và Thêm nó vào IDE Arduino của bạn bằng cách nhấp vào Sketch-> Bao gồm Thư viện-> Thêm Thư viện. Zip trong menu tệp

Bước 1: Chi tiết kết nối vật lý

Chi tiết kết nối vật lý
Chi tiết kết nối vật lý

chỉ cần kết nối arduino với RFID-RC522 như trong hình trên.

Cảnh báo: chỉ cung cấp 3.3V nếu không mô-đun sẽ bị cháy

Pin Out cho Uno / Nano và 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

Bước 2: Mã đơn giản để đọc và in giá trị thẻ RFID

Mã đơn giản để đọc và in giá trị thẻ RFID
Mã đơn giản để đọc và in giá trị thẻ RFID

Sao chép mã Dưới đây rồi tải nó lên Arduino của bạn

/ * 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 * / / * Bao gồm thư viện Arduino SPI tiêu chuẩn * / #include / * Bao gồm thư viện RFID * / #include

/ * Xác định DIO được sử dụng cho các chân SDA (SS) và RST (đặt lại). * /

#define SDA_DIO 9 #define RESET_DIO 8 / * Tạo một phiên bản của thư viện RFID * / RFID RC522 (SDA_DIO, RESET_DIO);

void setup ()

{Serial.begin (9600); / * Kích hoạt giao diện SPI * / SPI.begin (); / * Khởi tạo đầu đọc RFID * / RC522.init (); }

void loop ()

{/ * Có thẻ được phát hiện không? * / if (RC522.isCard ()) {/ * Nếu vậy thì lấy số sê-ri của nó * / RC522.readCardSerial (); Serial.println ("Đã phát hiện thẻ:"); for (int i = 0; i <5; i ++) {Serial.print (RC522.serNum , DEC); //Serial.print(RC522.serNum, HEX); // để in chi tiết thẻ ở định dạng Hexa Decimal} Serial.println (); Serial.println (); } delay (1000); }

Bước 3: Mã đơn giản cho ứng dụng Siêu thị sử dụng RFID

Mã đơn giản cho ứng dụng siêu thị sử dụng RFID
Mã đơn giản cho ứng dụng siêu thị sử dụng RFID

Sao chép mã Dưới đây rồi tải nó lên Arduino của bạn. ở bên dưới, tổng giá trị mua hàng sẽ tăng lên khi đọc thẻ lần đầu tiên sau đó giảm khi đọc thẻ lần thứ hai…

/*

BẬT MÍ:

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

*

* Bao gồm thư viện Arduino SPI tiêu chuẩn * /

#include / * Bao gồm thư viện RFID * / #include

/ * Xác định DIO được sử dụng cho các chân SDA (SS) và RST (đặt lại). * /

#define SDA_DIO 9 #define RESET_DIO 8 int productname [5] = {228, 18, 37, 75, 24}; int product [5] = {100, 120, 230, 125, 70}; mã thông báo int [5] = {0, 0, 0, 0, 0}; int Tổng số; / * Tạo một phiên bản của thư viện RFID * / RFID RC522 (SDA_DIO, RESET_DIO);

void setup ()

{Serial.begin (9600); / * Kích hoạt giao diện SPI * / SPI.begin (); / * Khởi tạo đầu đọc RFID * / RC522.init (); }

void loop ()

{/ * Bộ đếm vòng lặp tạm thời * / byte i = 0; byte j = 0; byte k = 0; int ID;

/ * Có thẻ bị phát hiện không? * /

if (RC522.isCard ()) {/ * Nếu vậy thì lấy số sê-ri của nó * / RC522.readCardSerial (); Serial.print (RC522.serNum , DEC);

//Serial.println("Card đã phát hiện: ");

/ * Xuất số sê-ri vào UART * /

ID = RC522.serNum [0]; //Serial.print(ID); Serial.println (""); for (i = 0; i <5; i ++) {if (productname == ID) {Serial.println ("Tổng lượt mua"); if (token == 0) {Total = Total + product ; mã thông báo = 1; } else {Total = Total-product ; mã thông báo = 0; } Serial.println (Tổng cộng); nghỉ; } else if (i == 5) {Serial.println ("Truy cập Bị Từ chối"); nghỉ; }} Serial.println (); Serial.println (); } delay (1000); }

Bước 4: Kết luận.,

Tôi muốn cảm ơn bạn đã đọc hướng dẫn của tôi. Tôi sẽ đánh giá cao nếu bạn thấy nó hữu ích và thả một lượt thích (yêu thích) hoặc hỏi tôi bất cứ điều gì vì nó giúp tôi có động lực để thực hiện những hướng dẫn này. vui lòng hỏi bất kỳ câu hỏi nào bạn cần biết…

Happy Coding Arduino…

Đề xuất: