1.sudo modprobe vcan

加载虚拟can模块

2.sudo ip link add dev vcan0 type vcan

添加vcan0网卡

3.ifconfig -a

可以查到当前can网络 can0 can1,包括收发包数量、是否有错误等等

//ip link set can0 type can --help

4.ip link set can0 up type can bitrate 800000

设置can0的波特率为800kbps,CAN网络波特率最大值为1Mbps

5.ip link set can0 up type can bitrate 800000 loopback on

设置回环模式,自发自收,用于测试是硬件是否正常,loopback不一定支持

6. ip link set can0 down

关闭can0 网络

7.cansend can0 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88

发送默认ID为0x1的can标准帧,数据为0x11 22 33 44 55 66 77 88

每次最大8个byte

8.cansend can0 -i 0x800 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88 -e

-e 表示扩展帧,CAN_ID最大29bit,标准帧CAN_ID最大11bit

-i表示CAN_ID

9. cansend can0 -i 0x02 0x11 0x12 --loop=20

--loop 表示发送20个包

10.candump can0

接收CAN0数据

参考:

http://processors.wiki.ti.com/index.php/AM335X_DCAN_Driver_Guide

http://elinux.org/Bringing_CAN_interface_up

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