第二章 PX4-Pixhawk-RCS启动文件解析

2023-05-16

第二章 PX4-RCS启动文件解析

RCS的启动类似于linuxshell文件,如果不知道shell文件是什么东西可以理解成是为程序的流程框,它是告诉处理器应该怎么样去运行,前一章介绍的是编译成固件这一章节就是真正要运行的东西了。至于PX4系统为什么是运行RCS这个文件而不是其他的文件,这里我们将会在文章末尾进行解析说明。本章通读理解后大家不妨可以试着去精减一下这个rcs

Rcs的路径在如图中的路径,

文件如图 

文件开头以“#nsh”,这个是脚本文件的开头规范,这个没什么要解释的。文件中会存在多个如“set ***  ***”这样的语句,这个其实可以理解成为一个define定义。比如图中的MODE(模式),TUNE_ERR(报警音乐)、LOG_FILElog文件)。这里启动文件很多的语法格式有点类似于C语言的语法规则,所以理解起来也可以参考这个方法的。

 

         第一部分主要是对是否挂载SD卡判断,如果存在就启动报警器的驱动。至于为什么是tone_alarm start,这里稍作解释,还记得前一章节要记住的那个mpu6000吗?找到tone_alarm的驱动文件(src/drivers/stm32/tone_alarm),立面的cmake文件立面是不是有个一模一样的名字,至于start这个等到进行驱动文件解析的时候再进行解析了。看看这个启动文件立面的if else是不是特别熟悉,这个解析是不是跟C语言的一样。MBAGPMNBG这个是编码过的哦,这个你要从驱动中去寻找看到底解析出来是什么音乐。这里如果没有挂载SD卡那么就没有log文件输出哦,因为log文件是输出到SD卡上面哦。


剩下的东西将会进行抽取简单的说明,应为这个文件还是有比较多的冗余东西,所以后期还是希望大家进行裁剪。










  这里插一句话,其实真正运行的语句你可以去编译后的文件去查看,因为编译后那些文件都是最终文件
 ,还有一个文件可以去看看哦,有惊喜。 

















