Forum: Mikrocontroller und Digitale Elektronik Vorschläge zur Pinerweiterung eines megas gesucht


von Christian W. (clupus)


Lesenswert?

Hallo,

ich habe hier häufiger das Problem, dass ich einen recht kleinen AVR 
verwenden kann (weil wenig zu berechnen ist), aber eine Unmenge zu 
schalten ist.
Beispiel: Platine mit LEDs zur Anzeige von Text. Das is nix besonderes 
(für die CPU), aber da kommen schnell über 40 LEDs zusammen. Und auch 
150 oder 200 wäre prinzipiell nich zu groß gegriffen, wenn das nur 5x7 
LEDs pro Buchstabe sind...

Wie würdet ihr so was lösen? Klar man kann einen großen Mega nehmen, 
aber daas reicht allein noch nicht, die haben auch keine 200 IO-Pins.
Schieberegister? spezielle IO-Erweiterungssteine? (De)Multiplexer in 
irgend einer Art? Latches kombiniert mit einer diskreten 
Adress-Dekodierung? PAL/GAL/CPLDs? "kleine" tiny AVRs oder Megas mit 
recht hoher Pin-Zahl die as Slave die LEDs treiben?

Außer dem Schieberegister kommt mir das wie mit Kanonen auf Spatzen 
schießen vor...

Was ist da eine gute und vertretbare Lösung?

Danke
Christian

von Falk B. (falk)


Lesenswert?

@ Christian Wolf (clupus)

>Schieberegister?

Ist billig und platzsparend.

> spezielle IO-Erweiterungssteine?

Teuer und schwer beschaffbar.

> (De)Multiplexer in irgend einer Art?

Hmm.

> Latches kombiniert mit einer diskreten
>Adress-Dekodierung?

Sehr schnell.

> PAL/GAL/CPLDs? "kleine" tiny AVRs oder Megas mit
>recht hoher Pin-Zahl die as Slave die LEDs treiben?

Eher was, wenn die IOs räumlich weit auseinander liegen (10m++).

MFG
Falk

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Nen i2c Portexpander wäre auch noch in betracht zu ziehen.
Vorteil: Man kann mit 2 Pins  grübel  8 x 128 = 1024 Bits schalten.

von Oliver S. (eragon)


Lesenswert?

hab mal vor dem elichen Problem gestanden. Hab dan zu nem 74ACT573 
gegriffen. Weis nicht ob das die optimlae Lösung ist. Würde aber sicher 
funktionieren.

von hans (Gast)


Lesenswert?

Man kann wenn es um LEDs geht auch gut Multiplexen.
Nach Art des SAA1064 kann man einen einfachen LED-Baustein
mit I²C programmieren der 5 x 8 LED multiplext und noch
2-3 Adressierungpins hat (3 bei Verwendung von PA2/NRes als IO)
Damit sind 4 bzw. 8 Bausteine an einem Bus möglich
(max. 160 bzw. 320 LEDs).
Aufwandt Tiny2313, 8 Vorwiderstände, 5 Transistoren, 2-3 Lötbrücken
/Jumper und etwas Software!
Kann dann für beliebige Anzeigen (z.B 7Seg, Bargraf) eingesetz werden.

gruß hans

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.