RF Alıcı Verici Devresinde Yazılım Değişikliği

'Elektronik Projeler' forumunda _KaRiZmA_ tarafından 14 Ağustos 2008 tarihinde açılan konu

  1. _KaRiZmA_

    _KaRiZmA_ Üye

    Sponsorlu Bağlantılar
    RF Alıcı Verici Devresinde Yazılım Değişikliği konusu RF Alıcı Verici Devresinde Yazılım Değişikliği

    10/08/2008
    [​IMG]

    PIC16F84A ile 6 Kanal 433 MHz RF Alıcı Verici Devresini Tuna Yıldız adlı arkadaş yapmış. İstek üzerine yazılımda değişiklik yaparak devrenin çalışma şeklini değiştirdim değiştirilen Picbasic Kodları
    Devre ilk hali itibariyle, bir butona basıldığında o butona karşılık gelen LED yanıyor fakat butonu bıraktığında sönmüyordu, ta ki başka bir butona basana kadar. Yani devrede sürekli olarak bir tane LED hep yanık kalıyordu.
    Programda mantık itibariyle sadece butonlara basıldığı zaman veri bilgisi gönderiliyordu. Bende buna ek olarak butonlar hem basılı iken hem basılmadığı zamanlarda veri bilgisi göndererek, butonlar basılı iken ilgili LED’i yakan bıraktığın zaman da (benim eklediğim komutlar burada devreye giriyor.), söndüren bir hale getirdim.
    txt |kodu kopyala | yazdır | ?

    1. IF PORTA.1=0 THEN </SPAN>
    2. VERICI=10
    3. GOSUB GONDER
    4. ENDIF
    IF PORTA.1=0 THENVERICI=10GOSUB GONDERENDIFProgramın ilk halinde butonların kontrolü sadece yukarıdaki komutlarla yapılmış ve sadece buton basıldığı zaman işlem yapıyordu. Butonu bıraktığımızda hiçbir işlem yapmıyordu. Programın bizim istediğimiz gibi çalışması için aşağıdaki komut satırları bütün butonlar için ayrı ayrı yazıldı.
    txt |kodu kopyala | yazdır | ?

    1. IF PORTA.1=1 THEN </SPAN>
    2. VERICI=15
    3. GOSUB GONDER
    4. ENDIF
    IF PORTA.1=1 THENVERICI=15GOSUB GONDERENDIFTemel olarak bizim eklediğimiz kodlar yukarıdaki kalıp ile aynı.
    İlk programda sadece butonlar basıldığında veri gönderiliyordu, biz butona basılmadığı zamanda veri göndererek devreyi istediğimiz hale getirdik.
    Devrenin alıcı kısmında ise aşağıdaki komut satırı kullanılıyordu. Görüldüğü üzere sadece HIGH konutu vardı ve bu komut sadece LED’i yakmaya yarıyordu.
    txt |kodu kopyala | yazdır | ?

    1. IF ALICI=10 THEN
    2. HIGH PORTB.0 </SPAN>
    3. ENDIF
    IF ALICI=10 THENHIGH PORTB.0ENDIFLED’i söndürmek için bizde aşağıdaki komut satırlarını ekledik ve böylece butona basılmadığı zaman LED sönük kalıyordu. LED’i söndürmek için bizde LOW komutunu kullanarak LED’in sönük kalmasını sağladık
    txt |kodu kopyala | yazdır | ?

    1. IF ALICI=15 THEN
    2. LOW PORTB.0 </SPAN>
    3. ENDIF
     
    1 kişi bunu beğendi.
  2. Google

    Google Özel Üye

    eyvallah sağol kardeşim güzel paylaşım
     
  3. avatar

    avatar Üye

    Paylaşım için teşekkürler
     

Bu Sayfayı Paylaş