Şimdi Ara

PIC program çalışırken butonların kontrolü

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
4
Cevap
0
Favori
1.206
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhabalar,18f4550 kullanarak kendime bir metronom yapmaya çalışıyorum ve hızlandırıp yavaşlatma hariç programı tamamladım.Sıkıntım ise metronom çalışırken hızlandırma ve yavaşlatma amaçlı iki butonun basık olup olmadığını algılama.Kesmeleri gözden geçirdim ama rb0'ı tek buton ile kullanabildiğimden eledim, rb4-rb7 kesmesinde ise bildiğim kadarıyla hangi butondan basıldığı fark etmeksizin ortak kesme programına atlıyor oluşu ve butona basarken ayrı çekerken ayrı bir kesme oluşturması onunda elenmesine sebep oluyor.Son olarak tmr kesmelerini kullanarak belli sürelerde if ile butonların basık olup olmadığını kontrol etmek geldi ama daha önce böyle bir sistem yapmadığımdan algılamada ne kullanacağımdan emin olamadım sizce birden fazla buton algılamada nasıl bir yol izleyebilirim?



  • butanlardan biri hizlandirma biri yavaslatma mi ?
    if kullanarak butonlardan birine basildiginda mesela 100 ms azaltip digerine bastiginda ise 100ms arttirabilirsn. ama heralde bu kadar basit birseyde takilmis olamazsin. heralde ben yanlis anladim

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • quote:

    Orijinalden alıntı: du riechst so gut

    butanlardan biri hizlandirma biri yavaslatma mi ?
    if kullanarak butonlardan birine basildiginda mesela 100 ms azaltip digerine bastiginda ise 100ms arttirabilirsn. ama heralde bu kadar basit birseyde takilmis olamazsin. heralde ben yanlis anladim

    hocam butonlar yavaşlatma ve hızlandırmaya yarayacak yani dediğiniz gibi metronomun bpm değerini arttırıp azaltacak benim takıldığım ise metronom çalışırken bir yandanda butonların basık olup olmadığını if ile kontrol etme kısmı,program kabaca anlatırsam buzzerin biplemesi ve delaydan oluşuyor if ile program başında yada sonunda kontrol yaparsam program o kısmı çalıştırırken butona basmadığım sürece butona basıldığını algılamayacak o yüzden program çalışırken eş zamanlı olarak if ile butonların durumunu kontrol etmem gerekiyor oda sanırım programdan ayrı çalışan tmr kesmesi ile belli aralıklarda buton durumu kontrolü ile olacak umarım sorunumu anlatabilmişimdir




  • Butonu hem dış kesme hem de bir porta bağlayıp, butona basıldığında dış kesme oluşmasını ve döngüde o portun değerini okutsan olur gibi duruyor. Dış kesme bağlantısını her iki buton için de yapman lazım. Böyle ce hangi tuşa basılırsa basılsın dış kesme oluşacağından portun değerini okuma döngüne gidebilirsin. Her iki butona basılı olma durumunda da ister uyarı sesinin olduğu döngüye istersen de metronom döngüne devam edebilirsin.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.