timer1 puls saydırma

Başlatan isoment01, 01 Temmuz 2017, 12:21:21

isoment01

arkadaşlar merhaba, forumda bilen arkadaşlardan bir ricam olacak bana timerların çalışma prensibini anlatabilecek bir arkadaş var mıdır ? ben 8 saniye puls üretip 4 sani puls üretmicek ve bunu sürekli yapacak olan bir timer1 kurmaya çalıştım fakat yapamadım mesela şöyle bir kodum var mesela bu kodumda timer nasıl çalısır ne yapar ?

void timer1_interrupts()
{
set_timer1(64923);
kesme++;
if(kesme<sayac1 || sayac2<=kesme<sayac3)
{

output_high(pin_b2);
delay_us(20);
output_low(pin_b2);
if(kesme==sayac3)
{kesme=0;
}
}

}

atomx

unsigned short sayac = 0x00;

void handler()
{
    sayac++;


    if(sayac > 0x00 && sayac < 800)
         pulsVer()
    if(sayac > 800 && sayac < 1200)
        nop;
    
    if(sayac >= 1200)
         sayac=0x00;
    
}



Timer frekansi secildikten sonra sayaci 1sn de 1 artiracak carpana gore degisken sayisi artirilmali. Timer 1Hz de calisamiyor :(
Hüseyin TECER

isoment01

Alıntı yapılan: atomx - 01 Temmuz 2017, 13:21:23
unsigned short sayac = 0x00;

void handler()
{
    sayac++;


    if(sayac > 0x00 && sayac < 800)
         pulsVer()
    if(sayac > 800 && sayac < 1200)
        nop;
    
    if(sayac >= 1200)
         sayac=0x00;
    
}



Timer frekansi secildikten sonra sayaci 1sn de 1 artiracak carpana gore degisken sayisi artirilmali. Timer 1Hz de calisamiyor :(
veya yerine v koysam benimkiyle aynı oluyor gercı ben onuda denemiştim hocam fakat calısmıyor. bu fomkiyon bir while dongusu gıbı mı calısıyor ? bana gore sayac 1 kere artar yanı o sureklı artma olayı nasıl oluyor.

isoment01

işleyiş hakkında bilgi sahibi olan arkadaşlardan hala bekliyorum konu günceldir.