www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme mit Realisierung CAN - Protokoll


Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verwende einen XC888 Mikrocontroller von Infineon. Diese besitzt 
einen MultiCAN. Mit einem CAN Dongle (Master), der am PC angeschlossen 
ist, starte ich eine Anfrage. Das XC888 StarterKid Board (Slave) 
empfängt diese und sendet die gewünschten Infos auf den CANBUS. Ein 
anderes XC888 StarterKidBoard soll diese Nachricht empfangen. Jetzt habe 
ich aber das Problem, wenn ich mehrere Board am dem CANBUS anschließe. 
Dies bedeutet all die anderen Board können ja auch die Nachricht 
empfangen. Ziel soll sein, dass auf allen Board die gleiche Software 
drauf ist. Diese Boards sollen sich nur unterscheiden, indem man eine 
Busteilnehmernummer mit den Schaltern vergibt. Hat jemand damit schon 
Erfahrungen gesammelt?

Autor: Bratensosse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Öhm doofe frage....
"Mit einem CAN Dongle (Master), der am PC angeschlossen
ist, starte ich eine Anfrage. Das XC888 StarterKid Board (Slave)"
.... aber ist der CANBUS nicht ein multimaster system?

und mit der busteilnehmernummer? meinst du da den identifier?

sag doch wo genau dein problem ist....

grüße

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also der Identifier setzt sich aus der Busteilnehmernummer plus Nummer 
des Message Objektes zusammen. Ziel soll ja sein, dass meine erstellte 
Software auf allen Boards gleich sein sollte. Die Boards unterscheiden 
sich wie schon gesagt nur mit der Busteilnehmernummer, die durch die 
Scahlter vergeben werden.

Zum Beispiel:
Busteilnehmer 1 soll nach Aufforderung die aktuelle Schalterstellung als 
CAN NAchricht auf den BUS schicken.
Der Busteilnehmer 2 soll diese dann empfangen und auf den Port 3 (LED) 
anzeigen. Die anderen Busteilnehemr 3 und 4 usw., sollen aber diese CAN 
Nachricht nicht empfangen können.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...usteilnehmer 1 soll nach Aufforderung die aktuelle Schalterstellung 
als
CAN NAchricht auf den BUS schicken....

Das heißt, ich muss, unter Zuhilfenahme der aktuellen Schalter, die 
aktuelle Schalterstellung abfragen??

...Identifier setzt sich aus der Busteilnehmernummer plus Nummer
des Message Objektes zus..

Hm.. Warum nicht gleich CANopen?

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm ... CanOpen ist nicht so ganz einfach zu realisieren. Ich nicht 
exakt alle Funktionen von CanOpen. Wie könnte ich CanOpen für meine 
Anwendung umsetzen?
Das CanOpen beinhaltet so viel zeugs, das brauche ich alles ja nicht so 
ausführlich.

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Internet habe ich mal nach CanOpen gesucht. Alles sehr schön 
aufgemacht, leider kann ich damit nix anfangen. Ich brächte mal ein 
kleines Beispiel.

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt ja auch noch das DeviceNet Protokoll. Mir fällt die Umsetzung 
sehr schwer. Der genaue Mechanismus der ID Verwaltung ist mir noch nicht 
klar.
Wie kann ein CanOpen bus DeviceNet Protokoll in C umgesetzt werden?

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Wie kann ein CanOpen bzw. DeviceNet Protokoll in C umgesetzt werden?

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Matthias,

du hast geschrieben >>Hm.. Warum nicht gleich CANopen?
Hast du schon mal ein CANOpen in C umgesetzt?

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann mir keiner einen Tip geben, wie das CAOpen Protokoll in C 
realisieren könnte?

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab zwar eine Internetseite entdeckt, wo das CANOpen Protokoll 
einwenig erläutert wird, leider ist mir das alles zu theoretisch.

 >>http://www.microcontrol.net/technologie/can/canopen/

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.