LED-23: Difference between revisions
ArneRossius (talk | contribs) No edit summary |
ArneRossius (talk | contribs) No edit summary |
||
Line 24: | Line 24: | ||
=== Aufbau === | === Aufbau === | ||
Die Schaltung lässt sich trotz der etwas problematischen Anordnung der LEDs auf einer Lochrasterplatine aufbauen, wenn man einige LEDs waagerecht und andere senkrecht durch die Löcher steckt. Aufgrund des sehr geringen Platzes konnte ich nur einen achtpoligen AVR einsetzen und habe mich für den Tiny11 entschieden, der zwar nur wenige Features bietet, für diese Schaltung aber locker ausreicht. Um die vielen LEDs alle einzeln ansteuern zu können, kommt eine spezielle Multiplexing-Technik mit dem Namen Charlieplexing zum Einsatz, die die Möglichkeit ausnutzt, dass die Portpins des AVR neben "null" und "eins" auch noch hochohming geschaltet werden können (Eingang ohne Pullup). Auf diese Weise schafft man mit den fünf vollwertigen Portpins (der Reset-Pin kann nur als Eingang verwendet werden) 20 LEDs anzusteuern, also gerade genug für die 19 LEDs dieser Schaltung. Durch das Multiplexing sind die LEDs allerdings etwas dunkel, zumal die Portpins zum Teil auch recht viel Strom liefern müssen - es fließt also ein recht geringer Strom durch die LEDs. Wer genug Zeit hat, welche zu besorgen, sollte statt der von mir verwendeten Standard-LEDs auf jeden Fall Low-Current- bzw. High-Efficiency-LEDs einsetzen, die auch mit wenig Strom schon hell leuchten. Eine weitere Helligkeitssteigerung kann man durch Weglassen der Dioden erreichen, wie im Schaltplan der Bausatz-Version zu sehen. | Die Schaltung lässt sich trotz der etwas problematischen Anordnung der LEDs auf einer Lochrasterplatine aufbauen, wenn man einige LEDs waagerecht und andere senkrecht durch die Löcher steckt. Aufgrund des sehr geringen Platzes konnte ich nur einen achtpoligen AVR einsetzen und habe mich für den Tiny11 entschieden, der zwar nur wenige Features bietet, für diese Schaltung aber locker ausreicht. Um die vielen LEDs alle einzeln ansteuern zu können, kommt eine spezielle Multiplexing-Technik mit dem Namen Charlieplexing zum Einsatz, die die Möglichkeit ausnutzt, dass die Portpins des AVR neben "null" und "eins" auch noch hochohming geschaltet werden können (Eingang ohne Pullup). Auf diese Weise schafft man mit den fünf vollwertigen Portpins (der Reset-Pin kann nur als Eingang verwendet werden) 20 LEDs anzusteuern, also gerade genug für die 19 LEDs dieser Schaltung. Durch das Multiplexing sind die LEDs allerdings etwas dunkel, zumal die Portpins zum Teil auch recht viel Strom liefern müssen - es fließt also ein recht geringer Strom durch die LEDs. Wer genug Zeit hat, welche zu besorgen, sollte statt der von mir verwendeten Standard-LEDs auf jeden Fall Low-Current- bzw. High-Efficiency-LEDs einsetzen, die auch mit wenig Strom schon hell leuchten. Eine weitere Helligkeitssteigerung kann man durch Weglassen der Dioden erreichen, wie im Schaltplan der Bausatz-Version zu sehen. Da ich zunächst nicht sicher war, ob das funktioniert, hatte ich die Dioden im Prototyp noch eingebaut. | ||
Verkabelt habe ich die Platine diesmal aus Platz- und optischen Gründen nicht mit normaler 0,14 mm²-Litze, sondern mit besonders dünner 0,09 mm²-Litze. Die passt auch mit Isolierung wunderbar durch die Löcher der Platine durch, so dass an besonders engen Stellen auch mal ein Stück des Kabels unter der Platine verlegt werden kann. Optimal wäre natürlich eine professionelle, geätzte Platine gewesen, aber dafür hatte ich naürlich keine Zeit mehr :-(. | Verkabelt habe ich die Platine diesmal aus Platz- und optischen Gründen nicht mit normaler 0,14 mm²-Litze, sondern mit besonders dünner 0,09 mm²-Litze. Die passt auch mit Isolierung wunderbar durch die Löcher der Platine durch, so dass an besonders engen Stellen auch mal ein Stück des Kabels unter der Platine verlegt werden kann. Optimal wäre natürlich eine professionelle, geätzte Platine gewesen, aber dafür hatte ich naürlich keine Zeit mehr :-(. |
Revision as of 01:43, 4 February 2013
zur Projektübersicht | |
Jahr | 2006 |
Anzahl Pixel | 19 |
Graustufen / Farben | rot/gelb |
Leuchtmittel | low-current LEDs |
Leistungsaufnahme | |
Kontaktperson | Arne Rossius |
Projekt-Website |
Beschreibung
Diese kleine Schaltung ist entstanden, als ich zwei Tage vor dem Termin zu einem dreiundzwanzigsten Geburtstag eingeladen wurde und deshalb noch dringend ein Geschenk brauchte. Aufgrund der besonderen Bedeutung der 23 bot es sich natürlich an, eine Schaltung zu basteln, die mit dieser Zahl in Verbindung steht und somit gleich eine doppelte Bedeutung hat.
Die Schaltung besteht aus einem ATTiny11-Microcontroller, der auf 19 LEDs (leider keiner 23 LEDs ;-)), die in der Form einer 23 angeordnet sind, verschiedene Lauflicht- und Blinkeffekte anzeigt. Betrieben wird die Schaltung mit einer 9V-Batterie, damit das Ganze nicht zu groß wird und sich überall einfach hinstellen lässt.
Bausätze
Seit dem 24C3 gibt es einen LED-23-Bausatz zum Preis von 10 Euro. Er beinhaltet die Platine, alle Bauteile, eine 9V-Batterie und eine detaillierte Anleitung (auf englisch). Wenn Du Interesse hast, wende Dich am besten an Arne. Der Bausatz ist auch für Anfänger geeignet und enthält keine SMD-Bauteile.
Aufbau
Die Schaltung lässt sich trotz der etwas problematischen Anordnung der LEDs auf einer Lochrasterplatine aufbauen, wenn man einige LEDs waagerecht und andere senkrecht durch die Löcher steckt. Aufgrund des sehr geringen Platzes konnte ich nur einen achtpoligen AVR einsetzen und habe mich für den Tiny11 entschieden, der zwar nur wenige Features bietet, für diese Schaltung aber locker ausreicht. Um die vielen LEDs alle einzeln ansteuern zu können, kommt eine spezielle Multiplexing-Technik mit dem Namen Charlieplexing zum Einsatz, die die Möglichkeit ausnutzt, dass die Portpins des AVR neben "null" und "eins" auch noch hochohming geschaltet werden können (Eingang ohne Pullup). Auf diese Weise schafft man mit den fünf vollwertigen Portpins (der Reset-Pin kann nur als Eingang verwendet werden) 20 LEDs anzusteuern, also gerade genug für die 19 LEDs dieser Schaltung. Durch das Multiplexing sind die LEDs allerdings etwas dunkel, zumal die Portpins zum Teil auch recht viel Strom liefern müssen - es fließt also ein recht geringer Strom durch die LEDs. Wer genug Zeit hat, welche zu besorgen, sollte statt der von mir verwendeten Standard-LEDs auf jeden Fall Low-Current- bzw. High-Efficiency-LEDs einsetzen, die auch mit wenig Strom schon hell leuchten. Eine weitere Helligkeitssteigerung kann man durch Weglassen der Dioden erreichen, wie im Schaltplan der Bausatz-Version zu sehen. Da ich zunächst nicht sicher war, ob das funktioniert, hatte ich die Dioden im Prototyp noch eingebaut.
Verkabelt habe ich die Platine diesmal aus Platz- und optischen Gründen nicht mit normaler 0,14 mm²-Litze, sondern mit besonders dünner 0,09 mm²-Litze. Die passt auch mit Isolierung wunderbar durch die Löcher der Platine durch, so dass an besonders engen Stellen auch mal ein Stück des Kabels unter der Platine verlegt werden kann. Optimal wäre natürlich eine professionelle, geätzte Platine gewesen, aber dafür hatte ich naürlich keine Zeit mehr :-(.
Die Software ermöglicht es, dass Animationen mehrfach wiederholt werden, bevor die nächste abgespielt wird. Auf diese Weise muss die Animation nur einmal im Speicher stehen, so dass man auch im einen Kilobyte des Tiny11 ein ausreichend langes Animationsprogramm zusammenbekommt. Die Animationen habe ich der Einfachheit halber in einzelnen Assemblerdateien abgelegt, die dann per Include-Direktive eingebunden werden. Da immer eine gerade Anzahl Bytes in jeder Zeile stehen muss, gibt es zum "Auffüllen" noch einen No-Operation-Befehl, der beim Anzeigen der Animationen einfach ignoriert wird. Letztendlich muss am Ende der Animationen noch ein besonderer Befehl stehen, damit das Programm wieder an den Anfang der ersten Animation springt. In der Version die hier heruntergeladen werden kann sind allerdings alle Original-Animationen enthalten und fertig eingebunden, Sie können es also auch ohne Änderungen direkt benutzen.
- Schaltplan (Prototyp)
- Schaltplan (Bausatz-Version)
- LED-Anordnung für Lochrasterplatine
- Assembler-Quellcode und Hexfile
- Erstellungsprogramm für Animationen (VB6-Quellcode und Windows-EXE-Datei, kann noch ein paar Bugs enthalten!)
Fotos
Die Oberseite der Platine mit den LEDs und den dazwischengequetschten restlichen Bauteilen. Die verschiedenen Farben der Ziffern kamen eigentlich nur deshalb zustande, weil ich nicht ausreichend gleichfarbige LEDs hatte ;-). |
Auf der Lötseite kann man bei genauem Hinschauen einen der beiden 0805-SMD-Kondensatoren zwischen den Lötstellen des Spannungsreglers erkennen (der andere ist vom roten Kabel verdeckt). |
Die 23 in Betrieb (die oberste Zeile der Drei ist nicht wirklich dunkler, sondern wurde erst dazugeschaltet, während das Foto belichtet wurde). |
Bausatz-Version mit professionell gefertigter Platine. |