LED-23: Difference between revisions

From BlinkenArea Wiki
Jump to: navigation, search
(New page: __NOEDITSECTION__ {{Infobox-hw-de |Name = LED-23 |Jahr = 2007 |Pixel = 19 |Farben = rot/gelb |Leuchtmittel = low current LED |Leistung = |Kontakt = ArneRossius |Sonst...)
 
No edit summary
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOEDITSECTION__
__NOEDITSECTION__
{{Infobox-hw-de
{{Infobox
|Name = LED-23
|Name=LED-23
|Jahr = 2007
|Bild=LED-23-03.jpg
|Jahr = 2006
|Pixel = 19
|Pixel = 19
|Farben = rot/gelb
|Farben = rot/gelb
|Leuchtmittel = low current LED
|Leuchtmittel = low-current LEDs
|Leistung =  
|Leistung =  
|Kontakt = [[User:ArneRossius|ArneRossius]]
|Kontakt = [[User:ArneRossius|Arne Rossius]]
|Sonstiges = [http://elektronik-kompendium.de/public/arnerossius/schaltungen/avr/23.htm LED-23 im Elektronik Kompendium]
|Sonstiges =  
}}
}}
{{FlagUK|target=LED-23English}}
''[[Projekte|zurück zur Übersicht]]''


=== Beschreibung ===
=== Beschreibung ===
Line 18: Line 17:


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.
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.
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 (einfach durchverbinden) - ich bin mir allerdings nicht ganz sicher, ob das tatsächlich funktioniert, deshalb habe ich sie vorsichtshalber mit eingebaut.
=== Bausätze ===


Verkabelt habe ich die Platine diesmal aus Platz- und optischen Gründen nicht mit normaler 0,14 mm2-Litze, sondern mit besonders dünner 0,09 mm2-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 :-(.
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 [[User:ArneRossius|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.
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.


* [[:Image:Led-23.png|Schaltplan]]
* [[:Image:Led-23.png|Schaltplan (Prototyp)]]
* [[:Image:23leds.png|LED-Anordnung]]
* [[:Image:LED23-kit-1.1-schematic.png|Schaltplan (Bausatz-Version)]]
* [[:Image:23leds_perfboard.png|LED-Anordnung für Lochrasterplatine]]
* [[:Image:Led-23.zip|Assembler-Quellcode und Hexfile]]
* [[:Image:Led-23.zip|Assembler-Quellcode und Hexfile]]
* [[:Image:23creator.zip|Erstellungsprogramm für Animationen (VB6-Quellcode und Windows-EXE-Datei, kann noch ein paar Bugs enthalten!)]]
* [[:Image:23creator.zip|Erstellungsprogramm für Animationen (VB6-Quellcode und Windows-EXE-Datei, kann noch ein paar Bugs enthalten!)]]
Line 46: Line 51:
| Die 23 in Betrieb (die oberste Zeile der Drei ist nicht wirklich dunkler, sondern wurde erst dazugeschaltet, während das Foto belichtet wurde).
| Die 23 in Betrieb (die oberste Zeile der Drei ist nicht wirklich dunkler, sondern wurde erst dazugeschaltet, während das Foto belichtet wurde).
|}
|}
{| border=0
| [[Image:23-bausatz.jpg|left|200px]]
| Bausatz-Version mit professionell gefertigter Platine.
|}
Mehr Fotos: http://arne.blinkenarea.org/LED-23/.
[[Category:Projekte]]

Latest revision as of 17:27, 28 December 2014

zur Projektübersicht
English Version of this Page
LED-23-03.jpg
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.

Fotos

23 oben.jpg
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 ;-).
23 unten.jpg
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).
23 an.jpg
Die 23 in Betrieb (die oberste Zeile der Drei ist nicht wirklich dunkler, sondern wurde erst dazugeschaltet, während das Foto belichtet wurde).
23-bausatz.jpg
Bausatz-Version mit professionell gefertigter Platine.

Mehr Fotos: http://arne.blinkenarea.org/LED-23/.