Arduino uno获取MFRC-522 RFID射频IC卡模块的信息,并进行识别
作者:野牛程序员:2023-12-25 18:44:59Arduino阅读 2959
连接MFRC-522 RFID模块到Arduino Uno并获取卡片信息的步骤如下:
#include <SPI.h>
#include <MFRC522.h>
#define SS_PIN 10
#define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN);
void setup() {
Serial.begin(9600);
SPI.begin();
mfrc522.PCD_Init();
Serial.println("MFRC522 RFID Module Test");
}
void loop() {
// 等待检测到RFID卡
if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial()) {
Serial.println("卡片检测到");
// 获取卡片UID
String uid = "";
for (byte i = 0; i < mfrc522.uid.size; i++) {
uid += String(mfrc522.uid.uidByte[i] < 0x10 ? "0" : "");
uid += String(mfrc522.uid.uidByte[i], HEX);
}
Serial.print("卡片 UID: ");
Serial.println(uid);
// 选择卡片
if (mfrc522.PICC_Select(&mfrc522.uid) == MFRC522::STATUS_OK) {
Serial.println("卡片已选择");
// 在这里执行其他操作,例如对卡片进行识别
}
delay(1000); // 延迟一秒,避免连续检测到相同卡片
}
mfrc522.PICC_HaltA(); // 暂停卡片
mfrc522.PCD_StopCrypto1(); // 停止加密
}确保已经安装MFRC522库。可以在Arduino IDE的“工具”菜单中选择“管理库”并搜索MFRC522进行安装。
这段代码使用MFRC522库来与RFID模块进行通信。连接MFRC-522模块的SDA引脚到Arduino的Digital 10引脚,RST引脚到Digital 9引脚。
代码会等待检测到RFID卡片,获取卡片的UID,并选择卡片。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

