
这里列举了11个任务,实际上APP2,APP3为调试使用,APP1为正式应用
分别对应着
100us电机控制任务
CAN01中断
CAN04中断
空闲
1,4,5,8,10ms循环任务
APP1_Task_1ms
进入 App1_Task_1ms
│
├─ 初始化/监控任务栈
├─ 开始 CPU Load 统计
├─ 更新 IOM 使能计数器
├─ 设置 ADC/PWM 采样偏移
├─ 任务执行次数加 1
├─ WdgM CP0
├─ IOM 监控处理
├─ SBC 看门狗处理
├─ CAN Bus-Off 处理
├─ 读取 TOS 信号
├─ TOS 扭矩计算
├─ RPS 角度处理
├─ RTE 1 ms Runnable
├─ 每 2 ms 执行 RTE 2 ms Runnable
├─ WdgM CP1
├─ XCP 标定处理
├─ DEM 1 ms 诊断处理
├─ WdgM CP2
├─ 结束 CPU Load 统计
├─ 获取任务栈使用率
├─ TerminateTask
│
退出 App1_Task_1msAPP1_Task_5ms
进入 Appl_Task_5ms
│
├─ 初始化任务栈监控
├─ 开始 CPU Load 统计
├─ 5ms任务执行次数加1
├─ WdgM Alive Checkpoint
├─ CanTp_MainFunction()
├─ Dcm_MainFunction()
├─ ComAbs_CanRx_Main()
├─ ComAbs_CanTx_Main()
├─ MCU_Safety_MainFunction()
├─ 结束 CPU Load 统计
├─ 获取栈使用率
├─ TerminateTask()
│
退出 Appl_Task_5msAPP1_Task_10ms
进入 Appl_Task_10ms
│
├─ 初始化栈监控
├─ 开始 CPU Load 统计
├─ 10ms任务计数器加1
├─ WdgM Alive Checkpoint
├─ WdgM Program Flow CP00
├─ 更新模型输入
├─ WdgM 主处理
├─ IGN/ComM/诊断状态处理
├─ 方向盘回正功能
├─ 读取 SBC 设备状态
├─ 更新 NVM 数据
├─ BswM 状态管理
├─ ComM 通信管理
├─ CanSM CAN状态管理
├─ WdgM Program Flow CP01
├─ DEM 10ms诊断
├─ ADC周期数据触发
├─ DRV3245状态读取
├─ 每20ms执行RTE_MainFunction_20ms
├─ WdgM Program Flow CP02
├─ 电机控制开路诊断
├─ 关机检测
├─ 结束 CPU Load 统计
├─ 统计栈使用率
├─ TerminateTask
│
退出 Appl_Task_10msAPP1_Task_4ms
进入 Appl_Task_4ms
│
├─ 初始化栈监控
├─ 开始 CPU Load 统计
├─ WdgM Alive Checkpoint
├─ 4ms任务计数器加1
├─ Rte_MainFunction_4ms()
├─ 结束 CPU Load 统计
├─ 获取任务栈使用率
├─ TerminateTask()
│
退出 Appl_Task_4msAPP1_Task_8ms
进入 Appl_Task_8ms
│
├─ 初始化栈监控
├─ 开始 CPU Load 统计
├─ WdgM Alive Checkpoint
├─ 8ms任务计数器加1
├─ Rte_MainFunction_8ms()
├─ 结束 CPU Load 统计
├─ 获取任务栈使用率
├─ TerminateTask()
│
退出 Appl_Task_8msOsTask_Idle
进入 OsTask_Idle
│
├─ 初始化栈监控
├─ 开始 CPU Load 统计
├─ Idle任务计数器加1
├─ NVM空闲写
├─ 结束 CPU Load 统计
├─ 获取任务栈使用率
├─ TerminateTask()
│
退出 OsTask_Idle