Rfid konusunda yardım lütfen
  • merhaba arkadaşlar ben arduino ile yeni tanıştım bir fikrim var ama bir türlü çözüm bulamadım rfid kartımı tanıtıyorum her şey güzel çalışıyor ama benim istediğim gibi çalışmıyor nfc kartımı okutunca +5 volt verip ledin yanmasını istiyorum taki nfc kartımı çekene kadar kartımı çekincede sönmesini istiyorum. nfc kartımı tekrar okutunca +5 volt vermesini istiyorum benim yaptıgım yazılımda nfc kartımı okutuyorum 5 volt veriyor ama kartı çekince halen vermeye devam ediyor voltajı kesmiyor.
  • kodu paylaşır mısın bakalım
  • bu okuyucular tek okuma yapar her seferinde. kartı ustunde tutmaya devam etsen de ılk okumadan sonra okumaz bırdaha. kartı uzaklaştırıp yaklaştırıp tekrar tetıklemen lazım.
    okuyucu tarafta bazı confıg ayarlarından tetıkleyebılır ardışık olarak belki datasheetıne bahman lazım okuyucu entegrenın.

    yazılım ıcınde bır degıskende ledın durumunu tut. kart okutuldugunda aç tekrar okutuldugunda kapatırsın degıskene bakıp.
  • #include < SPI.h> //SPI ve RFID kütüphanelerimizi ekliyoruz
    #include < RFID.h>

    #define SS_PIN 10
    #define RST_PIN 9

    RFID rfid(SS_PIN, RST_PIN);
    int ledpini = 13;

    void setup()
    {
    pinMode(ledpini,OUTPUT);
    SPI.begin(); //SPI iletişimini başlatıyoruz
    rfid.init();
    digitalWrite(ledpini,LOW);
    }

    void loop()
    {

    if (rfid.isCard()) { //Yeni bir RFID kart okundu mu onu kontrol ediyoruz
    if (rfid.readCardSerial()) {
    if (rfid.serNum[0] == 115 //Okunan RFID kartının bize özel kart olup olmadığı RFID kart numarasının ilk 5 hanesi ile kontrol ediliyor.
    && rfid.serNum[1] == 228 //Buradaki 5 adet sayıyı kendi kartınızın sayıları ile değiştirmeniz gerekecek.
    && rfid.serNum[2] == 220
    && rfid.serNum[3] == 199
    && rfid.serNum[4] == 140
    ) {

    digitalWrite(ledpini,HIGH);
    }
    }



    }
  • burada led pinini LOW durumuna alacak bir ifade göremiyorum. Yani loop fonksinonu bir kere kart okuduğu zaman ledpini yanacak fakat ne zaman sönecek onu eklememişsin else komutuyla led pini ni LOW yapmayı dene
  • ekledim ama malesef olmadı
    ) {

    digitalWrite(ledpini,HIGH);
    } else {

    digitalWrite(ledpini,LOW);

    }
    }

    }
    }

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Login with Facebook
Açık kaynak kültürü gereği, çözdüğünüz problemlerin çözümlerini paylaşmayı lütfen unutmayın.