www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RS232 Hub/Switch


Autor: feig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich hätte da eine Frage zu der RS232 Schnittstelle und UART. Nehmen wir 
mal an, dass ich mehrere Microcontroller habe, die ich per serieller 
Schnittstelle an meinen PC stecken will bzw, die auch untereinander 
kommunizieren sollen. Wäre folgendes möglich:

Ich habe mehrere Mikroprozessorboards, bei denen ich RX und TX für die 
Datenübertragung verwende. Nun erstelle ich mir ein neues Board (Hub), 
packe dort einen Atmega32 drauf (mit Quarz .. etc) und verkabele die 
Microprozessorboards folgendermaßen:

Mikroprozessorboard 1 - RX geht an Port A, Pin 0 des Hubs
Mikroprozessorboard 1 - TX geht an Port A, Pin 1 des Hubs
Mikroprozessorboard 2 - RX geht an Port A, Pin 2 des Hubs
Mikroprozessorboard 2 - TX geht an Port A, Pin 3 des Hubs
...
etc.

An die RX/TX Ein/Ausgänge des Hubs kommt dann wie in 
http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART beschrieben 
der MAX232 und die eigentliche Verbindung zum PC.

Für die Adressierung kann ich mir ja ein kleines Protokoll schreiben, so 
dass der Hub Daten zwischen zwei Anschlüssen korrekt hin/herleitet, also 
das Board 1 dem Hub sagen kann, dass die Daten nur zum PC oder nur zum 
Board 2 gesendet werden (eigentlich also eher ein Switch).

Meine Frage bezieht sich eigentlich eher auf die Verkabelung bzw die 
Logik: Sehe ich das richtig, dass ich die Microprozessorboards einfach 
mit RX/TX direkt an die einzelnen Ports des Atmega32 vom Hub anschließen 
kann und dort softwaremäßig die Weiterleitung verarbeiten kann (wenn das 
überhaupt geht) oder muss ich zwischen RX/TX eines Microprozessors und 
Ports eines anderen Prozessors bei UART Widerstände/Kondensatoren/... 
schalten?

Ich hoffe, ich konnte die Frage einigermaßen verständlich formulieren. 
Das soll kein reales Projekt werden (zumindest jetzt noch nicht), aber 
es interessiert mich einfach, ob meine Verkablungsmethode funktionieren 
würde oder ob ich es mir zu einfach vorstelle.

Danke schonmal.

Autor: Gast2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eigentlich gehoert da sowas wie ein MAX232 dazwischen.
ATMEGA: TTL-Pegel 0..5V
RS232: -15..+15V

Gast2

Autor: Aha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weshalb ein Mega32 ? Der hat ja nur ein UART. Nimm einen Mega324, der 
hat schon 2, oder ein Mega2560, der hat 4 stueck.

Autor: Kobaltchlorid (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Sehe ich das richtig, dass ich die Microprozessorboards einfach
> mit RX/TX direkt an die einzelnen Ports des Atmega32 vom Hub anschließen
> kann

Hardwaretechnisch geht das, wenn die Portpins des ATMega32 bei den 
TXD-Leitungen als Eingang und bei den RXD-Leitungen als Ausgang 
konfiguriert sind.

Ich frage mich aber, warum du dir sowas antun willst und nicht gleich 
jedes Mikrocontrollerboard mit Ethernet ausrüstest. Dann hast du genau 
die Funktionalität, die du haben willst, praxisbewährt und ausgereift. 
Dann kann jedes Mikrocontrollerboard sowohl mit einem anderen Board als 
auch mit einem PC "reden":

Jedes Board bekommt über den XPort eine eigene IP-Adresse, der µC auf 
dem Board sieht seine gewohnte serielle Kommunikation auf dem UART, der 
PC bekommt seine Daten über die Netzwerkkarte und alle sind glücklich.

Für solche Zwecke gibt's z.B. den XPort, der auf der einen Seite mit dem 
UART des Mikrocontrollers verbunden wird und auf der anderen Seite einen 
netzwerkfähigen Ethernet-Anschluss bietet. Der XPort ist noch dazu 
winzigst, nicht viel größer als der RJ45-Stecker selber:

http://www.lantronix.com/device-networking/embedde...

Als zusätzliche Hardware brauchst du bloss einen Standard-Switch und 
Standard Cat5-Verkabelung.

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So ein XPORT kostet aber auch ganz schön...
Wie wärs statt RS232 eher mit RS485? Musst halt dann das Protokoll 
implementieren, Richtungsumschaltung, Adressen, etc.

Ralf

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.