www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PWM-Beschaltung mehrerer LEDs


Autor: Sören (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

Für eine Steuerung benötige ich folgende Funktion:

7 LEDs sollen einzeln in drei Helligkeitsstufen geschaltet werden 
können(AUS, MITTELHELL, HELL). Die nötigen Anweisungen erledigt ein 
AT90can128. Dieser hat leider nicht genug PWM-Ausgänge für den Anschluss 
von je einem LED-Treiber TLE4241 für jede LED.

Bevor ich einen zweiten µC zur Aufbereitung der Signale verwende (z.B. 
aus der AT90PWM-Reihe) wüsste ich gerne, ob jemand einen einfacheren und 
besseren Vorschlag hat, die 7 (praktisch wohl 8 - 12) PWM-Signale zu 
erzeugen.

Schönen Dank für viele Antworten,

Sören

Autor: Kai Franke (kai-) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schau dazu mal bei TI vorbei, die haben jede Menge LED Treiber (PWM oder 
Konstantstrom), die du über SPI ansteuern kannst. Dafür brauchst du dann 
nur 3 Pins

Autor: Heino (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was ist TI?

Autor: Moritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit den Helligkeitsstufen sollte es kein Problem sein, die PWM 
softwaremäßig zu emulieren.
Nimm als PWM-Frequenz z.B. ein Kilohertz, dann langweilt sich deine MCU 
zu Tode. Am besten - wenn's die MCU - hergibt, einen Timerinterrupt 
verwenden, und einen port entweder eingeschaltet, ausgeschaltet oder im 
Wechsel ein- und ausschalten. Keine Hexerei. Wenn Du den Duty-Cycle für 
halb hell auf 25% einstellst wird das Ergebnis rein visuell besser 
werden.

Autor: Sören (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ein Software-PWM kommt meiner Meinung nach nicht in der Frage, weil 
der µC auch noch weitere Berechungen durchführt, unter anderem soll er 
über CAN kommunizieren.

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es nur um die Helligkeit geht und nch ein paar Portpins zur 
Verfügung stehen, dann mit 2 Pins an die Led mit verschiedenen 
Widerstandswerten.

MW

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Michael Wilhelm (Gast)

>Wenn es nur um die Helligkeit geht und nch ein paar Portpins zur
>Verfügung stehen, dann mit 2 Pins an die Led mit verschiedenen
>Widerstandswerten.

Genau. Das noch mit Schieberegistern kombiniert und alles ist paletti.

AVR-Tutorial: Schieberegister

MFG
Falk

Autor: Sören (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die PWM-Funktionalität zum Dimmen der LEDs muss leider erhalten bleiben, 
da ich später die Helligkeit softwareseitig verändern können muss. Die 
Lösung nur über Vorwiderstände funktioniert also nicht...

Autor: Sören (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achja: Der Kunde erwartet hohe Qualität, also benötige ich unbedingt 
eine Konstantstromregelung, damit die LEDss nicht unterschiedlich hell 
sind.

Autor: Raoul D. (raoul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Heino:

TI ist die Abkürzung für Texas Instruments

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Der Kunde erwartet hohe Qualität, also benötige ich unbedingt
>eine Konstantstromregelung, damit die LEDss nicht unterschiedlich hell
>sind.

Der Kunde??

Dann gehört das in das FOrum Markt

Qualität != Konstantstromquelle

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Sören (Gast)

>Achja: Der Kunde erwartet hohe Qualität, also benötige ich unbedingt
>eine Konstantstromregelung, damit die LEDss nicht unterschiedlich hell
>sind.

TLC5922.

Autor: Sören (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit Konstantstromregelung meinte ich im Prinzip nur, dass LEDs, die 
gleich hell sein sollen auch wirklich gleich hell sind. Aufgrund der 
Proportionalität von Strom und Helligkeit lässt sich das meiner Meinung 
nach nur z.B. über einen LED-Treiber erreichen, der einen konstanten 
Strom "treibt", oder?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sören wrote:
> Also ein Software-PWM kommt meiner Meinung nach nicht in der Frage, weil
> der µC auch noch weitere Berechungen durchführt, unter anderem soll er
> über CAN kommunizieren.

Und?
Bei 7 bis 12 Led und 16 Stufen braucht eine Soft-PWM über den Daumen
noch nicht mal 5% Rechenleistung. Ich wage mal die Behauptung, dass
dein restliches Programm die Soft-PWM noch nicht mal bemerken wird.

Autor: hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sören,

einfach eine "Additive PWM" verwenden. Pro LED ein Zähler (8 Bit).
Timer Interrupt für Zeitfenster (z.B. 1 ms).
Im Interrupt Zähler + PWM-Wert. Den Überlauf (Carry-Bit) auf den port
ausgeben. Besonderst im mittleren Bereich gut zu glätten.
Für beliebig viele Ausgänge möglich.

Gruß hans

Autor: K. B. (kbf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im angehängten Link ist ein Programmbeispiel, das zu deinem Fall gut 
passen würde und sehr wenig Rechenleistung braucht.

http://www.mikrocontroller.net/articles/Soft-PWM


MfG
Karsten

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.