Jetson TX2 之CAN口的使用
TX2上有2个CAN控制器,CAN控制器需要通过CAN收发器连接到物理总线上。具体参阅原理图和相关技术参考手册。
下载地址:https://developer.nvidia.com/embedded/downloads。
CAN测试方法如下图:
步骤具体说明:
1)TX2已经写好了canbus的驱动并集成到了SDK中,已经支持canbus无需多做处理。
2)安装canbus模块.
- 直接通过运行Shell脚本can.sh加载所需的.ko文件,脚本文件如下所示。
#!/bin/bash
modprobe can
modprobe can-raw
modprobe can-bcm
modprobe can-gw
modprobe can_dev
modprobe mttcan
- 通过Lsmod 命令检查是否安装成功,如果成功则如下所示。
Module Size Used by
mttcan 60210 0
can_dev 13393 1 mttcan
can_raw 9004 0
can_gw 10262 0
can_bcm 15298 0
can 46782 3 can_gw,can_bcm,can_raw
3) 安装第三方开源app can-utils
git clone https:
cd can-utils
make
sudo make install
4) canbus属性配置
sudo ip link set can0 type can bitrate 1000000 loopback on
sudo ip link set up can0
sudo ip link set can1 type can bitrate 1000000 loopback on
sudo ip link set up can1
ifconfig
ip -details link show can0
ip -details link show can1
在一个终端通过cansend can0(can1) ×××命令来发送数据×××, 另一个终端通过candump can0(can1)进行回环发送
- 使用can收发器实测
TX2的J26模块下的CAN0及CAN1控制器接口通过canbus收发器的CTX和CRX相接进行实测。图1为J26模块接口信息,图2为J26与canbus收发器物理连接图。图3为实物连接图
图1
图2
图3
sudo ip link set can0 type can bitrate 500000
sudo ip link set up can0
sudo ip link set can1 type can bitrate 500000
sudo ip link set up can1
ifconfig
在一个终端通过cansend can0(can1) ×××命令来发送数据, 另一个终端通过candump can1(can0)完成实际信号收发测试
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)