Jednak mam kolejny problemik.
Potrzebuję
16bitowego PWMa o częstotliwości
96kHz, a jest mi to wszystko potrzebne do sterowania silniczkiem BLDC o maksymalnych obrotach 10tys obr/min.
I potrzebuję osiągnąć dużą dokładność w regulacji prędkości.
Tak sobie czytam w bluebooku ten fragment o programowym pwmie i nie do końca kumam o co w tym chodzi.
Dlaczego np dzielimy obliczoną częstotliwość na 256 jeśli wybieramy rozdzielczość 8bit ?
Czyli jeśli ja mam na procku atmega32 zegar
11059200Hz i obliczę wartość
TCNT2 = 141,
bo
11059200Hz/115 = 96166Hz = 96,166kHz, to (255-115)+1 = 141.Ale teraz jeśli moje 96166Hz podziele przez moją rozdzielczość 65535 to mi nie pasuje.
Moje pytanie brzmi jak osiągnąć na avr
PWM 16bit 96kHz ?
Acha dodam tylko, ze próbowałem na timerach sprzętowych. Najbliższa częstotliwość do 96kHz jaką udało mi się uzyskać to 86,4kHz na Timer2, preskaler 128, zegar 11MHz.
Ale tylko Timer2 ma możliwy preskaler 128 i niestety jest 8bitowy :/
P.S.
Nie wiem czy mam tutaj pisać, czy zakładać nowy temat
