本帖最后由 Mcuzone_LJY 于 2021-6-11 14:48 编辑
关键字:CM4,SPI,CAN
1. 所需材料1. 带有官方40pin接口的CM4扩展底板一个,本文档使用野芯开发的CM4_UART扩展底板 2. CM4核心板一块 3. 野芯开发的SPI接口的CAN模块一个 4. 母对母杜邦线7pin 5. USB转CAN模块一个(用于PC端) 2. 硬件连接按下表对应方式将模块与CM4_UART扩展底板的40pin接口相连接 SPI_CAN模块引脚定义与官方标准40PIN引脚定义如下图所示: 将USB转CAN模块的CAN_H与CAN_L和我们的SPI_CAN模块的CAN_H与CAN_L相连,整体硬件接线如下图所示:
3. 通讯测试不会烧写系统的同学请翻阅我们编写的系统烧写指南,里面有详尽的步骤供君详读,这边便不再赘述。烧好系统后,将HDMI、USB键盘、网线接好,确认电路无误后上电。 首先我们要在config.txt下加入如下代码,可使用vim或nano等编辑器: dtparam=spi=on dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25 添加后如下图所示: 添加完后重启系统,输入sudo reboot即可重启系统,等待系统重启完毕后,输入dmesg | grep spi,查看SPI的信息: 确认mcp2515被成功识别后,我们将CAN开启,输入如下代码: sudo ip link set can0 up type can bitrate 1000000 sudo ifconfig can0 txqueuelen 65536 如下图所示无报错,则开启成功: 输入ifconfig,查看一下CAN的信息,正常情况如下图所示: CAN正常后,我们需要测试其收发功能,输入sudo apt-get install can-utils,下载CAN工具: 下载完成后,输入candump can0,进入接收状态,使用PC端CAN收发工具发送信息,验证模块的接收功能,然后Ctrl+C结束进程,输入cansend can1 000#11.22.33.44,测试模块的发送功能,可以多发送几条,看看模块的稳定性。 那么以上就是树莓派CM4下SPI接口CAN模块配置的全部内容,文中若有错误的地方还请各路大佬不吝指出,请洒潘江,各倾陆海!
|