CAN接口
硬件接口
| 接口名称 | PHD2.0针脚序号 | 信号定义 | 接口说明 |
|---|---|---|---|
| CANL | 13 | NX_CAN_L | NX_CAN_L端 |
| CANH | 15 | NX_CAN_H | NX_CAN_H端 |
| CAN_L | 14 | CAN_FD_L | SPI转CAN_FD_L端 |
| CAN_H | 16 | CAN_FD_H | SPI转CAN_FD_H端 |
| 共GND | 5/11/12/18 | GND | 地信号 |

注: CANL/H 为NX模块自带CAN 控制器 CAN_L/H 为SPI转CAN 控制器(芯片为MCP2518FD) 支持CAN FD CAN设备具体使用方法,参考https://github.com/linux-can/can-utils中的cansend.c和candump.c
软件应用
将20Pin中的CAN0_H与CAN1_H,CAN0_L与CAN1_L短接进行收发测试,结果如下图
sudo modprobe can-raw
sudo modprobe can-dev
sudo modprobe mttcan
sudo rmmod mcp251xfd.ko
sudo insmod /lib/modules/$(uname -r)/kernel/drivers/net/can/spi/mcp251xfd.ko
sudo ifconfig can0 down
sudo ifconfig can1 down
sudo ip link set can0 up type can bitrate 1000000 dbitrate 2000000 restart-ms 1000 berr-reporting on fd on
sudo ip link set can1 up type can bitrate 1000000 dbitrate 2000000 restart-ms 1000 berr-reporting on fd on
sudo ifconfig can0 txqueuelen 65536
sudo ifconfig can1 txqueuelen 65536
#CAN1 发送, CAN0 接收
candump can0 &
cangen can1 -v -n 10

参考: