不更新了,勿订阅!!!
目录
1 OS启动前
当启动引导程序调用main()函数后,main()函数会调用EcuM_Init()函数进行EcuM的初始化。在EcuM_Init()函数中,主要完成OS启动前的任务,包括:
- 设置中断
- 初始化DriverInitZero,初始化BSW中不用PostBuild参数的模块
- 返回PostBuild参数的指针
- 检查配置参数的一致性
- 初始化DriverInitOne,初始化BSW中使用PostBuild参数的模块
- 获得Reset reason
- 选择默认的Shutdown target
- Start OS
2 OS启动后
完成上面Start OS后,操作系统OS就启动了,会运行一些TASK,其中有个InitTask会调用EcuM_StartupTwo()函数,这样就进入了Startup的第二步,也就是OS启动后,主要完成以下任务:
- 初始化SchM
- 初始化BswM
- 通知BswM唤醒状态
至此,EcuM将控制权交给了B