PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : LED Controller ?



wodka
12.01.2006, 16:59
Hallo,

Ich möchte gerne einen Sternenhimmel aus 100 LEDs bauen...Wie würdet ihr die Sache angehen??

Ich habe einen Atmega8 Board mit Mosfet-Ausgängen und dachte an I²C Bus.. Gibt es einen IC Baustein. den man mit I²C ansteuert und 33 LED pro Baustein anschließen kann ( am besten auch ohne Vorwiderstand, müsste doch mit PWM auch so gehen oder ). So eine Art LED Controller.

Würde mich über Ideen freuen..

DerWarze
12.01.2006, 18:32
Hallo

Soweit ich weiss gibt es im I²C nur einen mit 8 Ausgängen. Wär mir aber so zu umständlich. Ohne Strombegrenzung am einfachsten ein Widerstand läuft bei LED's nix, gibt zwar auch LED Treiber ICs ist aber in diesem Fall die zu teuere Lösung.
Mach doch einfach eine 10x10 Martix und Steuere die mit ULN2003 oder Transistoren an und diese mit einem BCD(Binär)-Dezimal Decoder. So kannst Du mit nur einem Port max 256 LED's adressieren. Klar das diese Sache nur als Multiplexansteuerung geht.
War vor einiger Zeit mal eine ähnliche Sache hier suche mal nach "Drachenlicht"

wodka
12.01.2006, 19:02
Wie funktionieren denn Laufschriften... Ich dachte eigentlich an eine 2 Draht Leitung. Weil ich halt von Atmega gerne von 2 Ports nur weg wollte. die anderen möchte ich noch nutzen...

Was ist mit dem "MAX6953" 5x7 Matrix ansteuerung per I2C. Nur leider habe ich nicht so viel ahnung. Ich denke so, das ich jede Led eine Adresse hat und ich die einzelnd ansteuern kann: Theoretisch müsste es doch gehen. Nur wie setze ich dieses um und kann das ein Atmega überhaupt?

Kann man die Max6953 anreihen und hat so mehr adressen . Hab noch nicht soviel Ahnung von I2C.

Gruß

Ratber
12.01.2006, 19:39
Jede der 100 LED ne eigene Adresse und alles auf einem Bus ja ?


Das geht,aber das ist mit etwas Aufwand verbunden.
zb. Dreidrahtbus
Spannungsversorgung plus Datenleitung.Alle LEDs hängen an diesem Strang.

Du nimmst für jede LED einen Tiny11 (Einzelpreis 50 Cent. bei 100 Stück auch sicher für 40Cent) und hängst da die LED drann (Kein Problem).

Ds Busprotokoll kann seriell erfolgen und muß selbsterstellt werden.
Kann einfach in der ARt "Startzeichen,LED-nummer,An/Aus/Helligkeit,Stoppzeichen" erfolgen.

Bei 9600 Baud sind das über 200 Befehle die Sekunde.

100 LEDs mit Controller sind ca. 22mA pro Modul also 2.2A gesamt plus das was der Steuercontroller schluckt.

Felix.
12.01.2006, 20:11
könnte man nicht Schieberegister benutzen? ( ich habe von elektronik nahezu null ahnung, weiß aber dass bei blinkenleds schieberegister benutz werden.)

Ratber
12.01.2006, 20:17
Klar kannste das aber dann ist für jede änderung die ganze Kette zu übertragen (100/8=12.5 also 13 Chips in einer Kette) bzw. die Teilkette wenn du es aufteilst.

