Witam
Tak jak w temacie
Program, który napisałem obsługuje 5 serw. Timer 2 działa w trybie pwm, w OCR2 ustawia odpowiednie wyjście na 1, a przy przepełnieniu ustawia wejścia wszystkich serw na 0. Wartość OCR2 zmieniam przy pomocy uswitchów, ale problem polega na tym, że jak zmienię wartość zmiennej globalnej choose(wgl nie związanej z rejestrem OCR2), dzieje się coś dziwnego. Mimo, że mogę zmieniać wartość rejestru(sprawdzałem przez rs232) to ISR (TIMER2_COMP_vect) włącza się chyba przy wartości 0, bo czas pulsu wynosi 4ms- czyli przy 8MHz prescalerze 128 wychodzi ok. 250. Nie mam pojęcia co się dzieje. Po resecie mikrokontrolera wszystko działa ok, a gdy tylko zmienię wartość zmiennej choose wszystko się sypie...

Tak jak w temacie
Kod: C / C++