经网上搜集资料已知:
该芯片有6路CAN,共享128个邮箱,其中支持CANFD的CAN只有4个(哪四个还不清楚)
且每个CAN节点与唯一的报文列表相关联,一个CAN节点仅与分配给该节点列表的报文对象进行传输和接收
其中注意:
CAN的两种类型:(Davinci配置里的选择)
Full CAN:
Full CAN控制器通常具有多个所谓的消息对象缓冲区。如果两条ID相同但数据不同的消息,发送速度非常快(考虑:11位ID,2个数据字节,1Mbit/s, 大概时间为70us),CPU必须在第二条消息到达之前,传递消息缓冲区的已接收的内容,否则前一个消息就会被覆盖。
BasicCAN:一个HWObject(Hardware Object)可以处理一段范围的CanId
诊断报文:一般选择配置成BASIC CAN类型(结合FIFO Buffer使用),因为诊断报文的请求/响应不能错序,需按照顺序处理,且数据不能覆盖;(但我选择接触的项目都将诊断报文设置成Full CAN了,可能是对诊断报文没有那么严格时间限制)
网络管理报文:接收一般选择配置成BASIC CAN类型,因为一个节点一般会要求接收一段范围的网络管理报文,eg:0x500~0x53F。发送网络管理报文配置成FULL/BASIC CAN类型均可,如果资源够用,推荐配置成FULL CAN类型,因为每个节点的发送网络管理报文唯一;
标定报文:一般选择配置成FULL CAN类型。