Anbei mal eine programmierbare 16 Kanal Lichtsteuerung.
Pro Kanal lassen sich 255 Schritte abspeichern.
Ein Schritt kann 10ms..10min dauern.
Die PWM ist logarithmisch (0..22).
Die Schaltung ist ein ATtiny44 mit 11,0592MHz Quarz, MAX202, AT24C512
und 2* TPIC6B595 kaskadiert.
Die Pinbelegung steht im main.h.
Das Programm ist mit 2298 Byte schon recht groß geworden.
Der AVR-GCC 4.3.2 hat doch des öfteren gegenteilige Ansichten bezüglich
Codeoptimierung.
Die Bedienung ist über ein Terminalprogramm möglich.
Bei Hyperterminal "Beim Empfang Zeilenvorschub anhängen" aktivieren.
Es gibt folgende Kommandos:
S - Start Lightshow
Q - Beende Lightshow
V - Anzeige aller Einträge
VA ... VP - Anzeige der Einträge zur eines Kanals
A ttttt ppp - Hinzufügen eines Eintrags zu Kanal A
(ttttt = Zeit in 10ms, ppp = PWM-Wert)
P 0 ppp - Löschen aller Einträge von Kanal P
Die Ausgabe kann man in eine Datei schreiben und später wieder einlesen.
Da der AT24C512 nur mit 16kB belegt ist, könnte man noch 4 Lightshows
auswählen (ist noch nicht implementiert).
Wenn jemand mal schöne Lightshows zusammengestellt hat, würde ich mich
freuen, wenn er die posten könnte.
Peter