Korzystam z Fast PWM, tryb 14, bez preskalera. Czyli na dwóch kanałach OC1A i OC1B otrzymuje regulowane wypełnienie o rozdzielczości 16bit przy ~122Hz (zegar uC to 8MHz).
Działa to bardzo ładnie, jednak przy zerowym wypełnieniu (pwm1a = 0) na wyjściu są jakieś śmieci. Czas trwania to tylko 230ns, ale to wystarczy żeby na wyjściu filtra RC dostać 8mV zamiast równego 0V. A zależy mi żeby zejść do zera. Tak to wygląda:
(pomiar na nogach GND i OC1A)
PWM ustawiam tak:
Tccr1a = A2h
Tccr1b = 19h
Icr1 = FFFFh
Czy gdzieś robię błąd? Czy może spodziewam się cudów? Jeśli to drugie, to jak w prosty sposób obejść ten problem? Dodam że nie zależy mi na liniowości, która i tak przy najmniejszym wypełnieniu się rozjeżdża.
Pozdrawiam.
Działa to bardzo ładnie, jednak przy zerowym wypełnieniu (pwm1a = 0) na wyjściu są jakieś śmieci. Czas trwania to tylko 230ns, ale to wystarczy żeby na wyjściu filtra RC dostać 8mV zamiast równego 0V. A zależy mi żeby zejść do zera. Tak to wygląda:
(pomiar na nogach GND i OC1A)
PWM ustawiam tak:
Tccr1a = A2h
Tccr1b = 19h
Icr1 = FFFFh
Czy gdzieś robię błąd? Czy może spodziewam się cudów? Jeśli to drugie, to jak w prosty sposób obejść ten problem? Dodam że nie zależy mi na liniowości, która i tak przy najmniejszym wypełnieniu się rozjeżdża.
Pozdrawiam.