Forum: Mikrocontroller und Digitale Elektronik Serielle an mehrere µCs


von Martin Ranzmaier (Gast)


Lesenswert?

Hallo!

Ich habe 2 µCs die über die Serielle bidirektional kommunizieren. Jetzt
sollten weitere 4 µCs die Daten die µC 1 an µC2 schickt mithören
können.

Die Abzweigung solle nach dem Max232 sein.

µC1 <--> Max232 <--> µC2
                  |
                  |--µC3
                  ........

Die µCs sind ca. 50cm entfernt, die Datenrate ist 9600 Baud.

Wie soll ich das machen?

Schöne Grüße aus Österreich
Martin Ranzmaiere

von thkais (Gast)


Lesenswert?

RS-485

von Olaf (Gast)


Lesenswert?

Hi Martin,

wenn die anderen µC nur mithören sollen, kannst du das ohne Bedenken
bei RS232 belassen.

Gruß,
Olaf

von leo9 (Gast)


Lesenswert?

wenn deine Schaltung mit 2uPs und nur einem MAX232 richtig gezeichnet
ist wirds gar nicht funktionieren, du brauchst sowohl beim uP2 als auch
bei jedem mithörenden uP eine Pegelwandler. Wenn sich die Distanzen und
die Baudrate in Grenzen halten könntest du die Pegelwandler auch ganz
weglassen und mit "TTL-UART" arbeiten.

grüsse leo9

von Michael (Gast)


Lesenswert?

http://www.mikrocontroller.net/forum/read-1-69160.html#69212

Mach das so wie crazy horse beschrieben hat: Master sendet an alle und
Slaves senden 'verodert' ihre Daten.

von Rahul (Gast)


Lesenswert?

Mach es, wie Leo schon beschrieben hat:
Erstens brauchst du für jeden µC einen RS232-Wandler. Wenn die
Entwfernung nur 50cm beträgt kannst du die auch weglassen und die µCs
direkt miteinander verbinden.
Es handelt sich ja offensichtlich um eine Simplex-Verbindung (1 Sender
viele Empfänger). Notfalls müsstest du der Schaltung noch einen Treiber
verpassen, der die übertragene Leistung erhöht. Sollte aber bei 4 µC
noch kein Problem darstellen.
Gruß Rahul

von Martin Ranzmaier (Gast)


Lesenswert?

Hi!
Danke für die Antworten.
RS485 kommt nicht in Frage, da µC1 eigentlich ein PC ist, deshalb auch
nur ein Max232.
Mein Problem ist wie ich die µCs untereinander Verbinde, einfach
parallel geht ja nicht oder? Gehören da irgendwie Dioden rein?

Die Software der µCs ist kein Problem, die Methode von crazy horse
brauche ich nicht. Mein Problem ist "nur" die Hardeware.

von Steffen (Gast)


Lesenswert?

Die RX-Leitungen der MC´s kannst Du problemlos direkt zusammenschalten.
Bei den TX-Leitungen muss Du dir etwas einfallen lassen.

Möglichkeiten:
1. Wired-OR über 1 Diode/MC
2. OR-Verknüpfung über Gatter
3. Open Colector-Stufe/MC
:

Steffen

von Sven (Gast)


Lesenswert?

Moooment, die Aufgabenstellung ist: Ich habe 2 µCs die über die Serielle
bidirektional kommunizieren. Jetzt sollten weitere 4 µCs die Daten die
µC 1 (PC) an µC2 schickt mithören können.

Wenn die anderen µC die Daten von PC an µC2 nur mithören sollen, mußt
Du doch nur die RXD-Eingänge verbinden. Solange sie nix senden,
brauchst Du hier auch keine TXD-Ausgänge anschließen.

Und da die Eingänge der AVRs hochohmig sind, kannst Du die bei 50cm
Entfernung auch problemlos parallel schalten, das treibt der MAX232
schon.

Sven

von Steffen (Gast)


Lesenswert?

Hab ich was anderes geschrieben?

Bis darauf, dass ich davon ausgegangen bin, dass die anderen 4 MC´s
evtl. doch mal was senden sollen?

Steffen

von Michael (Gast)


Lesenswert?

Wenn Du RS232 nehmen willst/mußt(PC), dann können alle RXs an TX vom PC
geschaltet werden (s.o.).
Jeder TX-Ausgang der Sub-µCs wird über eine Diode (1N4148)parallel zu
einem Widerstand (3k3) zum RX des PC gechaltet. Die Kathode zeigt zum
RX-PC. Diese hochwertige Feinelektronik kann bequem in Steckergehäuse
eingelötet werden.

Solange alle Sub-µCs schweigen, liegt am RX vom PC ein 'schlapper'
-Pegel, den die Rs vorgeben. Ein sprechender Sub-µC liefert über die
Diode einen aktiven +Pegel, der durch die Rs nicht wesentlich gedämpft
wird.

Auch wenn Du die Methode von crazy horse heute nicht braucht - morgen
vielleicht doch.

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.