Tema: Re: AVR daznio matavimas(frequency counter)
Autorius: KaroliS
Data: 2009-02-07 20:08:29
taigi vis dar kovoju su timer/counter , nepriverciu veikt gal izvelgsit kur 
klaida?


int counter2_ovf=0;
//================interrupt==================
#pragma vector=0x08
__interrupt void counter2_overflow(void)
{
counter2_ovf=counter2_ovf+1;
}

//===========================================


timer0_init()
{
counter0_ovf=0;
counter2_ovf=0;
int counter0=0;
char number=0;

__enable_interrupt();

TIMSK |= (1<<TOIE2);  //enablinu pertraukimus nuo persipildymo




TCCR2 |= (1<<CS22 | 1<<CS21 | 1<<CS20 );  //prescaler

while(counter2_ovf==0){  }

//tolimesnis kodas

}


pagal tai kaip elgiasi programa speju kad papuolam i 
while(counter2_ovf==0){  }  ir sukames amzinai, kodas kolkas testavimo 
tikslais rasomas todel nieko protingo nedaro tiesiog persipildzius 
counteriui turetu iseit is ciklo ir ivykdyti tolimesni koda





"G.S." <xx@xx.xx> wrote in message news:gmab4k$9of$1@trimpas.omnitel.net...
>
> Taip suveiks.Tik reikia dar pertraukimus nuo persipildymo ijungti.Paieskok 
> ten registruose kazkur isijungia.AVR seniai beciupinejau tai nebepamenu.
>
>> ar gerai supratau?
>>
>> #pragma vector=0x10     //9 $010 TIMER1 OVF Timer/Counter1 Overflow
>>
>> __interrupt void count1_overf(void)
>> {
>> //kazka darom
>> }
>>
>> ar sitas kodas suveiks kai timer/counter1 persipildys?
>
>