- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 8 von 8

Thema: UART / RS232 mit meheren µc's ?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.05.2004
    Ort
    Solingen
    Beiträge
    101

    UART / RS232 mit meheren µc's ?

    Anzeige

    E-Bike
    Hallo

    ist es möglich mehrer µC's (zb. 3 Atmel Mega16) über den UART miteinander zu verbinden, so dass eine Art Master Slave kommunikation möglich ist? Software technisch würde ich mir das so vorstellen, dass der Master (es gibt natürlich nur einen) die Schreibrechte an die einzelnen Slaves verteilt. Die Slaves müssten dann ihre Adresse (z.b die ersten paar bits) aus dem übertragenen String extrahieren. Dies würde verhindern, dass alle Controller gleichzeitig die Datenleitungen belegen.
    Wäre das möglich oder werden die Pegel auf den Leitungen druch die Slaves zu schwach?

    mfg Omnikron

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.12.2005
    Ort
    Euskirchen-Großbüllesheim
    Alter
    74
    Beiträge
    2.063
    Hallo Omnikron,
    ich würde es mit RS485 Schnittstelle / Baustein aufbauen, da können 16...32 Master / Slave miteinander kommunizieren. Wer gemeint ist und 'was sagen' darf, kann per Datenprotokoll bestimmt werden.
    MfG Karl-Heinz
    HobbyElektronik hier klicken ....

  3. #3
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    Beiträge
    11.077
    Hallo Omnikron!

    Deine Idee ist sehr gut (weil einfach realisierbar). Solange die gesamte Belastung (R und C) des TX Pins nicht die maximal zulässige überschreitet, werden die Pegels gut. Bei langen Leitungen muss ein Kabel mit minimaler laufender Kapazitanz (pF/m) verwendet werden. Ich stelle mir das so wie auf der Skizze im Code vor. Ich möchte später selber so was machen (bin aber PIC fan). Melde, bitte, ob es funktioniert.


    MfG
    Code:
            /--------------o-----------o--------((-------\
            |              |           |        ))       |
            |   /----------|---o-------|---o----((-------|---\
            |   |          |   |       |   |             |   |
            |   |          |   |       |   |             |   |
          .-------.      .-------.   .-------.         .-------.
          |TX   RX|      |RX   TX     RX   TX           RX   TX|
          |       |      |       |   |       |         |       |
          '-------'      '-------'   '-------'         '-------'
           Master         Slave 1     Slave 2           Slave n

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.12.2005
    Ort
    Euskirchen-Großbüllesheim
    Alter
    74
    Beiträge
    2.063
    Ähnliche Vorhaben wurden von mir schon mehrmals realisiert, u.A. mit Can-Bus, per Funk und über Datenleitung (RS485-ähnlich).
    Ein Master fragt zyklisch den Status aller Slaves ab (Eingangs-Zustände, Batterie-Ladung, etc.). Antwortet ein Slave innerhalb einer TimeOut-Zeit nicht, gibt es Alarm.
    Das Datenprotokoll ist relativ einfach: StartByte, Slave-Adresse und Kommando (z.B. 1 = Status abfragen, 2 = Ausgänge mit folgendem Datenbyte setzen, 3 = ....)
    Die Antwort ist ebenso einfach: Slave-Adresse, Status und / oder je nach Kommando noch Daten.
    Ein bestimmter Slave kann dazu 'verdonnert' werden, wenn er innerhalb einer TimeOut-Zeit nicht abgefragt wird, den Job des Masters zu übernehmen. Dieser Slave-Master muß den Datenverkehr 'abhorchen' und registrieren, damit er im Einsatzfall Bescheid weis.
    MfG Karl-Heinz
    HobbyElektronik hier klicken ....

  5. #5
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    Beiträge
    11.077
    Hallo kalledom!

    Für mich scheint es immer noch zu kompliziert. Ich brauche eigentlich nur eine einfache Kommunikation zwischen ein paar Modulen (z.B. Entwicklungsplatine<-> Analoghardware). Ich möchte es nur nach Bedarf nutzen (nicht zyklisch) und brauche kein Alarm (möchte Ruhe haben ).
    Dein Datenprotokoll habe ich schon bei meinem ersten EPROMer benutzt, ist prima (wirklich einfach), aber ohne Status und Slave-Adresse (war ja nur ein Slave).

    MfG

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.05.2004
    Ort
    Solingen
    Beiträge
    101
    genau so habe ich mir das auch vorgestellt. Die Skizze von PICture und das Protokoll von kalledom. Ihr habt mein Problem genau erkannt. Bevor cih mich aber groß mit rs485 oder can oder was auch immer beschäftige möchte ich eine möglichst einfache mehr-Controller-Verbindung aufbauen, also so wie bisehr beschrieben über den Uart/RS232.
    Ich habe mich mit dem eigentlichen Problem bisher nicht mehr auseinandersetzten können. Die erstn zwei drei Versuch scheiterten. Das kann aber auch an meinen noch zu umständlichen Protokoll liegen.
    Muss ich eigentlich mit dioden auf den Rx und TX datenleitungen das signal entkoppeln? Können noch mehr Probleme physikalischer Natur auftreten?

    mfg Omnikron

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.12.2005
    Ort
    Euskirchen-Großbüllesheim
    Alter
    74
    Beiträge
    2.063
    RS485 hat eine 2-adrige Datenleitung und ein symmetrisches Signal für beide Richtungen. Der RS485-Baustein 75176 ist Sender TX und Empfänger RX, die Daten-Richtung muß an den Enable-Pins umgeschaltet werden.

    PS: Lade Dir das Datenblatt von dem 75176 und betrachte Dir das Blockschaltbild vom Innenleben; dann wird Dir ein Kronleuchter an gehen
    MfG Karl-Heinz
    HobbyElektronik hier klicken ....

  8. #8
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    Beiträge
    11.077
    Hallo!

    Es sind ausser den zwei Leitungen keine zusätzliche Bauteile notwendig und das einzige, dass Probleme machen kann, sind zu lange Leitungen.

    MfG

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress