Cześć,
Od dobrych paru dni testuje swój program na Atmega328P, który znajdzie się w układzie zasilanym bateryjnie.
Dla celów diagnostycznych używam UART do wyświetlania danych. Zauważyłem jednak dziwny problem.
Mam sytuację gdzie układ wchodzi w tryb POWER_DOWN i jest wybudzany przez watchdoga i w procdedurze przerywaniu
wysyłam coś na UART. W trakcie działania program wchodzi w obsługę przerywania 60-80 razy po czym następuje restart procka (=widzę komunikat rozpoczynający program)!
Pytanie co właściwie jest nie tak, bibloteka do UART to prawie niezodyfikowana biloteka jaka była w bluebooku.
Jeśli miałbym coś podejrzewać to problemy ze stosem, ale może problem jest zupełnie inny tylko jaki?
Może ktoś ma wskazówki jak diagnozować takie problemy?
Poniżej skrócony kawałek oprogramowania w którym wystepuje problem z restartem.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
------------------------ [ Dodano po: 55 minutach ]Prawdę mówiąc sprawdzę jeszcze w domu po restarcie wskazania MCUSR może coś więcej się dowiem.