1 简介和功能概述
AUTOSAR基础软件模块CAN驱动程序(在本文档中称为“Can模块”)的功能、API和配置。
Can模块属于最低层,执行硬件访问并向上层提供独立于硬件的API。唯一可以访问Can模块的上层是CanIf模块(另请参阅SRS_SPAL_12092)。
Can模块提供启动传输的服务,并调用CanIf模块的回调函数来通知事件,这些服务独立于硬件。此外,它还提供控制属于同一CAN硬件单元的CAN控制器的行为和状态的服务。只要属于同一CAN硬件单元,单个Can模块就可以控制多个CAN控制器。
有关CAN控制器和CAN硬件单元的详细描述,请参见首字母缩略词和缩写章节以及[5]中的图表。
2 首字母缩略词和缩写
2.1 优先级反转
“如果只使用单个传输缓冲器,则可能会发生内部优先级反转。由于低优先级消息存储在缓冲区中,等待总线上的交通平静下来在等待期间,此消息可以阻止更高级别的消息同一微控制器产生的优先级不会通过总线传输。”
“外部优先级反转问题可能出现在某些CAN实现中。假设一个CAN节点希望传输一包连续的消息具有高优先级,存储在不同的消息缓冲区中。如果帧间CAN网络上这些消息之间的间隔大于最小CAN标准定义的空间,第二个节点能够启动传输较低优先级消息的最小帧间空间由间歇字段,由3个隐性位组成。在间歇期间待处理的消息另一条消息的传输最早在总线空闲期