Frage

Ich möchte ein Programm erstellen, das den CAN-Port zu Testzwecken für eine andere große Anwendung emuliert.Das Programm sollte zuvor aufgezeichnete Daten über diesen virtuellen CAN senden.Hat jemand Erfahrung mit so etwas?

Ich denke darüber nach, ein virtuelles COM einzurichten und in CAN-Frames verpackte Daten darüber zu senden.Könnte es funktionieren?Und wie könnte ich virtuelles COM unter Linux einrichten?Habe diesen Thread gefunden Virtueller serieller Port für Linuxaber leider verstehe ich nicht, wie es in den Quellcode des Programms implementiert werden könnte (Linux-Anfänger und Programmierer unter Linux).

Ich würde gerne Ihre Erfahrungen und Vorschläge lesen.

War es hilfreich?

Lösung

Du brauchst SocketCAN Treiber, der auf modernen Linux-Distributionen wie Ubuntu usw. verfügbar ist.SocketCAN bietet einen virtuellen CAN-Port-Treiber:

sudo modprobe vcan
sudo ip link add dev vcan0 type vcan
sudo ip link set up vcan0

Jetzt können Sie CAN-Frames senden und empfangen vcan0 Gerät.Der Wikipedia-Artikel enthält ein einfaches Codebeispiel zur Verwendung von SocketCAN.

Sie benötigen auch can-utils zu Testzwecken.

Weitere Informationen zu SocketCAN und seiner Verwendung finden Sie auf eLinux.org

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top