Napisałem programik bazujący na przerwaniu timera1 do włączaniana porcie (toggle)leda co 100ms wszystko pięknie działa ale od resetu do początku migania mija ze 4 sekundy.
do przerwań wykorzystuję timer 16 bit, preskaler ustawiony, atmega wewnetrznie 8 mhz,
bascom parametry też 8mhz ,loadtimer poprawnie.Ledzik chodzi tzn miga dokładnie tak jak chce ale do pierwszego mignięcia mija sporo czasu. Jak spowodować aby zaczął od razu po resecie.Pozdrawiam wszytkich i dziękuję za odpowiedzi.
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ęDługi start atmega8 z uruchomionymi przerwaniami.
Moderatorzy:Jacek Bogusz, robertw, k.pawliczak, Moderatorzy
Przede wszystkim pokaż ten program.
Jaką wartość początkową wpisujesz do timera? Czy przypadkiem nie każesz 16-bitowemu licznikowi przekręcić się, przed zaliczeniem pierwszego przerwania, przez wszystkie 65536 stanów?
Do pętli w programie głównym wpisz jakieś opóźnienie i przełączanie stanu LEDa na porcie. Zobaczysz w ten sposób czy opóźnienie wynika z problemów sprzętowych (np. źle wykonany układ zewnętrznego reset-u) czy z błędu w programie.
--
MDz
Jaką wartość początkową wpisujesz do timera? Czy przypadkiem nie każesz 16-bitowemu licznikowi przekręcić się, przed zaliczeniem pierwszego przerwania, przez wszystkie 65536 stanów?
Do pętli w programie głównym wpisz jakieś opóźnienie i przełączanie stanu LEDa na porcie. Zobaczysz w ten sposób czy opóźnienie wynika z problemów sprzętowych (np. źle wykonany układ zewnętrznego reset-u) czy z błędu w programie.
--
MDz
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 39 gości