0

ESP32 giao tiếp RFID RC522 sử dụng ESP-IDF

ESP32 RC522

Hiện nay các ứng dụng với RFID không còn xa lạ với chúng ta, với một nguồn mở source code khổng lồ như Arduino, STM, … cách tiếp cận với module RFID RC522 trở nên vô cùng dễ dàng. Tuy nhiên, với nguồn thư viện sử dụng trên ESP32 ESP-IDF hiện nay khá hạn chế, vì vậy hôm nay mình xin giới thiệu thư viện để ESP32 giao tiếp RFID RC522 sử dụng thư viện chính mình viết trên ESP-IDF.

Giới thiệu ESP32

Ta đã quá quen với module wifi ESP8266, không những dành cho môi trường vọc vạch của anh em sinh viên mà chúng còn dùng cho các dự án thương mại, điển hình như: SONOFF, BKAV, .. những tên tuổi lớn của cộng đồng SMART DEVICE. Vậy đâu là sự lựa chọn tiếp theo sau ESP8266 ? Câu trả lời từ nhà sản xuất ESP (espressif.com) đó là : “ESP32”.

Cấu hình khủng, gia tăng thêm chức năng, tăng số chân I/O, thêm nhiều cảm biến, giá thành phù hợp…là những gì mà ESP32 mang lại.

esp32-espitek

CPU

  • CPU: Xtensa Dual-Core LX6 microprocessor.
  • Chạy hệ 32 bit
  • Tốc độ xử lý 160MHZ up to 240 MHz
  • Tốc độ xung nhịp đọc flash chip 40mhz –> 80mhz (tùy chỉnh khi lập trình)
  • RAM: 520 KByte SRAM
    • 520 KB SRAM liền chip –(trong đó 8 KB RAM RTC tốc độ cao – 8 KB RAM RTC tốc độ thấp (dùng ở chế độ DeepSleep).

HỖ TRỢ GIAO TIẾP

  • Wi-Fi: 802.11 b/g/n/e/i
  • Bluetooth: v4.2 BR/EDR and BLE
  • 8-bit DACs( digital to analog)  2 cổng
  • Analog(ADC)  12-bit  16 cổng.
  • I²C – 2 cổng
  • UART – 3 cổng
  • SPI – 3 cổng (1 cổng cho chip FLASH )
  • I²S – 2 cổng
  • SD card /SDIO/MMC host
  • Slave (SDIO/SPI)
  • Ethernet MAC interface with dedicated DMA and IEEE 1588 support
  • CAN bus 2.0
  • IR (TX/RX)
  • Băm xung PWM (tất cả các chân )
  • Ultra low power analog pre-amplifier’

Ngoài ra còn có cảm biến tích hợp trên CHIP

  • 1 cảm biến Hall (cảm biến từ trường)
  • 1 cảm biến đo nhiệt độ
  • Cảm biến chạm (điện dung) với 10 đầu vào khác nhau.

Có đầy đủ các chế độ bảo mật về kết nối không dây, phần cứng, phần mềm,…

Giới thiệu Module RFID RC522

Module RFID RC522 sử dụng IC MFRC522 của Phillip dùng để đọc và ghi dữ liệu cho thẻ NFC tần số 13.56MHz, module này là sự lựa chọn hàng đầu cho các ứng dụng về ghi đọc thẻ NFC.

  • Điện áp: 3.3V;
  • Dòng điện :13-26mA
  • Dòng ở chế độ chờ: 1013mA 
  • Dòng ở chế độ nghỉ: <80uA
  • Tần số sóng mang: 13.56MHz
  • Khoảng cách hoạt động: 0 ~ 60 mm (mifare1 card)
  • Các loại card hỗ trợ: mifare1 S50, mifare1 S70, mifare UltraLight, mifare Pro, mifare Desfire
  • Cổng giao tiếp: SPI, tốc độ tối đa 10Мbps
  • Kích thước: 40mm х 60mm
  • Có khả năng đọc và ghi

RFID RC522 PINOUT

Ứng dụng thực tế của RFID

  • Bãi giữ xe
  • Thẻ dùng trong các siêu thị
  • Thẻ điểm danh học sinh, nhân viên
  • Check in/out
  • Định danh cho các thiết bị

HƯỚNG DẪN SỬ DỤNG ESP32 GIAO TIẾP RFID RC522 THƯ VIỆN ESP-IDF

CHUẨN BỊ

Kết nối ESP32 với Module RC522

  • NodeMCU (D18)  <->  RC522 (SCK)
  • NodeMCU (D5)  <->    RC522 (SS)
  • NodeMCU (D23)  <->  RC522 (MOSI)
  • NodeMCU (D19)  <->  RC522 (MISO)

Tiến hành

1. Cài đặt ESP-IDF, Hướng dẫn cài đặt ESP-IDF trên Window

2. Download example RC522-ESP-IDF
download projects library

– Chú ý: nên đặt thư mục của dự án ngang hàng với thư mục esp-idf đã cài đặt

3. Mở ESP-IDF Command Prompt (cmd.exe) và đi tới thư mục rc522-esp-idf

cd ..\rc522-esp-idf

4. Build example rc522-esp-idf

idf.py build

ESP-IDF-Build-RC522

5. Nạp vào board

idf.py flash monitor

Flash-Monitor-esp-idf

6. Đặt thẻ NFC của bạn gần Module và quan sát UID của thẻ được thể hiện trên màn hình.

Video hướng dẫn ESP32 giao tiếp với RC522

Mời các bạn tiếp tục theo dõi các bài hướng dẫn lập trình ESP32.

Bài viết liên quan ESP32 GIAO TIẾP VỚI PN532 SỬ DỤNG ESP-IDF

Chúc các bạn thành công!

Trả lời

Email của bạn sẽ không được hiển thị công khai.