Forum: Mikrocontroller und Digitale Elektronik Modularer BUS Aufbau -> welches BUS System CAN,RS485,SPI ?!


von Dennis Brücke (Gast)


Lesenswert?

Hi @all,

ich baue gerade an einem Projekt, welches es notwendig macht, das
einige "Module" sich etwas weiter weg befinden (4-6Meter)ausserdem
soll man immer noch die möglichkeit haben ein weiteres Modul
hinzuzufügen, z.b. eine weiteres Relay´s Modul.

Also dachte ich mir, währe es nicht verkehrt eine Art Bus einzubinden.
Welches lässt sich einfach implementieren, und benötigt wenig Hardware
?!

CAN ?
RS485
oder SPI Schnittstelle ?!
I²C ?!

Gruß Dennis

von Peter D. (peda)


Lesenswert?

CAN ist natürlich am besten, da es sehr sicher ist und einem schon ne
Menge Probleme abnimmt. D.h. man braucht am wenigsten Software zu
schreiben. Eine 1-Chip Lösung ist z.B. der T89C51CC01.

RS485 ist älter und kommt nur mit der UART aus (eingebautes CAN haben
noch nicht so viele µC).
Allerdings muß man den ganzen Protokoll- und Kollisions-Scheiß voll in
Software machen, und das ist wirklich haarig.

SPI und I2C sind sehr störempfindlich und werden daher nicht
professionell in Bussen außerhalb eines Gerätes eingesetzt.


Peter

von Dennis Brücke (Gast)


Lesenswert?

Hi Peter,

danke Dir erstmal für die schnelle Antwort, also werde ich mich doch
auf CAN Festlegen, welche alternativen kann ich zum T89C51CC01
einsetzen ?! Der Proz der im moment in der Schaltung zum einsatz kommt,
ist ein Atmega32 bzw. ATMega16.

Gruß Dennis

von Peter D. (peda)


Lesenswert?

Es ist auch ein AVR mit CAN in Vorbereitung, aber noch nicht verfügbar.

Von Microchip gibt es ein CAN-Interface mit SPI, den könnte man an den
Mega16 anschließen.


Peter

von wolli (Gast)


Lesenswert?

Wenn Du die Controller beibehalten willst, benutze doch einfach einen
externen CAN-Controller, z.B. SJA1000 von Philips, der nimmt Dir den
ganzen Protokollkram ab.
Es gibt leider noch keinen AVR mit integriertem CAN.

von Dennis Brücke (Gast)


Lesenswert?

HI @all,

beide alternativen finde ich brauchbar... SPI Spart natürlich enorm
leitungen...

Wie sind die Mindestbeschaltung bei den SJA1000 aus ?! Die schaltungen
die ich hier zu liegen habe, benötigen wenigstens
11 Ports... uff

gruß Dennis

von Mark de Jong Electronics (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Dennis,

Siehe mal bei Microchip nach denn CAN devices.

Einfache CAN I/O nodes in ein chip.

z.b. MCP2502X/5X

Grüße Mark,

von wolli (Gast)


Lesenswert?

Wenn es Dir um die Pins geht nimm die von Peter vorgeschlagenen
Bausteine von Microchip, z.B. MCP2515.

von Dennis Brücke (Gast)


Lesenswert?

Hi nochmal,

also ich habe jetzt einiges im Netz zum thema gelesen (Kopf rauch...)
ich denke mal das der SJA1000 doch die bessere entscheidung sein wird
:)

Hat jemand von euch einen Tip für mich für die Mindestbeschaltung ?!
Blicke in dem Datenblatt nicht wirklich 100% durch.... von allen
datenblättern die ich bis jetzt gelesen habe ist dies mit eines der
schlimsten lol

Danke
Gruß Dennis

von Stefan Kleinwort (Gast)


Lesenswert?

Hi Dennis,

ich habe auch ein Projekt, bei dem ich mich letztendlich für CAN
entschieden habe (eine Hausbussteuerung).

Ich benutze den ATmega16 mit einem MCP2515. Für den mega16 habe ich
mich entscheiden, weil ich bereits einen Debugger dafür habe. Das ist
mir der zusätzliche Chip wert. Ausserdem habe ich vor, in manche Module
2 CAN-Transceiver einzubauen, damit ich eine Pseudo-Baumstruktur
verwirklichen kann. Da ist es natürlich praktisch, 2 gleiche CAN-Module
zu haben. Beide hängen zusammen mit einem LCD-Display am SPI-Bus, die
wenigen SPI-Pins werden also auch noch für mehrere Geräte benutzt. Bei
Interesse kann ich auch mal den Schaltplan posten, die Prototypen sind
allerdings noch nicht so weit.

Der Nachteil an CAN ist, dass es laut Spec eigendlich keine
Abzweigungen geben kann.

Der Thread, wo das schonmal diskutiert wurde, ist unter:
http://www.mikrocontroller.net/forum/read-1-66019.html#86460

Stefan

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.