mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Kommunikation unter mehreren Avr's


Autor: Thomas Kunzfeld (mikrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey Leute!
Ich bin gerade dabei, mir einen Experimentier-Roboter zu bauen. Da ich 
noch Anfänger bin, möchte ich so viele Möglichkeitn der Avr's nutzen wie 
nur möglich. Dadurch habe ich schon beim Bauen den AHA!-Effekt.

Mein erstes Problem ist folgendes: Ich habe ein Mainboard mit einem 
Atmega32 und mehrere kleinere Boards(für Sensorik, Motoren und RS232) 
mit weniger Leistung.
Wie kann ich alle uC's so miteinander vernetzen, dass ich Befehle und 
Messwerte von uC zu uC senden kann?

Autor: Marvin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
IC2!

Autor: Winfried J. (Firma: Nisch-Aufzüge) (winne)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
one wire

Autor: Thomas Kunzfeld (mikrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie schon gesagt, bin Anfänger........

Was ist das, wie steuer ich es an (in Bascom)?

Autor: Thomas Kunzfeld (mikrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wegen I2C: Ist der Controller da jederzeit erreichbar?
Habe mich da noch nicht herangewagt, weil der Befehl doch ziehmlich lang 
ist und ich mir eben nicht sicher war, ob der uC dadurch jederzeit 
erreichbar ist oder nur zu der Zeit, bei der der Code gerade steht.
Und 2.: Welche Adresse haben die Avr's? Kann ich die einstellen? Wie?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde die UART nehmen, bei jedem Controller den TX-Pin mit einer 
Diode an eine Leitung schalten, die mit PullUp auf Vcc gezogen wird. 
Alle RX-Pins ebenfalls an diese Leitung anschließen. So kann jeder 
Controller mit jedem Controller zeitversetzt kommunizieren.

Autor: Thomas Kunzfeld (mikrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Problem ist, dass ich die UART bei 2 uC brauche. Am besten wäre also 
TWI...
nur da wäre noch das obrige Problem: Welche Adresse habe die Avr's?

Autor: Jankey (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Am einfachsten wenn alle microcontroller nebenbei was zu tun haben ist 
TWI, das problem ist halt ma muss einen microcontroller spendieren der 
quasi einen "Hub" spielt, dafür hat man damit einige größere nachteile 
erschlagen, zb das man Zeitfenster nicht erreicht oder 
Synchronisationsgeschichten, in einer Kette alle zusammenhängen über TWI 
oder SPI is auch ein ganz netter Aspekt das man die Daten quasi einmal 
im Kreis schicht und der Abschicker dann das Durchschrieben der Daten 
Beendet, hat den vorteil das es Beliebig erweiterbar ist ( sollte halt 
nur gemacht werden wenn das netzt klein ist.

Wichtig ist ob die devices Addressierbar sind oder nicht

Vorteile vom TWI.:
- Timing des Systems ist so schnell wie der Langsamste Benutzer in der 
Kette ( kein Fixer Takt hat viele vorteile ).
- Fehler Eliminieren sich von selber durch das Handshaken jedes Bits
- "Spucker" in der Leitung machen nix
- Leitungslänge Egal
- Zeitkritische Treads können mittendrin abgearbeitet werden und dann 
die
- keine Addressierung nötig.
Kommunikation fortgesetzt werden.
Nachteile.:
- Langsam
- Software aufwand
- Hub uC für Master

I2C.:
Vorteile.:
- Viele Bauteile interface in HW gegossen ( omg ein Schieberegister )
Nachteile.:
- Slave & Master Ausprogrammieren
- Fixer Clock
- Adressen nötig

SPI-
schnell, und flexibel, alle uC werden in einer "Kette" aufgehängt und im 
Kreis zusammengesteckt, wenn noch ein Device
- Leitungslänge NICHT egal
- Zeitkritische Threads können warten
- desto mehr User desto langsamer
- Einknüpfen von neuen Usern sehr leicht
- keine Addressierung


One Wire.:
auch sehr Genial,
- nur muss dann jedes Device Adressierbar sein.
- Leitungslänge NICHT egal
- Zeitkritische Threads müssen warten ( zb bei 1MHZ Clock )
- Fehlercode UNBEDINGT nötig.
- bei klugem verbau kann man sogar die Supply mit über den 1 Wire 
übertragen.

Autor: Sachich Nich (dude) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Can, Ethernet

Autor: Thomas Kunzfeld (mikrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, ich werde den I2C-Bus nehmen.
Aber bitte nur noch eine kurze Antwort ohne große Abschweife: Welche 
Adresse?

Autor: Jankey (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja du hast 127 zu verfügung, das MSB is für R/W... steht aber in jeder 
I2C Spec :-)

Autor: Thomas Kunzfeld (mikrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok. Danke!

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.