STM32MP1开发板CAN口测试
小白菜自己瞎琢磨新出的STM32MP1太不容易了,搞了一下午终于搞定了CAN的收发,遂于此记录调试CAN外设踩过的坑。 根据课题的要求,我需要在M4核中与扩展板进行CAN通信。之前按照官方wiki怎么试都没有成功,CAN既不能接也不能收。厂家大佬说可能是修改了pinctrl的配置,那么。。我们重新来过!
硬件部分
我用的是这款CAN收发模块: 连线的时候要注意,can模块的CAN-TX连接开发板的CAN-TX,can模块的CAN-RX连接开发板的CAN-RX,这是因为这款CAN芯片的TXD是作为数据的输入端,连错就不能通信
CAN模块与CAN卡的连接方式是CAN-H接CAN-H,CAN-L接CAN-L,S接GND。
系统配置
首先在stm32mp157a-panguboard.dts文件中进行了修改,即将can1分配给M4核: 之后 make dtbs,生成dtb文件。 再将dtb文件拷贝到开发板/boot目录下。 在开发板控制端输入 sync & reboot
测试
开发板重启后输入 ifconfig -a 在windows下打开CANtest,配置好通信口和波特率后进行数据发送: 在开发板的控制端口中就可以接收到数据:
接下来的工作是要实现将收到的数据存入数据库中!