2014-01-09 29 views
11

別の大きなアプリケーションのテスト目的でCANポートをエミュレートするプログラムを作成したいと思います。プログラムは、この仮想CANを介して以前に記録されたデータを送信する必要があります。誰もそのようなことを経験していますか?Linuxで仮想CANポートを作成する方法は? (C++)

私は仮想COMを確立し、CANフレームでパックされたデータを送信すると考えています。それは働くことができますか?そして、どうすればLinux上で仮想COMを確立できますか?このスレッドが見つかりましたVirtual Serial Port for Linux しかし、悲しいことに私はそれがどのようにプログラムのソースコード(初心者のlinuxユーザーとプログラマーの下でlinuxに実装することができない得る)。

あなたの経験と提案をお読みください。

+1

にSocketCANとその使用方法についての詳細を見つけることができます 'AF_CAN'は、あなただけのソケットを使用することができます.... AF_UNIX''と非常によく似ています... –

答えて

30

あなたはSocketCANドライバを必要とする、それがUbuntuのような近代的なLinuxディストリビューションで利用可能であるなどSocketCAN仮想CANポートドライバを提供します。

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

今、あなたはvcan0デバイス上のCANフレームを送受信することができます。 Wikipediaの記事では、SocketCANの使い方の簡単なコード例を紹介しています。

また、テスト目的でcan-utilsが必要です。

あなたはeLinux.org

関連する問題