www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik mehrere Atmegas Parallel zu Max232?


Autor: cablecore (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Nabend Community

Ich habe folgendes Problem,

Ich habe in ein PC-Programm geschrieben um vom PC aus, Aus/Eingänge von 
mehreren Atmegas zu verwalten, Adc´s auslesen usw...

Ich überlege gerade wie ich die Kommunikation der µC´s am einfachsten 
hinbekomme, da ich mit i²c nicht so gut klarkomme wollte ich den Uart 
benutzen. Im Anhang habe ich mal ne skizze reingelegt, würde das so 
funktionieren ?

zB:

Das PC Programm sendet "A12"
Ein Atmega kennt den Befehl und schaltet einen Ausgang, alle anderen 
wissen nicht was sie damit sollen und ignorieren den Befehl einfach...


Theoretisch müsste das doch funktionieren oder ?

vielen dank

Cablecore

Autor: Hc Zimmerer (mizch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst die Sendeleitungen der AVRs nur dann zusammenschalten, wenn Du 
dafür sorgst, dass zu jedem Zeitpunkt nur ein UART-Sender aktiviert ist 
und dass solange die anderen AVRs ihren Tx-Pin hochohmig (Input) 
schalten.  Für den Fall, dass kein AVR-Tx aktiv ist, würde ich einen 
Pullup vorsehen oder den internen aktivieren.

Alle Empfänger gleichzeitig lauschen zu lassen ist dagegen kein Problem.

Autor: Rainer M. (excogitator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sicherheitshalber würde ich aber noch an jedem Tx-Pin einen Widerstand 
in Reihe einplanen, damit im Fehlerfall sich die µCs sich nicht 
gegenseitig die Ausgangspins schrotten.

Gruß
Rainer

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde wetten, dass für deine Anwendung ein einziger Controller 
ausreicht.

Autor: cablecore (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Hc Zimmerer

Das hört sich gut an, danke für deine schnelle Hilfe

wenn ich das richtig verstanden habe, dann mache ich also an jeden Tx 
einen 10k als pullup und dann können alle ihre signale verschicken?

Autor: cablecore (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde dagegen wetten @chris

Autor: g457 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Alternative wäre Daisy-Chaining [1]. Vorteil: sehr einfacher Aufbau 
und einfach erweiterbar, keiner killt des anderen IO-Pin; Nachteil: Die 
Latenz steigt etwas, jeder µC muss die Daten durchreichen, wenn einer 
verreckt sind die anderen taubstumm.

[1] http://de.wikipedia.org/wiki/Daisy_Chaining

Autor: Hc Zimmerer (mizch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
cablecore schrieb:
> wenn ich das richtig verstanden habe, dann mache ich also an jeden Tx
> einen 10k als pullup und dann können alle ihre signale verschicken?

Nein, das hast Du nicht richtig verstanden.  Da die Sendepins parallel 
geschaltet sind, brauchst Du natürlich nicht an jedem einen Pullup.

Außerdem muss die Software dafür sorgen, dass zu jedem Zeitpunkt nur ein 
einziger der Pins auch wirklich ein Sendepin ist, die anderen müssen 
hochohmig sein.  Aber das schrieb ich bereits.

Autor: Phil J. (sunflower_seed)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit RS485 wärs einfacher

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Phil J. schrieb:
> mit RS485 wärs einfacher

aber nur, wenn für jeden einzelnen µC ein eigener RS485-Transceiver 
vorgesehen ist.

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.