pcbway

2 butonlu zamanlıyıcıya koşul ekleme yardım

Başlatan i3uz, 23 Mart 2016, 08:49:44

i3uz

Arkadaşlar aşşagıdaki 1 dklık zamanlayıcıya, koşul eklemek istiyorum,

PIN_A2 e basılıp çekldiğinde PIN_B2de led yanacak , eğer B2 yanıyorsa ,PIN_A0 ve PIN_A1 çalışabilecek..

Yardımlarınızı bekliyorum arkadaşlar. nereye yazdıysam dogru çalıştıramadım.


#include <16F628A.h>
#FUSES NOWDT, PUT, XT, MCLR, NOBROWNOUT, NOLVP
#use delay(clock=4000000)
 
#use fast_io(a)       
#use fast_io(b)
 
int8 sayac=0, led1=0, led2=0;
 
#int_TIMER0
void timer0_kesmesi() {
if(++sayac == 61)  // timer0 61 kez taştıysa
 {                 // 61 x 16.3 ms = 1 sn süre geçmiştir
   sayac = 0;
   if(++led1 == 60) // 60 saniye
      {               
      output_low(PIN_B0);
      led1=0;
      }
   if(++led2 == 60) // 60 saniye
      {               
      output_low(PIN_B1);
      led2=0;
      }
 
 }
}

void main() {
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);
   set_tris_a(0b11111111);
   set_tris_b(0x00);
   output_b(0b00000000);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_64|RTCC_8_bit);      //16.3 ms overflow
   enable_interrupts(INT_TIMER0); //kesme aktif
   enable_interrupts(GLOBAL);
 
   while(TRUE) //ana döngü
   {
     
   if(!input(PIN_A0)) //buton1
      {
      led1=0;
      output_high(PIN_B0);
      while(!input(PIN_A0)){}
      }               
   if(!input(PIN_A1)) //buton2
      {
      led2=0;
      output_high(PIN_B1);
      while(!input(PIN_A1)){}
      }
 
   
   }
}
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

i3uz

Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

i3uz

23 Mart 2016, 15:16:06 #2 Son düzenlenme: 23 Mart 2016, 15:47:33 i3uz
arkadaşlar bilen yok mudur.. yoksa butonların herbirine adam mı koyalım. programsal olsun derken insansal olacak.. insanlara acıyalım. az çok demiyelim yardım edelimm.. 3 beş kod dökülelim belki toparlarım gerisini. bir fikir söyleyin onada razıyım..
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

mustafayilmaz

buton kesmesini ayarla. çalışmasını istediğin işleri oraya yaz.

pic mcular ve derleyicileri ile çalışmadığım için kod veremiyorum.

i3uz

Alıntı yapılan: mustafayilmaz - 23 Mart 2016, 16:17:57buton kesmesini ayarla. çalışmasını istediğin işleri oraya yaz.

pic mcular ve derleyicileri ile çalışmadığım için kod veremiyorum.

arkadaş cevabın için teşşekürler ama ccs de butonu bir türlü tanımlayamadım. oraya koyuyorum olmuyor. butonu ekleyecek arkadaşlar yokmudur?
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

i3uz

Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

i3uz

ah ah anlaşılan bilen yok... karavanaa...
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

i3uz

Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

yolcu27

İlla css c olmayacaksa pic basic ile yapılabilir.

İlk önce bir etiket tanımlayıp bu etikette  a2 ye bağlı butona bakarsanız if then ile basildiysa diğer bit etikete gitmesini söylersiniz. Bu geldiginiz etikette ise  b2 ledi high olup yanacak ve a0 a1 butonlarin bakacaksınız basılıp basılıyor mu diye. Bunu 1 dk lık zamanlama icinde yapacaksanız da kesme kullanıp kontrolü yaparsınız bu kesme içinde