LED RGB Strip Ansteuern

Gast #3258660
Guten Tag,
ich möchte mit einem ATMEGA8 ein 1.5m LED RGB Strip ansteuern. Wie ich 
gelesen habe, wird dies mit einer PWM geregelt, den 12V anschluss habe 
ich mit der Versorgungsspannung von 12V angeschlossen, und die 3 Pins 
(R, G, B) kann ich mit einem FET auf GND schalten. Doch wie genau muss 
ich jetzt die PWM machen, damit ich die Farben ändern kann?
Rot ist auf dem Pin PD5, Grün auf PD4 und Blau auf PD3 und den ATMEGA8 
betreibe ich ohne externen Quarz.
Schöne Grüße
Bei deiner Verdrahtung fällt die Nutzung der Hardware-PWM schonmal 
flach. Aber damit du mal ein Gefühl für die PWM-Steuerung bekommst, 
kannst du mal mit einer endless-loop Anfangen verschiedene 
Tastverhältnisse an den Ausgängen zu erzeugen.

Wenn das soweit klappt, musst du leider die Timer-Interrupts anfassen 
und dir die PWM ein Stück weit in Software gießen.
Also einen Interrupt auf z.B. 20000kHz konfigurieren, dann kannst du 
200Hz in 100 Schritte auflösen. Also eine 200Hz-PWM mit 100er Auflösung.

Alle 50µS wird dann dein Programmcode zur PWM-Erzeugung aufgerufen. Dort 
zählst von 0 bis 100 und vergleichst mit dem PWM-Sollwert. Abhängig 
davon schaltest du dann auf allen drei Ausgängen die Transistoren durch 
oder eben nicht.
Wie schon gesagt - falsche Pins aber egal für das Verständnis.


Wenn du weisst was eine PWM ist (wenn du es wirklich verstehst), ist es 
nicht schwierig.

Du kannst mit einer einfachen Schleife anfangen:

Eine Variable wird um eins erhöht, danach gibt es einen kleinen von dir 
eingebauten Delay (Verzögerunsschleife). Du Zählst damit auf 1000 
(z.B.).
Du kannst nun den Ausgang z.B. von 0-100 auf high lassen, danach low bis 
der Zähler wieder zurückgesetzt wird.

Du hättest damit ein Ein/Aus Verhätltnis (und ungefähr die Helligkeit) 
von 10%.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.