Mam ciekawy problem:
Jest sobie zmienna CA, której wartość mieści się w zakresie <0, 63>.
Górną granice sprawdzam poprzez warunek:
if (CA == 64) CA = 63
Po kilku - kilkunastu godzinach warunek ten nie jest wykonywany i program sie "wiesza", gdyż wykonuje funkcje dla wartości powyzej 63.
CA jest modyfikowane tylko w jednym miejscu (inkrementowana). Poza tym jednym miejscem, CA jest zczytywane.
Używam CrossWorksa. Na zasilaniu (wyjscie z 7805) jest jeden kondensator 1uF. Nie dawałem na nóżkach dodatkowych 100nF.
Zastanawiam się, czy to nie jest problemem. Jeśli tak, prosiłbym o wyjaśnienie, dlaczego się tak dzieje.
Jeśli nie jest to problemem, proszę o jakieś sugestie
Pozdrawiam,
wrealcon