【经验总结】AUTOSAR架构下NvM进入无限循环问题分析
目录
前言
正文
1.问题描述
1.1. 问题表现
1.2. 理论分析
2.直接原因
3.无限循环逻辑分析
3.1. NvM没有Job要处理的时候 (IDLE)
3.2. NvM无限循环的状态
3.3. NVM_STATE_NORMAL_PRIO_JOB --> NVM_STATE_IDLE
3.4. NVM_STATE_IDLE --> NVM_QRY_ID_NORMAL_PRIO_JOB
3.5. NvM_MainFunction退出do While循环的条件
4.总结
前言
最近遇到一个看门狗复位的问题,调查下来是因为NvM模块进入了一个无限循环的逻辑导致,导致这个问题的原因是NvM User进行了非法操作,直接原因还是比较容易调查出来,但是NvM User的非法操作为什么能让NvM模块进入无限循环的逻辑需要分析NvM模块的源码才能明白,所以写下此文,希望能给各位读者有所启示。
AUTOSAR BSW: Vector Davinci
MCAL: EB Infineon
HW Platform: TC3xx