Hohe PWM Auflösung bei HardwarePWM

#1971857
Lesenswert?

Ich nutze zur Helligkeitssteuerung meiner LEDs HardwarePWM auf meinem 
Atmega168. Die Helligkeitswerte für die LEDs lese ich aus dieser 
Tabelle:
1
uint16_t pwmtable[32] PROGMEM = {0, 1, 2, 2, 2, 3, 3, 4, 5, 6, 7, 8, 10, 11, 13,
2
    16, 19, 23, 27, 32, 38, 45, 54, 64, 76, 91, 108, 128, 152, 181, 215, 255};

Durch diese Tabelle sind die LED Schritte allerdings auf 32 Schritte 
begrenzt, was bei übergängen zu einem sichtbaren ruckeln führt. Da ich 
Timer0 und Timer2 verwende (3 LEDs) kann ich als maximalen Wert nur 256 
verwenden. Gibt es eine Möglichkeit diese Schranke zum umgehen?
#1971887
Lesenswert?

Marcel Holle schrieb:

> Timer0 und Timer2 verwende (3 LEDs) kann ich als maximalen Wert nur 256
> verwenden. Gibt es eine Möglichkeit diese Schranke zum umgehen?

Eine 10 Bit Software-PWM ist bei 20Mhz Systemtakt noch so lala drinnen. 
Das ergibt dann knapp 76Hz PWM Frequenz. 3 LED sind dann kein Thema. In 
~200 Takten in der ISR müsste man so um die 10 bis 20 LED relativ 
problemlos unterbringen können, so dass auch nebenher noch etwas 
Rechenzeit übrig bleibt.

Wenn das nicht reicht, müsste man Falks 'intelligente Lösung' aus dem 
Ärmel zaubern.
Gast #1971937
Lesenswert?

Man kann das Hardware PWM Signal noch zusätzlich mit einer Software 
Modulation übrelagern.  Für einen Wert von z.B: 2,5 also zwischen 2 und 
3 als PWM Wert hin und her wechseln. Die Software braucht so nur 4 - 8 
Bits zu berechnen.  Weil die Software nur für 1 PWM Schritt 
verantwortlich ist, fallen auch relativ niedrige Frequenzen noch nicht 
so sehr als Flackern auf.
#1971966
Lesenswert?

@  Marcel Holle (multiholle)

>uint16_t pwmtable[32] PROGMEM = {0, 1, 2, 2, 2, 3, 3, 4, 5, 6, 7, 8, 10,


Da du ja anscheinend den Artikel LED-Fading schon kennst, warum 
nutzt du nicht Timer 1 mit 16 Bit? Damit kannst du zwei LEDs butterweich 
dimmen. Und mit dem richtigen AVR hast du zwei 16 Bit Timer und 4 PWM 
Kanäle. Problem gelöst. Alternativ Soft-PWM und 10 Bit Auflösung, 
das könnte schon reichen.

MFG
Falk

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