www.mikrocontroller.net

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


Autor: Dennis Brücke (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Dennis Brücke (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: wolli (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Dennis Brücke (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Mark de Jong Electronics (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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,

Autor: wolli (Gast)
Datum:

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

Autor: Dennis Brücke (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

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.