WDT
参考:https://zhuanlan.zhihu.com/p/711237133
模式
1.WDGIF_FAST_MODE:mode1
2.WDGIF_OFF_MODE:mode2
3.WDGIF_SLOW_MODE:mode0
默认初始化为WDGIF_SLOW_MODE,等待初始化完成后切换成WDGIF_FAST_MODE
WDGIF_FAST_MODE设置:
问题:反复重启
WDGIF_SLOW_MODE模式下,初始化过程中未来得及喂狗导致反复重启,需要将超时时间设置的大一点。
配置:
添加BSW WDG的RTE事件:
因为BSW event事件的来源是编译生成的
所以配置完WDG后先build一次,
然后
重新生成RTE服务,会自动生成task mapping
要想在ASW中调用BSW接口,需要在SWC中添加port连接
1.
2.SWC中添加port口
3.将BSW的port与SWC的port绑定
绑定成功
对于WdgM_MainFunction 10ms运行一次
WdgM_MainFunction
--->WdgM_EvaluateGlobalStatus
----->WdgM_EvaluatePlatformGlobalStatus
------->WdgM_TriggerWdgIf
所以10ms触发一次喂狗
监控周期=10ms*reference_cylce(500)=5s
监控的task 1s运行一次,所以expected alive indications设置为5
10-1<alive indications allowed<10+1
实测:
在没有触发checkpoint的情况下,5s重启一次