Witam!
Pisze bo juz nie mam pomyslu co to moze byc, zaznaczam ze przeczytalam wszystkie posty odnosnie problemow z przerwaniami w atmega162, jeden temat byl nawet podobny ale rozwiazanie tam zawarte nie bylo pomocne w moim przypadku. Ale do rzeczy:
W ponizszym programie po wywolaniu przerwania INT0 wywoluje sie INT1.
Symuluje program w komplitaorze AVRstudio, na razie nie potrafie poradzic sobie z fizycznym ukladem, programatorem ISP 6pinowym na LPT i programem WinAVR.
Dodam jeszcze, ze gdy skompilowalam ten program na procku atmega8 to wszystko dziala jak powinno. Caly dzien sie z tym mecze. Prosze o pomoc!
Pisze bo juz nie mam pomyslu co to moze byc, zaznaczam ze przeczytalam wszystkie posty odnosnie problemow z przerwaniami w atmega162, jeden temat byl nawet podobny ale rozwiazanie tam zawarte nie bylo pomocne w moim przypadku. Ale do rzeczy:
W ponizszym programie po wywolaniu przerwania INT0 wywoluje sie INT1.
Symuluje program w komplitaorze AVRstudio, na razie nie potrafie poradzic sobie z fizycznym ukladem, programatorem ISP 6pinowym na LPT i programem WinAVR.
SIGNAL (SIG_INTERRUPT0)
{
//oryginalnie program tu cos robi, ale dla przejrzystosci wyrzuciałam
}
SIGNAL (SIG_INTERRUPT1)
{
}
void czekaj(void)
{
}
int main(void)
{
DDRB = 0x3f;
PORTB= 0xff;
DDRC= 0x00;
PINC= 0xff; //wejscia w stanie wysokim, nie jestem pewna czy PINC czy PORTC
GICR=1<<INT0; //włacz przerwanie zewnetrzne INT0
MCUCR=0x02; //przerwania INT0 wyzwalane opadajacym zboczem
sei(); //włącz obsługę przerwań
while(1)
{
czekaj();
}
return(0);
}Dodam jeszcze, ze gdy skompilowalam ten program na procku atmega8 to wszystko dziala jak powinno. Caly dzien sie z tym mecze. Prosze o pomoc!