Merhabalar,
Deneyap Mini kartımla RC522 RFID modülünü kullanarak 13.56MHz RFID kartımı okuyup seri monitörde yazdırmaya çalışıyorum. MacOS üzerinde Arduino IDE 2.0.1 kullanmaktayım. Modülü kullanarak okuma işlemi yapmada problem yaşıyorum. Deneyap kartın sitesinde paylaşılan örnek "RFID Uygulaması"ndan faydalandım ancak sorunum çözülmedi.
- Kullandığım kod:
- Yapmış olduğum pin bağlantısı:
- Sonuç:
Kart üzerindeki RGB led sürekli olarak mavi renkte yanmakta.
RC522'ye çalıştığını teyit ettiğim farklı RFID kartlar yaklaştırmama rağmen seri monitörde "okunamadi" mesajı yazdırılmakta.
Not 1: Boş bir projede yalnızca seri monitör üzerinde yazdırma yapma işleminde problem yaşamadığımı teyit ettim.
Not 2: Kullanmakta olduğum RC522 modülü Arduino Uno'ya bağlayarak aynı programı başarıyla çalıştırabilmekteyim. Dolayısıyla modülde sorun yok.
Not 3: Kullanmakta olduğum jumper kabloları test ettim, sorun yok. Ayrıca kart üzerindeki farklı 3.3V ve GND pinlerini de denedim, hala sorun devam etmekte.
Deneyap Mini kartımla RC522 RFID modülünü kullanarak 13.56MHz RFID kartımı okuyup seri monitörde yazdırmaya çalışıyorum. MacOS üzerinde Arduino IDE 2.0.1 kullanmaktayım. Modülü kullanarak okuma işlemi yapmada problem yaşıyorum. Deneyap kartın sitesinde paylaşılan örnek "RFID Uygulaması"ndan faydalandım ancak sorunum çözülmedi.
- Kullandığım kod:
Kod:
#include <SPI.h> #include <MFRC522.h> #define RED LEDR #define BLUE LEDB #define GREEN LEDG #define RST_PIN D3 // RC522: RST -> D3 #define SDA_PIN D2 // RC522: SDA -> D2 MFRC522 rfid(SDA_PIN, RST_PIN); byte ID[4] = {121,127,254,179}; void setup() { Serial.begin(9600); SPI.begin(); rfid.PCD_Init(); pinMode(RED,OUTPUT); pinMode(BLUE,OUTPUT); pinMode(GREEN,OUTPUT); } void loop() { if (!rfid.PICC_IsNewCardPresent()) // Yeni kartın okunması beklenir { BEKLE(); // Kart okutulmazsa mavi LED yanar Serial.println("okunamadi"); delay(1000); return; } if (!rfid.PICC_ReadCardSerial()) //Kart okunmadığı zaman beklenilir { BEKLE(); // Kart okutulmazsa mavi LED yanar delay(1000); return; } if (rfid.uid.uidByte[0] == ID[0] && //Okunan kart ID'si ile ID değişkeni karşılaştırılır rfid.uid.uidByte[1] == ID[1] && rfid.uid.uidByte[2] == ID[2] && rfid.uid.uidByte[3] == ID[3]) { DOGRU(); // Okutulan kart doğruysa yeşil LED yanar delay(1000); } else { // Okutulan kart yanlışsa bu blok çalışır YANLIS(); // Okutulan kart yanlışsa kırmızı LED yanar ID_OGREN(); // seri port ekranında kartın ID'si yazılır. delay(1000); } rfid.PICC_HaltA(); } void BEKLE() { digitalWrite(BLUE,HIGH); digitalWrite(RED,LOW); digitalWrite(GREEN,LOW); } void DOGRU() { digitalWrite(BLUE,LOW); digitalWrite(RED,LOW); digitalWrite(GREEN,HIGH); } void YANLIS() { digitalWrite(BLUE,LOW); digitalWrite(RED,HIGH); digitalWrite(GREEN,LOW); } void ID_OGREN() { Serial.print("ID Numarasi: "); for (int sayac = 0; sayac < 4; sayac++) { Serial.print(rfid.uid.uidByte[sayac]); Serial.print(" "); } Serial.println(""); }
RC522 | Deneyap Mini |
SDA | D2 |
SCK | SC (D7) |
MOSI | MO (D4) |
MISO | MI (D5) |
GND | GND |
RST | D3 |
3.3V | 3.3V |
- Sonuç:
Kart üzerindeki RGB led sürekli olarak mavi renkte yanmakta.
RC522'ye çalıştığını teyit ettiğim farklı RFID kartlar yaklaştırmama rağmen seri monitörde "okunamadi" mesajı yazdırılmakta.
Not 1: Boş bir projede yalnızca seri monitör üzerinde yazdırma yapma işleminde problem yaşamadığımı teyit ettim.
Not 2: Kullanmakta olduğum RC522 modülü Arduino Uno'ya bağlayarak aynı programı başarıyla çalıştırabilmekteyim. Dolayısıyla modülde sorun yok.
Not 3: Kullanmakta olduğum jumper kabloları test ettim, sorun yok. Ayrıca kart üzerindeki farklı 3.3V ve GND pinlerini de denedim, hala sorun devam etmekte.
Yorum Yap