"); //-->

AUTOSAR CAN网络通信中有三种模式和三种状态,如下图所示:

3种运行模式:
睡眠模式(Bus-Sleep Mode);
预睡眠模式(Prepare Bus-Sleep Mode);
网络模式(Network Mode)。
睡眠模式(Bus-Sleep Mode)
当CAN网络中没有远程唤醒或者本地唤醒请求时,ECU应处于睡眠模式(Bus-Sleep Mode),将功耗降低至最低水平,这种模式是ECU启动时的起始状态或者是ECU睡眠时的最终状态。
在该模式下,网络管理报文和应用报文都禁止发送,但是可以被网络上的报文唤醒。
CAN收发器应当支持设定唤醒帧(如果有CAN收发器的情况下),ECU只会接受到特定的NM报文才会正常唤醒,否则就会一直处于休眠状态,能够不受网络上应用报文的干扰。
预睡眠模式(Prepare Bus-Sleep Mode)
ECU进入预睡眠模式(Prepare Bus-Sleep Mode)后禁止网络管理报文的发送,允许接收网络管理报文。应用报文已经在buffer中的一般允许继续发送,进入到预睡眠模式(Prepare Bus-Sleep Mode)计时器CanNmWaitBusSleepTime就会启动,一旦计时器CanNmWaitBusSleepTime超时,就会进入到睡眠模式(Bus-Sleep Mode)。

本项目AUTOSAR配置中设定计时器CanNmWaitBusSleepTime为2秒。
网络模式(Network Mode)
当CAN网络处于开启或者工作情况下会进入网络模式,ECU进入网络模式(Network Mode)后计时器CanNmTimeoutTime就会启动,只要成功接收到来自CAN总线上的网络管理报文或者成功发送至CAN总线网络管理报文,都会将计时器CanNmTimeoutTime重置。
本项目AUTOSAR配置中设定计时器CanNmTimeoutTime为2秒,所以0X505网络管理报文的发送周期要在2秒内,超时会进入预睡眠模式(Prepare Bus-Sleep Mode)。
网络模式(Network Mode)包含3种状态:
报文重复状态(Repeat Message State);
常规运行状态(Normal Operation State);
准备睡眠状态(Ready Sleep State)。
报文重复状态(Repeat Message State)
当ECU从其他模式进入网络模式(Network Mode)时,默认进入报文重复状态(Repeat Message State)。该阶段是CAN网络正式开始工作前的准备阶段,用来等待CAN网络中所有相关节点进行网络通信的准备时间。
该模式下计时器CanNmRepeatMessageTime规定了重复发送网关管理报文的时间,CanNmImmediateNmTransmissions规定了发送网络管理报文的次数。
在报文重复状态(Repeat Message State)ECU使用计时器CanNmMsgCycleTime周期时间发送网络管理报文。


本项目AUTOSAR配置中发送网络管理报文的周期是640毫秒,重复次数为5,总时常3.2秒。

常规运行状态(Normal Operation State)
ECU进行正常CAN通信时会处于常规运行状态(Normal Operation State),该阶段中,节点要按照计时器CanNmMsgCycleTime时间周期发送网络管理报文。每次成功发送或者接收CAN网络报文计时器CanNmTimeoutTime就会重置。
在常规运行状态(Normal Operation State)下的网络管理报文和应用报文都应该正常收、发通信。
准备睡眠状态(Ready Sleep State)
在准备睡眠状态(Ready Sleep State)ECU应当停止发送网络管理报文,每次成功接受到来自CAN网络上的网络管理报文,计时器CanNmTimeoutTime就会重置,一旦CanNmTimeoutTime超时,就会进入预睡眠模式(Prepare Bus-Sleep Mode)。
在AUTOSAR中规定了各种模式和状态下计时器的默认时间:

配置参数在AUTOSAR代码中体现如下所示:

下图梳理了所有网络管理的模式转换情况,通常控制器的状态转换如蓝色箭头所示:

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。
相关推荐
基础知识之CAN总线
一文读懂|CAN总线为何要加终端电阻
BCM系统解决方案
集成以太网、CAN、USB、加密技术功能的闪存微控制器
FlexRay线控制动参考设计
高工作电压5.7 kV rms隔离式CAN FD收发器
CAN-RS232通信转换模块的设计与实现
低速串行总线调试-CAN译码
南芯科技推出车规级高速CAN/CAN FD协议收发器
ARM7MCU提供以太网、CAN、USB、加密技术
dsPIC33EV 5V CAN-LIN入门工具包
使用 3.3V CAN 收发器在工业系统中实现可靠的数据传输
国内首颗:纳芯微CAN FD收发器NCA1044-Q1通过丰田VeLIO认证
ARM,CAN ARM-CAN接口板
Microchip推出集成式紧凑型CAN FD系统基础芯片解决方案,专为空间受限应用而设计
车载以太网 10BASE-T1S 迎来升级,太比特级传输速率已提上日程
CAN资料
CAN 教程
创新的现场总线CAN-bus实验室
CAN入门书
如何配置控制器局域网络(CAN)位时序实现系统性能优化?
ISO 16845标准详解
集成隔离式 CAN 收发器 - ISO1050
ZLGCAN,ARM,CAN 请教ZLGCAN有关ARM-CAN问题
FullCAN函数库V1.0
PHILIPS_CAN_控制器SJA1000的BasicCAN控制模块
CAN简介与Atmel Start上CAN驱动开发培训教程
ARM,CAN 请问:我在你们那买的ARM-CAN接口板上用的是什么型号光耦?
驱动汽车电子创新:RIGOL CAN-FD总线分析解决方案
MC34901: 面向工业应用的高速CAN收发器