ATNEL tech-forum
https://forum.atnel.pl/

Przerwanie w ATtiny13A
https://forum.atnel.pl/topic22247.html
Strona 1 z 1

Autor:  Bystrzacha [ 10 maja 2019, o 19:33 ]
Tytuł:  Przerwanie w ATtiny13A

Witam,
próbuję napisać program, który będzie wywoływał przerwanie mniej więcej 1000 razy na sekundę do ATtiny13A, jednak po wstępnej kompilacji, program wyrzuca mi błąd z którym nie potrafię sobie poradzić, gdyż jestem początkującym w tej kwestii.

Oto cały kod:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Będę wdzięczny za nakierowanie na właściwy tor rozumowania :)

Autor:  mirekk36 [ 10 maja 2019, o 19:44 ]
Tytuł:  Re: Przerwanie w ATtiny13A

no no a procedura obsługi przerwania siedzi jak jakiś nowotwór wewnątrz funkcji main() - więc nie dziwota że kompilator wymiotuje błędami

Autor:  anshar [ 10 maja 2019, o 19:47 ]
Tytuł:  Re: Przerwanie w ATtiny13A

Procedura obsługi przerwania musi się znajdować poza ciałem funkcji int main(void) czyli ostatni nawias klamrowy tego kodu powinien znajdować się przed komentarzem:
//to co ma się stać w wyniku przerwania

Autor:  Adam12 [ 10 maja 2019, o 21:33 ]
Tytuł:  Re: Przerwanie w ATtiny13A

Wygląda na to, że kompilator w pierwszym przebiegu stwierdza, że funkcja ISR jest pusta (po wstawieniu średnika) więc od razu ją pomija bez sprawdzania poprawności. Następne instrukcje i tak się nie wykonają bo powyżej jest while(1) {}, więc też je pomija.

Autor:  Adam12 [ 10 maja 2019, o 22:19 ]
Tytuł:  Re: Przerwanie w ATtiny13A

No ja też się uczę, dlatego mnie takie dziwne przypadki ciekawią i staram się zawsze rozgryźć o co chodzi.

Autor:  Adam12 [ 11 maja 2019, o 17:49 ]
Tytuł:  Re: Przerwanie w ATtiny13A

Oczywiście, tutaj też jest błąd, zawsze powinno być _vect na końcu.

Autor:  anshar [ 11 maja 2019, o 17:56 ]
Tytuł:  Re: Przerwanie w ATtiny13A

Jeszcze ten zapis kłuje ;) w oczy:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


powinno być:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Autor:  Bystrzacha [ 15 maja 2019, o 15:45 ]
Tytuł:  Re: Przerwanie w ATtiny13A

Tak, dziękuję :)

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/