PIC16f877de menü oluşturma

Başlatan CoşkuN, 26 Şubat 2006, 21:56:15

nuri2978

Alıntı yapılan: "CoşkuN"Acaba artık C'de kod yazan kalmadı mı diye düşünmeye başlıyorum  :roll:

ben yeni yeni başlıorum inş... 1 ay süre zarfında sizler seviyesine gelip yardımcı olacağım.
Benimle gel arkadaşım gel ve sonu gor

3ddark

nuri2978


Nuri kardesim ugrasacaksan surekli olsun ben ara ara bakabiliyorum zaman olmuyor sürekli bakarsan bu işle ugrasırsan bu işten ekmek yersin bunu unutma hobi için ise bir sure sonra unutlur gider
Yapılacak çok şey var

crypto

@CoşkuN
Kondansatör ü buton un bağlı olduğu pin ve eksi besleme (-) arasına takın. Ayrıca kondansatöre paralel 4k7 pulldown direnci de ilave etmeyi unutmayın. Bunu yapmazsanız buton işlemi kararsız çalışır.

Bir buton algılama rutini oluşturun. Butonlardan herhangi birine basılmışsa ilgili işlemi yaptırıp, daha sonra buton un bırakılıp bırakılmadığını kontrol eden bir rutin çalıştırın. Buton basılı kaldığı sürece o rutin içerisinde döngüde kalsın.
Buton bırakıldığnı algıladığında tekrar buton algılama rutinini çalıştırın.

PICC bilmiyorum ama basit bir PICBASIC örneği vereyim:
buton_1_kontrol:
     if buton=0 then buton_1_kontrol   ;buton a basılmamışsa buton kontrol et
islem_yap:
     .............     ;yapılacak işlemler bu rutinde yapılacak
     .............
buton_0_kontrol:
     if buton = 1 then buton_0_kontrol     ;buton hala basılıysa bırakılmasını kontrol et
     goto buton_1_kontrol     ;buton basma kontrol rutinine git.

xenitis

B portu kesmeleri varken sonsuz döngülerle işlemciyi sürekli meşgul etmenin mantığı nedir anlamış değilim butonu kesme ile kullanın ve kendi haline bırakın basılana kadar da arka planda işlemci başka işleri varsa onları halletsin

crypto

@xenitis
Buradaki sorun buton basma işleminin nasıl kontrol edileceğiyle ilgiliydi. Buton basmalarında kararsız çalışmalar nasıl aşılır, ona çözüm aranıyor. Yukarıdaki örnek kodları ve şemayı da o yüzden vermiştim.

Yoksa farklı uygulamalarda elbette B portunun kesmelerinin kullanılması daha uygun olur.

733n

Alıntı yapılan: "bluesea2005"

arkadasım verdigin kod hi-tide picc 9.5 de derlenmiyor hata veriyor sanırım lcd_dec_byte(..) komutundan kaynaklanıyor....

birde bir degiskenin icerigini rakam olarak (h-tech picc 9.5 kullanıyorum) lcd ye nasıl gönderebilirim yardımcı olabilirseniz sevinirim.

(lcd.h lcd.c dosyalarını include dosyasına attım)

Sebebi #include "lcd.c" yazması yani library i include un icinden değilde o klasorun icinden almasıdır . Yani eger bu kodları kullanmak istiyorsun coskundan Lcd.c ve lcd.h ı alman gerekecek .