www.mikrocontroller.net

Forum: Projekte & Code Regenbogen LED (RGB) mit tiny11 / tiny12


Autor: Lothar M. (lme)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen!

Dies ist mein erster Versuch in AVR Assembler.
Normalerweise bin ich in C unterwegs, bekam aber zufällig einige Tiny12
in die Hände und wollte was mehr oder weniger sinnvolles damit machen.
Ich bitte also um Nachsicht - oder vielmehr um konstruktive Kritik und 
Verbesserungen.

Die Schaltung besteht aus einem Tiny12 (Tiny11 sollte auch möglich 
sein),
3 LEDs in den Farben Rot, Grün und Blau und 3 Vorwiderständen für die
LEDs. Die Software erzeugt einen variierenden Mischfarbenverlauf durch
unterschiedlich schnelles Auf- und Abdimmen der einzelnen Farben.
Der Trick dabei ist, für die Dimmgeschwindigkeiten Primzahlen zu wählen.
Dadurch wird die Dauer bis zur Wiederholung derselben Mischfarbe 
maximiert.

Viele Parameter sind im Source als symbolische Werte definiert und 
können
nach Belieben angepasst werden. So z.B. die oben genannten einzelnen
Dimmgeschwindigkeiten, die Gesamtgeschwindigkeit, maximale und minimale
Helligkeiten, Startwerte etc.

Enjoy!

 Lothar

Autor: Lothar M. (lme)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Habe jetzt festgestellt, daß insbesondere bei hellen LEDs ein deutliches
Flimmern zu sehen ist.
Deshalb wurde der PWM Zyklus von 256 auf 128 Stufen reduziert, was eine
etwa doppelt so schnelle PWM ergibt.
Leider reduziert sich damit aber auch die Anzahl der darstellbaren 
Mischfarben von ca. 16 Millionen auf 'nur' ca. 2 Millionen.
Macht aber nix: Das Auge kann ohnehin nur ein paar tausend Farbtöne 
unterscheiden.

Angehägt die neue Version 1.1 mit der schnelleren PWM.

  Lothar

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.