到这里rcs的解析基本就讲完了,这里我讲的也只是粗略的讲一下,因为这里面的冗余太多,一直都没时间去裁剪。剩下的就交给各位大虾了,这个启动文件其实要通读也不是很难的,理解了这个文件就知道整个系统是怎么工作的了。有什么补充的随时留言,到时候本人随时更新,促进大家学些。




 


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第二章 PX4-Pixhawk-RCS启动文件解析 的相关文章

  • 点亮LED灯及IAR调试

    点亮LED灯 一开始想先通过简单的点亮一个灯的程序来试一下MCU xff0c 硬件上的原理图如下 xff1a 从这里看出PB4 PB5 PC3 PC4 PC5 PC7都能用 xff0c 还没接外设 xff0c 一开始我选择了 PB5 去外接
  • Vite项目推荐使用的几个插件——开发神器

    Vite 可以使用插件进行扩展 xff0c 这得益于 Rollup 优秀的插件接口设计和一部分 Vite 独有的额外选项 在 Vue3 43 Vite 开发中 xff0c 有下面几个插件帮助 xff0c 无异于锦上添花 xff0c 不失为日
  • linux ROS串口读取的问题

    目的是实现电脑端 xff08 ubuntu系统 xff09 与STM32通过串口建立通讯 xff0c STM32解算与其连接的传感器并将数据传送至电脑端进行编程 我们知道 xff0c 随便一个串口助手即可实现读取STM32串口数据并显示出来
  • 磁力计的基本工作原理

    参考文章地址 xff1a http blog sina com cn s blog 402c071e0102v8ig html 电子罗盘是一种重要的导航工具 xff0c 能实时提供移动物体的航向和姿态 随着半导体工艺的进步和手机操作系统的发
  • Gazebo中的turtlebot2中加入GPS模块

    ubuntu14 04 xff0c ros版本为indigo turtlebot2的仿真环境的学习参考 xff1a http learn turtlebot com 的仿真部分 想用GPS做导航 xff0c gazebo中没有GPS模块 x
  • Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.

    将用户添加到docker用户组 xff0c 避免每次运行docker需要sudo 命令如下 sudo groupadd docker 添加docker用户组 sudo gpasswd a dell 填写你的用户 docker 将登陆用户加入
  • java微信H5支付中遇到的问题都已解决 java代码 和html代码

    1 xff0c 开通账号 xff0c 申请商户账号 打开连接https pay weixin qq com index php partner public home xff08 如图1 xff09 xff08 图1 xff09 2 xff
  • 【leetcode】高频题目整理_数学篇( High Frequency Problems, Math )

    截止至今LeetCode题目总量已经有1582题 xff0c 估计将来每年平均增长300题左右 xff0c 大部分人肯定是刷不完的 xff0c 所以得有选择地刷LeetCode 一种公认的刷题策略是按类别刷题 xff0c 可是每个类别也有许
  • svn拉分支,打标签

    首先在本地打开svn的branch命令 点击右边的打开按钮 右键branch分支创建一个线上文件夹 可以指定某个提交点拉分支
  • docker的image两个id相同名字不同

    今天建立docker容器的时候由于疏忽 xff0c 镜像的名字输错了 xff0c 结果容器创建成功后 xff0c 镜像中出现两个id相同 我们要删除第一个 xff1a docker rmi imageID 是删除口令 这种情况的操作 xff
  • 树莓派Pi OS备份镜像设置自动扩展磁盘,完全基于树莓派原版系统实现方式(镜像备份全流程)

    写入树莓派官方镜像的时候 xff0c 我们会发现当树莓派第一次启动后 xff0c 磁盘空间会自动扩充到整个TF卡 那么当我们自己制作镜像的时候 xff0c 能不能去除未使用的空间 xff0c 制作体积较小的镜像 xff0c 并在该镜像启动时
  • STM8S 红外解码+低功耗处理

    NEC协议 红外遥控的编码目前广泛使用的是 xff1a NEC Protocol 的 PWM xff08 脉冲宽度调制 xff09 和 PhilipsRC 5 Protocol 的 PPM xff08 脉冲位置调制 xff09 xff0c
  • YUV 数据和 Bitmap 互相转换

    YUV 数据和 Bitmap 互相转换 在 Android 的 Camera 应用开发过程中会遇到需要保存预览图像进行分析的情况 xff0c 比如人脸检测或扫描等场景 此时需要将预览的 YUV 数据转为为 Bitmap 保存下来 xff0c
  • Git从入门到熟练第九讲 合并分支和分支冲突

    前言 上一章我们讲解了分支的创建和删除 xff0c 以及对误删分支的恢复操作 xff0c git stash挂起分支修改 在这一讲我们则重点讲解分支合并git merge以及如何解决合并冲突 目录 课前准备 xff1a 9 1 合并分支 9
  • STM32 跳转系统BootLoader

    STM32 跳转系统BootLoader STM32 进入系统 bootLoader 主要有两种方法 xff1a xff08 1 xff09 一种是设置 boot 引脚 xff0c 进入系统 bootLoader xff08 2 xff09
  • 43 freertos任务通知-互斥量串口防止打印乱码

    四十三 freertos任务通知 互斥量串口防止打印乱码 span class token comment span span class token macro property span class token directive ha
  • canal监听mysql实践

    canal监听mysql实践 canal是用java开发的基于数据库增量日志解析 xff0c 提供增量数据订阅 amp 消费的中间件 目前 xff0c canal主要支持了MySQL的binlog解析 xff0c 解析完成后才利用canal
  • 自动驾驶算法学习:多传感器信息融合(标定, 数据融合, 任务融合)

    版权声明 xff1a 本文为博主转载文章 xff0c 遵循 CC 4 0 by sa 版权协议 xff0c 转载请附上原文出处链接和本声明 原文链接 xff1a https blog csdn net orange littlegirl a
  • Linux平台设备和驱动

    一 platform总线 一个现实的linux设备驱动通常需要挂接在一种总线上 xff0c 对于本身依附于PCI xff0c USB xff0c IIC xff0c SPI等的设备而言 xff0c 这自然不是问题 xff0c 但是在嵌入式系
  • 2019年终总结&小半年流媒体服务器开发经验总结

    2019年终总结 amp 小半年流媒体服务器开发经验总结 文章目录 2019年终总结 amp 小半年流媒体服务器开发经验总结19年开发小结流媒体服务框架设计登录服开发ffmpeg音视频合成服务开发 流媒体服务开发小结rtp处理视频的合成 a

