Forum: Mikrocontroller und Digitale Elektronik Mega8 kurzzeitig jenseits der "Absolute Maximum Ratings"


von Thorsten H. (Gast)


Lesenswert?

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

von Jenzi (Gast)


Lesenswert?

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.

von jmoney (Gast)


Lesenswert?

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..

von Ratber (Gast)


Lesenswert?

>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.

von TravelRec. (Gast)


Lesenswert?

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.

von Andreas Hesse (Gast)


Lesenswert?

Hallo,
 Max7219, einfacher geht es wahrscheinlich nicht (bis zu 64 LEDs).

Allerdings ist der Baustein nicht ganz billig (ca. 9 Euro).

Gruss
Andreas

von Thorsten H. (Gast)


Lesenswert?

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

von TravelRec. (Gast)


Lesenswert?

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?

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Also ich benutze meist MOS4094 die könne auch größeren current (auf
jedenfall genung für Leds) bereitstellen.

von Simon K. (simon) Benutzerseite


Lesenswert?

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.

von TravelRec. (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.