Hallo zusammen,
ich möchte den PCAN-Router FD verwenden um Nachrichten zwischen einem CAN und einem CAN-FD Bus zu versenden und manche auch zu manipulieren.
Leider hatte ich angenommen das ich den PCAN-Router FD wie den PCAN-Router Pro über eine Oberfläche
konfigurieren kann. Kann mir jemand ein einfaches Beispiel für das Routen und Manipulieren von Nachrichten
erstellen?
MFG
Reetxen
Beispiel für Routen und Manipulation von CAN-FD
Re: Beispiel für Routen und Manipulation von CAN-FD
Hallo Reetxen,
auf der mitgelieferten Produkt-DVD* sind im Verzeichniszweig
diverse Programmierbeispiele als gute Grundlage für eigenen Code vorhanden. Das Beispiel A_CAN_FD hilft da sicherlich weiter. Es lässt sich mit der ebenfalls vorhandenen GNU ARM Toolchain compilieren und dann per PCAN-Flash auf den Router FD übertragen.
Freundliche Grüße
Mark Gerber
* Auch online verfügbar: http://www.peak-system.com/produktcd/
auf der mitgelieferten Produkt-DVD* sind im Verzeichniszweig
Code: Select all
/Develop/Microcontroller hardware/PCAN-Router FD/Examples/
Freundliche Grüße
Mark Gerber
* Auch online verfügbar: http://www.peak-system.com/produktcd/
Re: Beispiel für Routen und Manipulation von CAN-FD
Hallo Herr Gerber,
vielen Dank für die Antwort damit habe ich mich schon etwas herumprobiert....
Empfangen von Nachrichten auf CAN1 und weiterleiten zu CAN2 funktioniert soweit, allerdings habe ich
Probleme eine CAN Nachricht in eine CAN-FD Nachricht umzuwandeln.
Diesen Code habe ich aus den von Ihnen angesprochenen Beispielen übernommen.
Mein Problem ist jetzt das ich mittels CANoe eine CAN-Nachricht mit Datenlänge 8 Byte,
und der ID 0x123 erstelle und auf den Bus sende. Wenn ich diese Nachricht nur von CAN1
auf CAN2 route ist alles gut und ich sehe die korrekte Nachricht. Wenn ich allerdings die
CAN-Nachricht in eine CAN-FD Nachricht umwandeln möchte und dazu den oben gezeigten
Quellcode verwende dann sehe ich im PCAN Viewer "Stuff Fehler". Einen Screenshot habe
ich als Datei angehängt.
Ich vermute mal das ich den Datentype der CAN Message falsh überschrieben habe.
Grüße Reetxen
vielen Dank für die Antwort damit habe ich mich schon etwas herumprobiert....
Empfangen von Nachrichten auf CAN1 und weiterleiten zu CAN2 funktioniert soweit, allerdings habe ich
Probleme eine CAN Nachricht in eine CAN-FD Nachricht umzuwandeln.
Code: Select all
if ( RxMsg.id == 0x123 && RxMsg.msgtype == CAN_MSGTYPE_STANDARD)
{
// overwrite msgtype
RxMsg.msgtype = CAN_MSGTYPE_FDF | CAN_MSGTYPE_BRS;
// set dlc to 12 data bytes
RxMsg.dlc = CAN_LEN12_DLC;
// add some other data
RxMsg.data8[8] = 0x11;
RxMsg.data8[9] = 0x22;
RxMsg.data8[10] = 0x33;
RxMsg.data8[11] = 0x44;
CAN_Write ( CAN_BUS2, &RxMsg);
}
Mein Problem ist jetzt das ich mittels CANoe eine CAN-Nachricht mit Datenlänge 8 Byte,
und der ID 0x123 erstelle und auf den Bus sende. Wenn ich diese Nachricht nur von CAN1
auf CAN2 route ist alles gut und ich sehe die korrekte Nachricht. Wenn ich allerdings die
CAN-Nachricht in eine CAN-FD Nachricht umwandeln möchte und dazu den oben gezeigten
Quellcode verwende dann sehe ich im PCAN Viewer "Stuff Fehler". Einen Screenshot habe
ich als Datei angehängt.
Ich vermute mal das ich den Datentype der CAN Message falsh überschrieben habe.
Grüße Reetxen
- Attachments
-
- Screenshot Fehler in PCAN View
- Unbenannt.jpg (128.92 KiB) Viewed 10111 times
Re: Beispiel für Routen und Manipulation von CAN-FD
Hallo,
sollte das Routen nicht funktionieren prüfen Sie bitte folgendes:
- Baudraten
Die Baudraten für den Router sowie das CAN interface müssen genau zusammen passen.
Dies betrifft vor allem den Samplepoint der Arbitrierungsbaudrate sowie für das Datenfeld.
- ISO Mode
Prüfen Sie ob der ISO Mode passt (ISO / nonISO)
- Terminierung am Kabel
- Senden ohne BRS
Lassen Sie testweise mal das BRS weg um zu prüfen das CAN-FD Nachrichten überhaupt
durchkommen.
Grüße
Philipp Steil
sollte das Routen nicht funktionieren prüfen Sie bitte folgendes:
- Baudraten
Die Baudraten für den Router sowie das CAN interface müssen genau zusammen passen.
Dies betrifft vor allem den Samplepoint der Arbitrierungsbaudrate sowie für das Datenfeld.
- ISO Mode
Prüfen Sie ob der ISO Mode passt (ISO / nonISO)
- Terminierung am Kabel
- Senden ohne BRS
Lassen Sie testweise mal das BRS weg um zu prüfen das CAN-FD Nachrichten überhaupt
durchkommen.
Grüße
Philipp Steil
--------------------------------------------
PEAK-System HW development Team
support@peak-system.com
phone: +49-6151-8173-20
fax: +49-6151-8173-29
--------------------------------------------
PEAK-System HW development Team
support@peak-system.com
phone: +49-6151-8173-20
fax: +49-6151-8173-29
--------------------------------------------