主程序框图如下,接下来我会将各个模块全部单独整理出来,一是分享,也是给自己留个便于查阅
主函数main.c
int main(void)
{
flag.start_ok = All_Init(); //进行所有设备的初始化,并将初始化结果保存
Scheduler_Setup(); //调度器初始化,系统为裸奔,这里人工做了一个时分调度器
while(1)
{
Scheduler_Run(); //运行任务调度器,所有系统功能,除了中断服务函数,都在任务调度器内完成
}
}
主程序框图
初始化框图
初始化任务调度器
任务调度器
控制流示意