Cześć!
Od niedawna zacząłem zabawę z AVR-GCC, mam problem z programami, w których chcę użyć przerwań. Co prawda program zostaje prawidłowo skompilowany i generuje wszystkie potrzebne pliki, to jednak kiedy sprawdzam program w AVR Studio,nie wchodzi do procedury obsugi przerwania. Niżej jest kod tego prostego programiku, proszę o pomoc.
Używam AVR-GCC, ale z lini poleceń
Slawek
#include "io2313.h"
#pragma interrupt_handler T0_overflow_interrupt:7
void T0_overflow_interrupt(void);
void main(void)
{
SREG = SREG | 0x80;
TIMSK = TIMSK | 0x02;
TCNT0 = 0xF6;
TCCR0 = 0x01;
while(1)
{
}
}
void T0_overflow_interrupt(void)
{
PORTB = ~PORTB;
TCNT0 = 0xF6;
}

Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięPrzerwania w AVR-GCC
Moderatorzy:Jacek Bogusz, procesorowiec, r-mik, Moderatorzy
przerwania avr-gcc
Jesteś pewny tej pragmy ?
W avr-gcc zazwyczaj przerwania są
opisywane makrami
SIGNAL ( z zablokowaniem przerwań )
albo INTERRUPT ( bez blokady )
i to zawsze działa. ZObacz najlepiej w kodzie
asm czy masz obsługe pod odpowiednim adresem skoku.
Pozdrowienia Jurek S.
W avr-gcc zazwyczaj przerwania są
opisywane makrami
SIGNAL ( z zablokowaniem przerwań )
albo INTERRUPT ( bez blokady )
i to zawsze działa. ZObacz najlepiej w kodzie
asm czy masz obsługe pod odpowiednim adresem skoku.
Pozdrowienia Jurek S.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 0 gości