สารบัญ:

การเชื่อมต่อ RFID-RC522 กับ Arduino MEGA เป็นภาพร่างอย่างง่าย: 4 ขั้นตอน
การเชื่อมต่อ RFID-RC522 กับ Arduino MEGA เป็นภาพร่างอย่างง่าย: 4 ขั้นตอน

วีดีโอ: การเชื่อมต่อ RFID-RC522 กับ Arduino MEGA เป็นภาพร่างอย่างง่าย: 4 ขั้นตอน

วีดีโอ: การเชื่อมต่อ RFID-RC522 กับ Arduino MEGA เป็นภาพร่างอย่างง่าย: 4 ขั้นตอน
วีดีโอ: อยากเป็นนักคิด นักประดิษฐ์ นักDIY สร้าง Access Control RFID RC522 Arduino EP.13-1 2024, มิถุนายน
Anonim
เชื่อมต่อ RFID-RC522 กับ Arduino MEGA เป็น Simple Sketch
เชื่อมต่อ RFID-RC522 กับ Arduino MEGA เป็น Simple Sketch

สวัสดีในบทช่วยสอนนี้ ฉันจะช่วยคุณในการเชื่อมต่อ RFID-RC522 กับ Arduino Mega 2560 เพื่ออ่าน RFID และแสดงข้อมูลบน Serial Monitor เพื่อให้คุณสามารถขยายได้ด้วยตัวเอง

คุณต้องการ:

  1. Arduino Mega หรือ Arduino Uno (ฉันใช้ Mega)
  2. RFID-RC522
  3. สายจัมเปอร์ตัวผู้ถึงตัวเมีย 7 เส้น
  4. บัตรประจำตัวประชาชนบางส่วน (ไม่บังคับ)
  5. ห้องสมุด RFID (ต้องมี, ลิงค์ด้านล่าง)

จากนั้นดาวน์โหลดไลบรารีด้านล่างและเพิ่มลงใน Arduino IDE ของคุณโดยคลิก Sketch->Include Library-> Add. Zip Library ในเมนูไฟล์

ขั้นตอนที่ 1: รายละเอียดการเชื่อมต่อทางกายภาพ

รายละเอียดการเชื่อมต่อทางกายภาพ
รายละเอียดการเชื่อมต่อทางกายภาพ

เพียงเชื่อมต่อ Arduino กับ RFID-RC522 ตามที่แสดงในภาพด้านบน

คำเตือน: จ่ายไฟเพียง 3.3V มิฉะนั้นโมดูลจะไหม้

ปักหมุดสำหรับ Uno/Nano และ Mega

RC522 โมดูล Uno/Nano MEGASDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ ไม่มี/ไม่มี GND GND GND RST D9 D8 3.3V 3.3V 3.3V

ขั้นตอนที่ 2: รหัสง่าย ๆ เพื่ออ่านและพิมพ์ค่าแท็ก RFID

รหัสง่าย ๆ เพื่ออ่านและพิมพ์ค่าแท็ก RFID
รหัสง่าย ๆ เพื่ออ่านและพิมพ์ค่าแท็ก 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);

การตั้งค่าเป็นโมฆะ ()

{ 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, ธ.ค.); //Serial.print(RC522.serNum, HEX); //เพื่อพิมพ์รายละเอียดการ์ดในรูปแบบเลขฐานสิบหก } Serial.println(); Serial.println(); } ล่าช้า (1000); }

ขั้นตอนที่ 3: รหัสอย่างง่ายสำหรับแอปพลิเคชัน Super Market โดยใช้ RFID

รหัสอย่างง่ายสำหรับแอปพลิเคชัน Super Market โดยใช้ RFID
รหัสอย่างง่ายสำหรับแอปพลิเคชัน Super Market โดยใช้ RFID

คัดลอกโค้ดด้านล่างแล้วอัปโหลดลงใน Arduino ของคุณ ด้านล่างมูลค่าการซื้อทั้งหมดจะเพิ่มขึ้นเมื่ออ่านบัตรครั้งแรกแล้วลดลงเมื่ออ่านเหมือนกันเป็นครั้งที่สอง…

/*

พินเอาต์:

RC522 MODULE Uno/Nano MEGA

SDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ ไม่มี ไม่มี 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 ชื่อผลิตภัณฑ์[5]={228, 18, 37, 75, 24}; ผลิตภัณฑ์ int[5]={100, 120, 230, 125, 70}; โทเค็น int[5]={0, 0, 0, 0, 0}; รวมทั้งหมด; /* สร้างอินสแตนซ์ของไลบรารี RFID */ RFID RC522(SDA_DIO, RESET_DIO);

การตั้งค่าเป็นโมฆะ ()

{ Serial.begin(9600); /* เปิดใช้งานอินเทอร์เฟซ SPI */ SPI.begin(); /* เริ่มต้นเครื่องอ่าน RFID */ RC522.init(); }

วงเป็นโมฆะ ()

{ /* ตัวนับลูปชั่วคราว */ ไบต์ i=0; ไบต์ j=0; ไบต์ k=0; รหัสภายใน;

/* ตรวจพบการ์ดหรือไม่? */

if (RC522.isCard()) { /* ถ้าใช่ ให้หาหมายเลขประจำเครื่อง */ RC522.readCardSerial(); Serial.print(RC522.serNum, ธ.ค.);

//Serial.println("ตรวจพบการ์ด:");

/* ส่งออกหมายเลขซีเรียลไปยัง UART */

ID=RC522.serNum[0]; // Serial.print (ID); Serial.println(" "); for(i=0;i<5;i++) { if(productname==ID) { Serial.println("Total Purchase"); if(token==0) { Total=Total+product; โทเค็น=1; } else { Total=Total-product; โทเค็น=0; } Serial.println (รวม); หยุดพัก; } else if(i==5) { Serial.println("Access Denied"); หยุดพัก; } } Serial.println(); Serial.println(); } ล่าช้า (1000); }

ขั้นตอนที่ 4: บทสรุป,

ฉันอยากจะขอบคุณสำหรับการอ่านกวดวิชาของฉัน ฉันจะขอบคุณถ้าคุณพบว่ามีประโยชน์และชอบ (รายการโปรด) หรือถามอะไรฉันเพราะมันทำให้ฉันมีแรงจูงใจที่จะทำตามคำแนะนำเหล่านี้ อย่าลังเลที่จะถามคำถามใด ๆ ที่คุณจำเป็นต้องรู้ …

แฮปปี้โค้ดดิ้ง Arduino…

แนะนำ: