STM32duino: pwmWrite nicht genau?

Gast #5650890
Lesenswert?

Hallo Leute,

ich gehöre zu den Anfängern, der STM32duino auf ein Blue-Pill Board 
benutzt. Hierbei habe ich beim Erzeugen von PWM aber ein Problem 
festgestellt!

Ich benutze die PWM Funktion pwmWrite auf einem PWM-Pin (PB8). 
Zusätzlich habe ich den Timer 4, der diesen PWM Pin Versorgt per 
setPeriod Funktion ungefähr auf 500Hz gesetzt. Die Frequenz liegt mit 
~490Hz auch genau genug bereit, wenn ich einen PWM-Wert setzte.

Was jedoch nicht richtig funktioniert ist die PWM Genauigkeit! Das PWM 
hat einen 16 Bit Wert, also von 0 - 65535. Setzte ich aber 50% Duty 
(Wert: 32767) sehe ich auf dem Oszi ~66% On statt 50. Statt 75% Duty 
erhalte ich nahezu 100% On.

Selbiges passiert überigens auch bei dem 8Bit PWM per analogWrite. 127 
ist deutlich mehr als 50% Duty.

Ich hoffe ihr versteht mein Problem.
Kann mir da jemand helfen?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren