系统初始化
RTOS系统的启动 在系统上电时,第一个执行的启动文件是汇编语言编写的复位函数Reset_Handler,复位函数最后会调用C库函数_ _main,__main的主要工作是初始化系统的堆和栈,最后调用C中的main()函数,从而进入C的世界。 目录 1 系统初始化 1.1 空闲任务初始化 1.1.1 空闲任务的作用 1.2 时钟节拍任务 2 CPU初始化 2.1 时间戳 2.1.1 时间戳的实现 2.1.1.1 CPU初始化函数 2.1.1.2 时间戳初始化函数 2.1.1.3 时间戳定时器初始化函数 3 SysTick初始化 由此可见,任务中的延时使用的是软件延时,即还是让CPU空等来达到延时的效果。使用RTOS的优势就是充分发挥CPU的性能,永远不让它闲着。任务如果需要延时,也就不能再让CPU空等来实现延时的效果。 RTOS中的延时叫阻塞延时,即当任务需要延时时,会放弃CPU的使用权,CPU可以去做其他的事情,当任务延时时间到,将重新获得CPU的使用权继续运行,这样就可以充分利用CPU,而不是空等。 4 内存初始化 5 OSStart() 1 系统初始化 系统初始化是根据我们配置宏定义进行的,有一些则是系统必要的初始化,如空闲任务、时钟节拍任务等。 注意: 在系统初始化中,空闲任务的初始化和时钟节拍任务的初始化是必须存在的任务,否则系统无法正常运行。 1.1 空闲任务初始化