Witam,
jestem w trakcie pisania programu dla line follow'era i chciałbym za pomocą switcha włączać i wyłączać robota (konkretnie serwa), coś na zasadzie przycisku on/off.
Do tego celu chcę użyć przerwań zewnętrznych w ATmedze8 i switcha, za pomocą którego będę zmieniał stan na pinie PD2 (INT0).
Program niestety nie działa jak należy. Raz na kilka przypadków zdarzy się oczekiwany efekt. Często jednak serwa obracają się nie reagując na wciśnięcie switcha, innym razem stoją w bezruchu. Często też zatrzymują się, albo włączają w zupełnie dowolnym momencie. Totalny chaos
Dlatego też bardzo proszę o pomoc i wytknięcie błędów w kodzie:
Gdy program odpalam bez switcha wszystko działa jak należy, tzn. koła obracają się zgodnie z założonymi warunkami. Problemy pojawiają się gdy chcę dodać przerwanie zewnętrzne.
Proszę o pomoc, jeśli ktoś zauważy jakikolwiek błąd
jestem w trakcie pisania programu dla line follow'era i chciałbym za pomocą switcha włączać i wyłączać robota (konkretnie serwa), coś na zasadzie przycisku on/off.
Do tego celu chcę użyć przerwań zewnętrznych w ATmedze8 i switcha, za pomocą którego będę zmieniał stan na pinie PD2 (INT0).
Program niestety nie działa jak należy. Raz na kilka przypadków zdarzy się oczekiwany efekt. Często jednak serwa obracają się nie reagując na wciśnięcie switcha, innym razem stoją w bezruchu. Często też zatrzymują się, albo włączają w zupełnie dowolnym momencie. Totalny chaos
Dlatego też bardzo proszę o pomoc i wytknięcie błędów w kodzie:
Kod: C / C++
Gdy program odpalam bez switcha wszystko działa jak należy, tzn. koła obracają się zgodnie z założonymi warunkami. Problemy pojawiają się gdy chcę dodać przerwanie zewnętrzne.
Proszę o pomoc, jeśli ktoś zauważy jakikolwiek błąd
