最近在开发一个网关项目,需要调试一些通信接口。网关底板是基于jetson xavier nx 设计的,所以硬件上许多相似,所以我也会基于jetson xavier nx去做一些接口的测试,这里需要提一下,jetson xaxier nx和jetson xavier是不一样的,而且jetson xavier nx和其他jetson产品,比如AGX TX这些在硬件上都有不同的设计,这里说一下Jetson Xavier 有两个CAN口,而Jetson Xavier NX只有一个,而且没有引出来!
这里说一下网上很多教程都基于Jetson Xavier 的, 引脚 和NX是不一样的
NX的CAN不在40 pin那里,看看NVIDIA官网论坛你就你知道答案

直接上图!

其他教程就基本和网上的一样了
首先修改寄存器
sudo apt install busybox ##你可能需要下载的 sudo busybox devmem 0x0c303000 32 0x0000C400sudo busybox devmem 0x0c303008 32 0x0000C458sudo busybox devmem 0x0c303010 32 0x0000C400sudo busybox devmem 0x0c303018 32 0x0000C458然后挂载CAN设备
sudo modprobe cansudo modprobe can_rawsudo modprobe can_devsudo modprobe mttcan设置波特率
sudo ip link set can0 type can bitrate 1000000启动&&关闭端口
sudo ip link set up can0如果没有CAN收发器,则可以使用回环模式做测试,这里提一下,无需短接CAN_RX和CAN_TX,这里不要受网上误导,CAN是根据CANH和CANL的差分电压输出数据的,短接是错的,无需短接也可以收到回环的数据
## loopback modesudo ip link set down can0sudo ip link set can0 type can bitrate 1000000 loopback onsudo ip link set up can0发送和接收数据
sudo apt install can-utils #你可能需要安装的东西,但是笔者经过多次测试发现这是jetson自带的 candump can0 ##接收数据 cansend can0 123#abcdabcd ##发送数据在有CAN收发器的前提下进行进一步测试
将CAN的引脚对应接到收发器上,收发器会将CANTX和CANRX的信号转换为CANH和CANL的差分信号

将CANH和CANL接到CAN分析器,然后接到上位机测试


writing...
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删