Forum: Mikrocontroller und Digitale Elektronik Was versteht man unter "gemultiplext"?


von Harald M. (Gast)


Lesenswert?

Guten Tag, ich bin Laie und habe eine wahrscheinlich sehr banale Frage.
Was genau bedeutet es, wenn man im Zusammenhang mit vielen Leuchtdioden 
an einem Mikrocontroller von "gemultiplext" spricht? Wie kann man sich 
das vorstellen, wie funktioniert das Prinzip?


Schöne Pfingsten noch,
mfg Harald

von Hans (Gast)


Lesenswert?

Ich hab auf meinem ATmega32 Testboard fünf 7-Segment Anzeigen, wenn du 
jetzt versuchen würdest jedes Segment von allen Anzeigen an die Ports zu 
löten, dann bräuchtest du ja 40 Pins am Prozessor, und dann hast du 
immer noch keine Grundbeschaltung. D.h.: man legt die Signale von den 
acht Anschlüssen einer Anzeige auf den gleichen Port, so spart man sich 
einige Anschlüsse am Prozessor, dennoch würde jetzt ja jede Anzeige das 
gleiche anzeigen, also nimmt man (in meinem Beispiel jetzt) noch fünf 
Transitoren daz, die man auch auf je einen Port zum ansteuern legt, und 
dann noch gegen Masse schaltet, also wenn man jetzt 7-Segment Anzeigen 
hat, die Common Kathode haben. dann hat man insgesammt acht Pins am 
Prozessor für die einzeln Segmente und dann noch je einen für die 
einzelnen Anzeigen. da spart man sich einige Anschlüsse, und man muss 
nacher nur in seinem Programm die einzelnen Segmente für je ne 
Millisekunde anschalten und den Buchstaben anzeigen lassen.
Ich kann dir auch einen Code schicken wenn du magst, hab gestern die 
ganze Multiplexing Geschichte geschrieben und sie Funktioniert Perfekt!

Grüße Hans

von Peter D. (peda)


Lesenswert?

Hans schrieb:
> Ich kann dir auch einen Code schicken wenn du magst, hab gestern die
> ganze Multiplexing Geschichte geschrieben und sie Funktioniert Perfekt!

Ist das nicht ein bischen weit aus dem Fenster gelehnt?

In dem anderen Thread hast Du doch massive Probleme berichtet.
Was auch kein Wunder ist, mit Delays ist und bleibt das ne Sachgasse.

Du mußt den Timerinterrupt benutzen!
Fang mal klein an (laß ne LED im Interrupt blinken), dann wird das 
schon.


Peter

von Johann T. (joschua011)


Lesenswert?

obwohl das Hans gut erklärt hat vieleicht ist der Link hier noch 
hilfreich
http://www.mikrocontroller.net/articles/LED-Matrix#Multiplexbetrieb

von Dennis G. (hans_angemeldet)


Lesenswert?

Peter Dannegger schrieb:
> Hans schrieb:
>> Ich kann dir auch einen Code schicken wenn du magst, hab gestern die
>> ganze Multiplexing Geschichte geschrieben und sie Funktioniert Perfekt!
>
> Ist das nicht ein bischen weit aus dem Fenster gelehnt?

Naja okay stimmt ;) aber ich finde wenn man was zum angucken hat, gerade 
in C ist ein gut Kommentierter Code echt hilfreich, und da ich sehr 
viele Kommentare mach denk ich ist mein Code gut nachzuvolziehen.

Grüße Hans

von Karl H. (kbuchegg)


Lesenswert?

Ich finde die Erklärung weiter oben sehr hastig hingeschrieben. Man muss 
schon wissen was ein Multiplex ist, um die Erklärung einigermassen zu 
verstehen.

Worum gehts: Um Resourceneinsparung.
Oft macht man einen sog. Zeitmultiplex. Das bedeutet, dass eine oder 
mehrere Resourcen in einem zeitlichen Wechselspiel von mehreren 
Benutzern 'gleichzeitig' benutzt werden. Das gleichzeitig steht unter 
Gänsefüschen, weil es eben nicht wirklich ein gleichzeitig ist, sondern 
ein 'schnell hintereinander'.

Stell dir ein Übertragunsmedium vor, zb ein Kabel. Nun möchtest du über 
dieses eine Kabel 'gleichzeitig' 5 Sprechstellen auf der einen Seite mit 
5 Empfängern auf der anderen Seite kommunizieren lassen. Das geht so 
natürlich nicht. Aber man kann einen Trick benutzen: Man kann das Kabel 
kurzzeitig für 1/100 oder 1/1000 Sekunde einem Sender zuordnen und 
diesen Senden lassen. Wenn vor den Empfängern eine Schaltung sitzt, die 
im gleichen Takt das über das Kabel kommende Signal wieder an die 5 
Empfänger reihum weiterschaltet, so hat jedes Sender-Empfänger Pärchen 
einen virtuellen quasi direkten Kanal über das einzige Kabel. Die 
Signale der Sender werden also zeitlich geordnet über ein einzelnes 
Medium übertragen.

Was Hans weiter oben angesprochen hat ist auch ein Multiplex.
Hat man 5 7-Segment Anzeigen zur Verfügung, so müssen nicht alle 5 
gleichzeitig leuchten. Es genügt völlig, wenn nur jeweils eine davon 
leuchtet und die an dieser Stelle anzuzeigende Ziffer anzeigt. Dafür 
schaltet man in schneller Folge von einer einzelnen Anzeigestelle zur 
nächsten durch. Erfolgt das Weiterschalten von einer Anzeige zur 
nächsten schnell genug, so kommt das (träge) Auge nicht mehr mit und 
sieht alle 7-Segment Anzeigen gleichzeitig leuchten, auch wenn in 
Wirklichkeit immer nur eine für kurze Zeit leuchtet. Die Resource die 
hier gmultiplext wird, sind wieder die Kabel bzw. die Anschlüsse am µC.

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.