谷动谷力
标题:
RT-Thread Nano 移植原理-启动流程
[打印本页]
作者:
鸣涧_GC96O
时间:
2020-11-26 21:16
标题:
RT-Thread Nano 移植原理-启动流程
RT-Thread Nano 移植原理
本片文档介绍 Nano 移植原理,针对的是不同 MCU 的移植,如 Cortex M,RISC-V,或者是其他 MCU 的移植。移植过程主要分为两个部分:libcpu 移植与板级移植,在讲解移植之前,本文档对 RT-Thread Nano 的启动流程与移植目录结构先进行说明。
启动流程
RT-Thread 启动流程如下所示,在图中标出颜色的部分需要用户特别注意(黄色表示 libcpu 移植相关的内容,绿色部分表示板级移植相关的内容)。
RT-Thread 启动代码统一入口为 rtthread_startup() ,芯片启动文件在完成必要工作(如初始化时钟、配置中断向量表、初始化堆栈等)后,最终会在程序跳转时,跳转至 RT-Thread 的启动入口中。RT-Thread 的启动流程如下:
全局关中断,初始化与系统相关的硬件。
打印系统版本信息,初始化系统内核对象(如定时器、调度器)。
初始化用户 main 线程(同时会初始化线程栈),在 main 线程中对各类模块依次进行初始化。
初始化软件定时器线程、初始化空闲线程。
启动调度器,系统切换到第一个线程开始运行(如 main 线程),并打开全局中断
欢迎光临 谷动谷力 (http://bbs.sunsili.com/)
Powered by Discuz! X3.2