CAN通信-应用

up起来

驱动加载完成,使用ifconfig -a 可以看到两个节点

复制代码
can0: flags=128<NOARP>  mtu 16
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 10  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 64

can1: flags=128<NOARP>  mtu 16
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 10  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 65

我们需要第一件事是把节点up起来

复制代码
sudo ip link set can0 type can bitrate 500000
sudo ip link set can0 up

sudo ip link set can1 type can bitrate 500000
sudo ip link set can1 up

ifconfig 可以看到can0 can1两个节点。

测试

can-utils工具

can-utils是一个用于Linux的CAN(Controller Area Network)工具包,它提供了一组命令行工具,用于与CAN总线进行通信、分析和测试。这些工具非常有用,特别是在嵌入式系统、汽车领域以及需要CAN通信的应用程序中。

以下是can-utils工具包中一些常用的命令行工具:

  1. candump: 用于监听CAN总线上的数据帧。可以用来捕获CAN消息并将其显示在终端上。

  2. cansend: 用于向CAN总线发送CAN消息。您可以使用它来模拟CAN消息的发送。

  3. cangen: 生成CAN消息序列,可以用于测试CAN接收器的性能。

  4. canplayer: 从日志文件中重放CAN消息,以便重现先前的CAN通信。

  5. cansniffer: 用于捕获CAN总线上的数据,并以更详细的格式显示CAN消息,包括时间戳等信息。

  6. canbusload: 用于评估CAN总线的负载情况,以检查总线是否过载。

我们把两个端口短接

使用两个终端测试可以看到收到信息

cansend can0 123#1122334455667788

candump can1 //可以收到数据can1 123 [8] 11 22 33 44 55 66 77 88

相关推荐
virelin_Y.lin31 分钟前
系统与网络安全------弹性交换网络(2)
网络·安全·web安全·链路聚合·lacp·eth-trunk
EasyDSS6 小时前
视频监控从安装到优化的技术指南,视频汇聚系统EasyCVR智能安防系统构建之道
大数据·网络·网络协议·音视频
rufeike6 小时前
UDP协议理解
网络·网络协议·udp
江理不变情7 小时前
海思ISP调试记录
网络·接口隔离原则
世界尽头与你7 小时前
【安全扫描器原理】网络扫描算法
网络·安全
GKoSon8 小时前
加入RPC shell指令 温箱长时间监控
网络·网络协议·rpc
hgdlip9 小时前
关闭IP属地显示会影响账号的正常使用吗
网络·网络协议·tcp/ip·ip属地
Zz_waiting.9 小时前
网络原理 - 7(TCP - 4)
网络·网络协议·tcp/ip
RECRUITGUY9 小时前
用交换机连接两台电脑,电脑A读取/写电脑B的数据
服务器·网络·负载均衡
zheshiyangyang9 小时前
HTTP相关
网络·网络协议·http