随机推荐

  • 设备接入ONENET(3)STM32 + ESP8266(MQTT协议)接入云 :官方例程移植笔记(HAL+LL库)

    重要提示 xff1a 由于OneNET版本迭代 xff0c 导致鉴权方式可能变更 xff0c 若程序无法连接 xff0c 请参考官方手册或再OneNET论坛搜索相关内容 移植本意应该是指通过修改 使得运行原先在另一个平台可运行的程序 STM
  • pygame 学习笔记(4)推荐一本python入门游戏书籍《PYTHON游戏编程入门》

    简介 PYTHON游戏编程入门 xff08 More Python Programming for the Absolute Beginner xff09 是 S Harbour写的一本入门书籍 xff0c 基于pygame库 本书每一个章
  • VLC加载插件失败原因及解决

    最近做视频播放的程序 xff0c 找到了VLC开源库 在windows 43 vs2013 43 QT5 3环境下进行调试 出现了在调用libvlc new时提示不能找到插件 加载libvlc失败的问题 原因及解决方法如下 xff1a 1
  • logcat的使用

    参考链接 log信息级别 以下优先级从上往下排序 xff1a V xff1a verbose 显示全部信息 最低优先级 xff0c 对应Log v String tag String msg D xff1a debug 显示调试信息 xff
  • 物联网架构实例—解决Linux(Ubuntu)服务器最大TCP连接数限制

    1 前言 xff1a 在对物联网网关进行压测的时候 xff0c 发现在腾讯云部署网关程序 xff0c 设备接入数量只能达到4000多个长连接 xff0c 之后就再也无法接入终端了 之前在阿里云部署的时候明明可以到达2万左右 xff0c 而且
  • Prometheus从入门到跑路

    1 prometheus框架结构 2 prometheus组件介绍 2 1 Prometheus Server 这是Prometheus的服务端 xff0c 也就是核心 Prometheus本身是一个以进程方式启动 xff0c 之后以多进程
  • ucos-ii学习笔记1 创建任务&&任务调度

    span style font family none font size 12px background color rgb 255 255 255 span span 最近在学习嵌入式系统 xff0c 听说ucos ii是使用最广 xf
  • ucos ii学习笔记2 邮箱&&信息量

    上一篇说了ucos ii的大致运行原理 xff0c 这一篇主要用来说明不同任务之间的数据传递的 有人会说 xff1a 不同任务间的数据传递直接用全局变量不就好了 xff0c 我一开始也有这种疑惑 xff0c 也在简单程序中实验过没什么问题
  • ucos ii学习笔记4 软件定时器

    span span p span style font size 18px span span ucos ii从V2 83版本以后加入了软件定时器 xff0c 软件定时器的最快时钟节拍就等于ucos ii的系统时钟节拍 xff0c 由一个单
  • 时钟源关系初解

    最近发现自己对时钟的各种关系不是很清晰 xff0c 所以在这里初步的顺一下 以STM32F4为例 xff0c 大概都差不多 STM32F4有5个时钟源 xff0c 分别是HSI HSE LSI LSE PLL 从名字上看出HSI和HSE是高
  • up-board

    安装ubuntu16 04 安装board内核 http www eeboard com bbs thread 59222 1 1 html 对管脚的控制 http www eeboard com bbs thread 59257 1 1
  • 【嵌入式软件实习】找实习和电话面试记录与总结

    前言 前一段时间就是非常想找实习 xff0c 这次是接到了一家还算是比较大的公司的面试通知和实习offer 做一下简单的记录给在找实习的大家一个参考吧 主要内容为 xff1a 三连即可提高学习效率0 0 x1f9d1 x1f3fb 作者简介
  • Ubuntu更换apt镜像源

    原文 xff1a Ubuntu更换apt镜像源 在ubuntu中 xff0c 默认使用 ubuntu 的官方源http archive ubuntu com xff0c 但是这个官方源在国内下载的速度太慢 xff0c 甚至只有几十k 于是考
  • JS 闭包 详细说明(教程)

    首先 xff0c 闭包是一个高阶函数 xff0c 高阶函数除了可以接受函数作为参数外 xff0c 还可以把函数作为结果值返回 xff08 不知道高阶函数是啥 xff0c 点击链接 xff09 先通过一个例子来了解一下如何把函数作为结果值返回
  • STVP烧录程序

    STVP介绍 STVD xff1a ST Visual Develop xff0c 可视化开发工具STVP xff1a ST Visual Programmer xff0c 可视化编程工具 xff0c stvp主要打开一些固件 hex s1
  • 传感器标定系列——Kalibr工具

    文章目录 Kalibr介绍安装资源 Kalibr介绍 Kalibr is a toolbox that solves the following calibration problems 多相机标定 Multi Camera Calibra
  • TCP传输图片及多线程

    最终效果图 xff1a 注意 xff1a 图片发送大体流程同 Qt网络编程 TCP IP 一 只是在发送时这里采用 的 数据流QDataStream形式 因为使用摄像进行监控时也是对一帧一帧的图片进 行处理 xff0c 因此掌握了如何用Qt
  • GCC编译过程及基本命令总结

    一 GCC简介 GCC即GNU Compiler Collection xff0c 原本只是针对C语言的编译工具 xff0c 现在已经变成了一个工具集 xff0c 包含了C C 43 43 JAVA等语言的集合体 管理和维护 xff1a 由
  • 第一章 PX4-Pixhawk-程序编译过程解析

    第一章 PX4程序编译过程解析 PX4 是一款软硬件开源的项目 xff0c 目的在于学习和研究 其中也有比较好的编程习惯 xff0c 大家不妨可以学习一下国外牛人的编程习惯 这个项目是苏黎世联邦理工大学的一个实验室搞出来的 该方案是基于 N
  • 第二章 PX4-Pixhawk-RCS启动文件解析

    第二章 PX4 RCS 启动文件解析 RCS 的启动类似于 linux 的 shell 文件 xff0c 如果不知道 shell 文件是什么东西可以理解成是为程序的流程框 xff0c 它是告诉处理器应该怎么样去运行 xff0c 前一章介绍的