Code for RFID card reading:
#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(); // بدء واجهة SPI
mfrc522.PCD_Init(); // تهيئة MFRC522
Serial.println("اقرب بطاقتك من القارئ...");
Serial.println();
}
void loop() {
// التحقق من وجود بطاقة جديدة
if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial()) {
// عرض الـ UID مرة واحدة
Serial.print("UID tag :");
for (byte i = 0; i < mfrc522.uid.size; i++) {
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
}
Serial.println();
// إيقاف التواصل مع البطاقة
mfrc522.PICC_HaltA();
mfrc522.PCD_StopCrypto1();
// الانتظار حتى تتم إزالة البطاقة من نطاق القارئ
while (mfrc522.PICC_IsNewCardPresent()) {
delay(50);
}
}
}