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


von Patrick (Gast)


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?

von Bratensosse (Gast)


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

von Patrick (Gast)


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.

von Matthias (Gast)


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?

von Patrick (Gast)


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.

von Patrick (Gast)


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.

von Patrick (Gast)


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?

von Patrick (Gast)


Lesenswert?

>>Wie kann ein CanOpen bzw. DeviceNet Protokoll in C umgesetzt werden?

von Patrick (Gast)


Lesenswert?

Hi Matthias,

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

von Patrick (Gast)


Lesenswert?

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

von Patrick (Gast)


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/

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.