AVR, timer, gcc

Karel Radkovský karel.radkovsky@seznam.cz
Úterý Leden 24 21:32:47 CET 2006


Zdravim,

to, co jste napsal vypada OK. Jestli mate moznost, tak to zkuste odladit na 
ATmega16 s Jtagem - Atmega8 a 16 jsou kompatibilni (snad 100%) - prave jsem 
ladil na ATmega16 zarizeni, ktere v realu funguje s Atmega8...

S pratelskym pozdravem
--
Karel Radkovsky
www.dioda.cz

----- Original Message ----- 
From: "Rosko, Peter" <Peter.Rosko@siemens.com>
To: <hw-list@list.hw.cz>
Sent: Tuesday, January 24, 2006 12:47 PM
Subject: AVR, timer, gcc


Zdravim,

mam atmega8,

chcem v rutine externeho prerusenia zapnut timer2, ciel je po jeho
expiracii nieco spravit.
stale, stale, stale mi to vsak nastartuje timer2 rutinu hned po tom, ako
skoncim s externym prerusenim rutinou

inicializacia
TCCR2 = _BV(CS22);

PORTD = 0xff;

//Interrupt 1 sensitive for any logical change
MCUCR = _BV(ISC10);

//Enable External Interrupt 1
GICR = _BV(INT1);





externa rutina
SIGNAL(SIG_INTERRUPT1)
{
if (PIND & _BV(PD3)) //0->1
{
code[code_counter++] = TCNT2;
}
else //1->0
{
TCNT2 = 1;
TIMSK |= _BV(TOIE2);
TIFR |= _BV(TOV2);
}

}

SIGNAL(SIG_OVERFLOW2)
{
...tu by sa malo spracovat co mam ulozene v code[]
}


preco sa kua kua timer2overflow spusta hned ?
vdaka za napady, predpokladam ze cosi citam v ds zle ale uz ma to sameho
nebavi :(

vdaka, p.rosko




Další informace o konferenci Hw-list