Moin Jungs, ist das erste mal, dass ich mich hier so an euch wende, also seit nicht zu hart zu mir... Ich hab nen Mega8, mit dem ich LED's multiplexen will. Insgesammt sollen es 6x6 LED's werden, die an 12 (2x6) Pins des Atmel hängen. (Sagen wir mal PortB und PortD) Wenn ich jetzt einen Pin von PortB auf High schalte, dann kann ich mit den Leveln der Pin's von PortD die Leds steuern. (hoffe bis hierhin versteht mans noch... ;) ) Wenn ich das mit PortB jetzt Reih um mache, dann kann ich alle LED's steuern. Jede für sich ist zwar nur 1/6 der Zeit an, aber das mach ja nichts, da das Auge das bei genügend hohem Takt nicht merkt. :D Wenn ich jetzt die ganze Sache so berechne, dass die LED's wärend ihrer "An-Zeit" 40mA (also genau die Atmel Absolut Maximum Ratings für I/O Ports) ziehen, dann ist das für PORTD ok. Der PortD hat nämlich immer höchstens 40mA an jedem Pin. Anders sieht das bei den Pin's von PortB aus. Der bekommt über die Zeit auch nur 40mA, aber da jeder Pin nur 1/6 der Zeit an ist, bekommt er wärend der Zeit u.U. auch 6x40mA = 240mA reingedrückt... Ist das ein Problem? Wie hoch müsste die Wechsel-Frequenz der PinB's sein, damit es kein Problem mehr ist? Schon mal vielen Dank. Sonst... wenn ihr wisst, wie ich 36LED's mit max. 12 PIN's vom Mega8 steuern kann, könnt ihr das auch gerne hier Posten. - Thorsten
An deiner stelle würde ich ein Multiplex-baustein verwenden. Ich würde nicht an die Absolut Maximum Ratings gehen (auch wenns funktioniert). Hab mir jetzt das Datenblatt net angeschaut, aber wenn der wert pro pin Gild (steht sicher auch im Datenblatt) dann ist das kein problem.
Da wirst du denk ich zumindest an deinem PortB (der immer eine ganze Zeile/Spalte sinken/sourcen muss) nicht um einen Transistor pro Pin rumkommen. Ansonsten kann man natürlich auch den Stromverbrauch der LEDs senken. Das geht durch größere Vorwiderstände. Low cuurrent LEDs haben auch bei geringen Stromstärken um die 2mA noch ausreichend Lichtleistung. Zieh das mal in Betracht. Das wären dann 2 bzw 12mA pro Pin, was die noch ganz gut mitmachen..
>onst... wenn ihr wisst, wie ich 36LED's mit max. 12 PIN's vom Mega8 >steuern kann, könnt ihr das auch gerne hier Posten. Was willste denn machen und wie schnell ist für dich schnell ? Nimm entsprechend viele 74HCT4094 an einem Port und schieb dein Bitmuster rein. Damit brauchste keinen Zirkus mehr zu veranstallten. Wenn das nicht reicht dann nimmste eben 6 Davon und schiebst dein Muster gleich 6-Fach Parallel pro runde rein oder gleich 8 für nen kompletten Port. Fertig.
Wenn man auf externe ICs verzichten möchte, täten es am besten 6 kleine pnp-Transistoren und 6 Basiswiderstände oder eben die oben genannten Niedrigstrom-LEDs, gibt dann auch weniger Programmzirkus; lediglich die Pegel am Transistorport invertieren (1 COM-Befehl in Assembler), im zweiten Falle gar nichts.
Hallo, Max7219, einfacher geht es wahrscheinlich nicht (bis zu 64 LEDs). Allerdings ist der Baustein nicht ganz billig (ca. 9 Euro). Gruss Andreas
Hallo Leute, schon mal vielen Dank für die vielen Antworten am Morgen :D >> Was willste denn machen und wie schnell ist für dich schnell ? Ich brauche eigentlich sogar 7x6 LED's, da ich einen Art "Rückprojektions-Viergewinnt" basteln möchte. Da kommt also ca.20 - 30mm über die LED's ein Blatt Papier (später vielleicht milchiges Plexiglas) und dann sieht man die "Spielsteine" auf der Oberfläche. Da das ganze auch bei Tageslicht laufen soll, wollte ich eigenlich schon Power-LED's einsetzen, wenngleich ich auch Low-Current haben und.. ja die sind fast genauso hell. "Schnell" heißt für mich so schnell, dass man die LED's nicht flackern sieht. :) Auch die Idee mit den Transistoren ist mir schon gekommen. Da ich ja insgesammt 42LED's x 2 (2 Spieler) brauche, hätte ich dann 6PNP's und 6NPN's gebraucht. >> Nimm entsprechend viele 74HCT4094 an einem Port und schieb dein >> Bitmuster rein. >> Damit brauchste keinen Zirkus mehr zu veranstallten. Auf so eine Antwort hatte ich gehofft. Wobei ich von denen ja wahrscheinlich auch 12 brauche, wenn ichs mir bei der Software einfach machen will ;) Nagut, vielen Dank nochmal und nen schönen Tag! - Thorsten
Naja, das Problem ist wohl, daß Du, auch wenn Du die 74HCT4094 benutzt, trotzdem Transistoren brauchst, um den Strom für die LEDs aufzubringen, da die 74.. das auch nicht können, sind auch nur normale HighSpeedCMOS-ICs. Damit hast Du lediglich Portpins gespart, aber nix gekonnt. SMD-Transistoren der Marke BC847C können locker 200mA wegstecken und sind nicht größer als ein Fliegenschiß und kosten 9 Cent (plus natürlich die Basiswiderstände), was soll da noch mehr Aufwand?
Also ich benutze meist MOS4094 die könne auch größeren current (auf jedenfall genung für Leds) bereitstellen.
Die heißen nur bei Reichelt MOS4094 (Die verschicken die billigsten 4094er die der Markt halt für sie bietet. Meine waren bis jetz immer CD4094) und da laufen auch nur Lowcurrent LEDs gescheit dran.
Jo, ich halt´s für keine gute Idee, nen CMOS-Ausgang direkt über einen Widerstand mit ´ner LED zu verkoppeln, wenn diese mehr als 10mA schluckt. Die Kanalwiderstände im IC sind gerade bei kleiner Betriebsspannung (5V ist klein für CMOS) recht hoch und somit wird die Verlustleistung in den Chip verlagert, der sich dann schön aufwärmt und irgendwann Ausgang für Ausgang zugrunde geht. Was mit LowCurrentLEDs geht, geht noch lange nicht mit den superhellen, schon gar nicht bei Tageslicht, weil dafür wird nun mal ´nen Sack voll Strom gebraucht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.