Próbuję płynnie sterować prędkością obrotową silnika DC z wykorzystaniem potencjometru. I mimo, że korzystałem już z adc i pwm, to połączenie tych dwóch zagadnień daje mi dziwne efekty, sprzeczne z moją wizją co do ich działania. Program ma działać w ten sposób, że kręcąc potencjometrem wpływa się na współczynnik wypełnienia. Podłączyłem potencjometr i diodę LED (bo chwilowo nie mam silnika) i napisałem kod w oparciu o sprzętowe pwm. I zaczęły dziać się dziwne rzeczy z moją diodą. Kręcenie potencjometrem powoduje 4 cykle "jaśniej-zgaś" podczas jednego kręcenia od zera do "końca potencjometru" Spodziewałem się rozjaśniania diody aż do osiągnięcia pełnej jasności i tyle. Dalsze kręcenie nie powinno wpływać na jasność. Nie mam zielonego pojęcia gdzie robię błąd. Z góry dziękuję za wszelkie wskazówki.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
P.S.
W kodzie znajduje się transmisja UART, bo docelowo silnik będzie znajdował się w innym urządzeniu i będzie sterowany przez wifi.