Canfestival配置
使用JaFojtik-canfestival-3-b8940bff7790复制到虚拟机中,自己改名为canfestival-3
./configure (需要配置固定的机子需要使用./configure --help查看可选的参数,若有使用–can=peak_linux时,首先需要安装好libpcan的驱动)
配置1 ./configure --cc=gcc --cxx=g++ --arch=x86_64 --os=unix --prefix=$PWD/myinstall --target=unix --can=virtual --timers=unix --wx=0
配置2 ./configure --cc=gcc --cxx=g++ --arch=x86_64 --os=unix --prefix=$PWD/myinstall --target=unix --can=peak_linux --timers=unix
配置3 ./configure --cc=gcc --cxx=g++ --arch=x86_64 --os=unix --prefix=$PWD/myinstall --target=unix --can=socket --timers=unix
(若使用配置3,则drivers中的can_socket.c会出现make编译错误,需要将89行、113行的frame.Data修改成为frame.data)
make
sudo make install
(若是要加入新的源文件,使用sudo rm -r filename ,再使用make clean)
可以使用CANOpenShell进行测试,
开启can0
sudo ip link set up can0
进入预设的–prefix处
cd ~/canfestival-3/myinstall
./CANOpenShell load#../lib/libcanfestival_can_socket.so,0,500K,1,1
(后四项参数的含义分别为选择can0;设置CAN波特率为500K;设置该机为节点1;且设置该机为主机,若为0则是从机)
此处设置该机为主机,并且在can0处以500K波特率进行通信
使用其中带有的SDO功能
wsdo#04,6040,00,02,0006
wsdo#04,6040,00,02,0007
wsdo#04,6040,00,02,000F
wsdo#04,6040,00,02,0000
该段代码对应着cansend的报文信息为
cansend can0 604#2B40600006000000
cansend can0 604#2B40600007000000
cansend can0 604#2B4060000F000000
cansend can0 604#2B40600000000000