Forum: Compiler & IDEs Kommunikation zwischen mehreren µC´s


von Yannic (Gast)


Lesenswert?

Hallo,

ich habe nun schon etwas mit µC´s gearbeitet und möchte mich nun 
testweise mal an die Kommunikation zwischen 2 oder mehreren µC´s 
ranwagen.

Dabei geht es um folgendes Vorstellungsmuster. Eine Haupt - Station und 
eine belibige Anzahl an Neben - Stationen.

Die Hauptstation soll nun eine der Nebensationen aufrufen und von dieser 
etwas ausführen lassen.

Sagen wir mal in einer Wohnung sind 3 Räume mit jeweils einem Rolladen. 
Nun soll die Hauptstation in Raum 1 den Rolladen runterfahren.

Dazu müsste sich dann ja der Controller in Raum 1 auch als 1 
identifizieren und der in Raum 2 als 2 usw.

Mit welcher Schnittstelle würde sich ein solches Vorhaben realisieren 
lassen ? Gibt es ggf. Tutorials die sich mit der Thematik befassen ?

mfg Yannic

von Philip (Gast)


Lesenswert?

Hi,
ich würde da I2C nehmen, da kannst du dann deine Prozessoren alle 
adressieren und dann recht einfach weitere hinzufügen. Den einzelnen 
Slaves könntest du dann über DIL-Schalter (richtiger Name..??) eine 
Adresse geben, die du bei jedem nach belieben ändern bzw. einstellen 
kannst.
Dabei müsstest du nicht mal das Programm ändern. Bei Atmel heisst die 
Schnittstelle soweit ich weiss TWI (sind - glaub ich - identisch). Die 
Geschwindigkeit sollte mehr als nur reichen...
Tutorien -> google... Wüsste spontan keins.
Viele Grüsse
Philip

von Yannic (Gast)


Lesenswert?

Welche Methode schafft denn die längste übertragungs Reichweite ?

von Manuel B. (man)


Lesenswert?

eine weitere Möglichkeit wäre SPI. Wenn du über die Verbindung keinen
Strom zu den einzelnen µC leiten musst, darf die Verbindung ziemlich
lang sein.

von dafhit (Gast)


Lesenswert?

CAN wär doch auch eine Möglichkeit, oder?

von reiner (Gast)


Lesenswert?

>CAN wär doch auch eine Möglichkeit, oder?

Könnte funktionieren, aber wie der Name CAN (Car Area Network) schon 
aufzeigen sollte ist diese Art der Kommunikation nicht für große 
Enfernungen ausgelegt.

Wenn es einfach sein soll, einfach serielle Kommunikation. Wenn du die 
Daten auch nur vom Master zum Slaven übertragen willst bietet sich auch 
ein billiger Telemetrie-Funk-Sender beim Master und ein ebenso simpler 
Empfänger bei den Slaves an...

mfg reiner

von Johannes M. (johnny-m)


Lesenswert?

reiner wrote:
>>CAN wär doch auch eine Möglichkeit, oder?
>
> Könnte funktionieren, aber wie der Name CAN (Car Area Network) schon
> aufzeigen sollte
CAN heißt "Controller Area Network". Ist zwar tatsächlich ursprünglich 
für den Einsatz im Auto von Bosch entwickelt worden, wird aber schon 
länger (auch z.T. über Entfernungen, die in "normalen" Kfz nicht 
auftreten) in der Automatisierungstechnik eingesetzt. Es gibt sogar eine 
Hersteller-/Anwender-Gruppe, die sich CiA ("CAN in Automation", man 
achte auf das kleine i!) schimpft. Man "darf" CAN auch durchaus 
außerhalb von Kfz einsetzen, auch wenn dort nach wie vor der 
Haupt-Einsatzbereich liegt.

von Severino R. (severino)


Lesenswert?

reiner wrote:

> Könnte funktionieren, aber wie der Name CAN (Car Area Network) schon
                                               ^^^

Controller Area Network

von Philip (Gast)


Lesenswert?

Wenn es denn weit sein sollte, dann nehm doch einen rs-458-Bus (oder was 
ähnliches) aber dafür brauchst du dann wieder extra Treiber. Man soll 
damit min 500m weit kommen. Ein vorgeschriebenes Protokoll gibt es da 
nicht, kannst dann also SPI, TWI o.ä. nehmen.
So long,
Philip

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.