目录
文章目录
- 目录
- 0.简介
- 1.启动过程1
-
- 1.1 __start启动阶段
- 1.2 nuttx启动过程
- 1.3 nx_bringup()过程
- 1.4 nx_create_initthread()过程
- 1.5 nx_start_application()过程
- 1.6 nsh_main过程
- 1.7 nsh_consolemain过程
- 1.8 nsh_sysinitscript过程
- 2.启动过程2-rcS
-
0.简介
- PX4的整个启动过程,从飞控上电开始,单片机供电正常后,开始正常的工作,首先运行的代码就是bootloader代码,我们这里讲解的是STM32H753IIK6芯片作为主处理器,STM32F103C8t6做为从处理器不包含bootloader代码过程。bootloader代码跳转到应用程序后,飞控第一步要执行的就是启动函数,这里我们重点分析PX4-FMU的启动过程!
- px4操作系统nuttx为嵌入式实时操作系统,该系统类似于linux系统,在unix基础上进行裁剪。初学者对于程序的认知,大多数都是从main函数开始启动, 实际上我们接触的所有软件程序,使用到的main函数都不是程序实际开始运行的入口,只是用户程序的入口而已。从这个角度而言,PX4的每个任务的main函数都是该任务的入口。Nuttx操作系统和大多数操作系统相似,都先进入Bootloader启动引导程序,然后再启动fmu和io的操作系统。
- PX4的启动流程分为两个部分,第一部分为Nuttx的启动,到加载nsh启动脚本;第二部分为PX4启动脚本的执行,用于启动PX4的所有应用程序。
1.启动过程1