DerWarze
13.01.2006, 16:33
Nun ja der MAX6953 könnt es irgendwie auch, ist aber soweit ich weis als Ansteuerung für Matrixdisplays, also Zeichenausgabe gedacht. Hab mit dem teil noch nichts gemacht weis also nicht ob da jeder Punkt einzeln (wie bei einem Grafikdisplay)Addressiert werden kann. das Datenblatt müste dazu Auskunft geben. Der Mega sollte da die Ansteuerung locker schaffen. Nur man muss so ein Spezial IC erst mal zu einem vernünftigen Preis bekommen!
Der Aufwand für jede LED einen Tiny zu nehmen scheint mir da doch etwas hoch schließlich muß man das ja auch alles irdendwie verdrahten was wenn die LED's nicht alle auf einer Platte sind einige Mühe macht. Kann man ja auch einen Mega8 (weis nicht was Ihr so dafür bezahlt mich kostet so ein Teil im SMD Gehäuse nur 1,10) für die LED-Matrix nehmen, da dann genug freie Port sind braucht man nur noch Treiber-Transistoren und kann das ganze mit I²C, RS232 etc. ansteuern. Da könnte man sogar über PWM Fadingeffekte realisieren(was bei der Tinyvariante natürlich auch geht) und im EEprom fertige Muster ablegen.

Ratber
13.01.2006, 22:11
Yo,der Geht auch.
Hat den wer im Sortiment ?

God
13.01.2006, 22:38
Wenn die Ansteuerung nicht allzu schnell erfolgen soll könnte man mehrere 74AC 574 D-Flipflop (sinds glaub ich) nehmen.


So hat man dann eine Zweidrahtlösung: Data und CLK.
Data kommt auf den ersten Eingang des 574, der erste Ausgang auf den zweiten Eingang, der zweite Ausgang auf den dritten Eingang, usw ... Der 8te Ausgang kommt dann an den ersten Eingang des nächsten 574, usw ... ;-)
CLK kommt dann an alle Clock-Eingängen der 574.

Jedesmal, wenn man jetzt CLK strobt, werden alle Zustände ein Flip-Flop weiter gerückt und der Zustand an Data im ersten Flip-Flop geladen.


Müsstest halt 13* 20polige ICs einlöten :-/
Den 74AC 574 gibts bei Reichelt für 16 cents.


Achja, das funktioniert natürlich alles nur theoretisch, also waer schön wenn jemand meine Idee bestätigen könnte :D
Will mit der gleichen Methode eine Segment-LCD Anzeige ansteuern.

mfg Clemens

wodka
14.01.2006, 07:53
Super für die vielen Ideen :-) Hatte nur in der Sauna mal einen Sternenhimmel mit LEDs gesehen und da waren nette Fadingeffekte. Wie die LED nun alle angesteuert waren, weiß ich nicht...

Ratber
14.01.2006, 12:04
Das geht recht einfach.

Alten 90Sx oder Tinyx ,8er Soft-PWM drauf,8 Fets oder transen als Endstufe drann,fertig.

Wie de die Gruppen verteilst ist der Phantasie überlassen.


Für Soft-PWM finden sich massig Projekte im Web so das man das Rad nicht nochmal erfinden muß.

bekay
16.01.2006, 21:34
schau Dir mal den SAA1064 an, damit kannst Du multiplexed 4*8 segmente (LEDs) steuern. 4 von den I2C Bausteinen kannst Du am I2C-bus adressieren. Kosten bei Reichelt ca. 2,60 pro stueck. Widerstaende zur Strombegrenzung sind auch nicht erforderlich, da bei den ICs die Ausgangstroeme einstellbar sind.

Statt der 7-Segmente plus Decimalpunkt kannst Du dir auch 8 einzelne LEDs anschliessen.

bekay

digitali
16.01.2006, 23:05
Dann kannste auch gleich nen MAX 7219CNG nehmen. Oder zwei kaskadiert. Ein solcher kann eine 8x8 Matrix ansteuern. Das ganze wird total simpel seriell angesteuert. Biste viel flexibler mit. Da kannste dann auch gleich ganze Buchstaben und Ziffern auf Deinem Sternenhimmel durchlaufen lassen. Wie ne LED-Laufschrift. Und der ATMega8 langweilt sich bei der Ansteuerung auch noch.
Einfach mal das pdf dazu vernuenftig anschauen...

bekay
19.01.2006, 21:17
MAX7219 / 7221 ist sicherlich ebenso geeignet, musst Du halt mit SPI ansprechen, "Wodka" hatte die Anfrage in Richtung I2C (TWI) gestellt. Darueber hinaus ist der MAx mit knapp 8€ doch schon etwas teuerer :-)

http://www.woe.onlinehome.de/led_anz.htm

dort findet man beide Alternativen, bekay