witam
To moje pierwsze zetknięcia z AVR`ami stąd pytanie dla wielu może wydać się banalne lecz raczej nikt mi nie zarzuci, że nie szukalem ani nie czytalem. Przeszukałem całe forum ale o o środowiesku IAR jest bardzo mało postów. Wszystko to co wyczytałem pochodzi z user manulala Iar`a.
Problem polega na tym, że po włączeniu licznika/ timera 1 oraz funkcji capture w T1 wszystko działa, tzn. licznik zlicza w góre po czym sie zeruje (sprwadziłem na porcie stany rejestrow licznika) oraz funkcja capture rowniez działa. Nie działa tutaj podprogram ktory wpisałem w przypadku przerwania od T1 - czyli przy przepelnieniu T1. Użyłem dyrektywy jak w user manulau i nic. Niestety nie umiem jeszcze symulacji i nie wiem jak ogolnie to sprawdzić.
Oto fragment programu:
Czy tu jest w programie jakis blad czy problemu szukac gdzie indziej?
To moje pierwsze zetknięcia z AVR`ami stąd pytanie dla wielu może wydać się banalne lecz raczej nikt mi nie zarzuci, że nie szukalem ani nie czytalem. Przeszukałem całe forum ale o o środowiesku IAR jest bardzo mało postów. Wszystko to co wyczytałem pochodzi z user manulala Iar`a.
Problem polega na tym, że po włączeniu licznika/ timera 1 oraz funkcji capture w T1 wszystko działa, tzn. licznik zlicza w góre po czym sie zeruje (sprwadziłem na porcie stany rejestrow licznika) oraz funkcja capture rowniez działa. Nie działa tutaj podprogram ktory wpisałem w przypadku przerwania od T1 - czyli przy przepelnieniu T1. Użyłem dyrektywy jak w user manulau i nic. Niestety nie umiem jeszcze symulacji i nie wiem jak ogolnie to sprawdzić.
Oto fragment programu:
void start_przerwania()
{
// GICR_Bit0 = 0; - tutaj kombinowalem z tymi bitami ale na marne, zadnego efektu
// GICR_Bit1 = 0;
SREG_Bit7 = 1; //globalne odblokowanie przerwan
TIMSK_Bit5 = 1; //odblokowanie Timera1 funkcji capture
TCCR1B = 0x02; //licznik wlaczony ,preskaler 8
TCCR1A = 0x00; //tryb normalny
}
#pragma vector=0x12
__interrupt void przepelnienie_T1(void)
{
PORTA = 0x55; // PORTA wczesniej ustawiony jako wyjscie
} Czy tu jest w programie jakis blad czy problemu szukac gdzie indziej?
