在我们的论坛里面,经常看到关于CAN总线通信的问题。有很多人反应CAN总线通信有问题,或者是说我们的CAN messagebox太多,不太会配置。其实我们的CAN 模块功能非常的强大,它可以实现单节点多ID符的接收和发送操作。这个在实际应用过程中,使用起来非常更方便,下面我就简单介绍一下我设计的这个例程:
b. 在CAN的配置界面中,默认采用500kbps的通信速率,同时选择符合CAN2.0A的标准11位ID符(方便和其他常规的CAN 控制器通信)
c. 分别配置发送和接收端的message box。 如果需要采用中断接收的话,记得使能中断。
d. 使能CAN接收中断VIM channel
e. 生产代码
在原工程代码中,为了方便我们测试,我加入了RTI定时中断来发送CAN 报文信息:
接收报文我采用了中断的方式:
具体的源代码可以参考附件。希望对大家有所帮助。