BetaFlight统一硬件配置文件研读之feature命令

2023-05-16

BetaFlight统一硬件配置文件研读之feature命令

  • 1. 源由
  • 2. 代码分析
  • 3. 实例分析
  • 4. 配置情况
    • 4.1 feature
    • 4.2 feature list
    • 4.3 feature feature_name
    • 4.4 feature -feature_name
  • 5. 参考资料

统一硬件配置文件的设计是一种非常好的设计模式,可以将硬件和软件的工作进行解耦。

1. 源由

cli命令中feature是对BetaFlight飞控软件功能使能开关。至于功能的含义,这里就不展开,随着对系统的深入理解,慢慢就会一点点了解起来的。

比如:TELEMETRY表示电传功能

2. 代码分析

cliFeature
 ├──> "feature" [print all enabled features]
 ├──> "feature list" [print all available features]
 └──> "feature <feature_name>"
     └──> [Find feature]
         ├──> <cmdline[0] == '-'> featureConfigClear(feature)
         └──> <cmdline[0] != '-'> featureConfigSet(feature)

以下是目前BetaFlight飞控系统所支持的features:

// sync this with features_e
static const char * const featureNames[] = {
    "RX_PPM", "", "INFLIGHT_ACC_CAL", "RX_SERIAL", "MOTOR_STOP",
    "SERVO_TILT", "SOFTSERIAL", "GPS", "",
    "RANGEFINDER", "TELEMETRY", "", "3D", "RX_PARALLEL_PWM",
    "RX_MSP", "RSSI_ADC", "LED_STRIP", "DISPLAY", "OSD",
    "", "CHANNEL_FORWARDING", "TRANSPONDER", "AIRMODE",
    "", "", "RX_SPI", "", "ESC_SENSOR", "ANTI_GRAVITY", "", NULL
};

3. 实例分析

# feature
feature RX_SERIAL
feature TELEMETRY
feature OSD

4. 配置情况

# help feature
feature - configure features
	list
	<->[name]

4.1 feature

# feature
Enabled: RX_SERIAL TELEMETRY LED_STRIP OSD AIRMODE ANTI_GRAVITY 

4.2 feature list

# feature list
Available: RX_PPM INFLIGHT_ACC_CAL RX_SERIAL MOTOR_STOP SERVO_TILT SOFTSERIAL GPS RANGEFINDER TELEMETRY 3D RX_PARALLEL_PWM RX_MSP RSSI_ADC LED_STRIP DISPLAY OSD CHANNEL_FORWARDING TRANSPONDER AIRMODE RX_SPI ESC_SENSOR ANTI_GRAVITY

4.3 feature feature_name

# feature OSD
Enabled OSD

4.4 feature -feature_name

# feature -OSD
Disabled OSD

5. 参考资料

【1】BetaFlight开源代码框架简介
【2】BetaFlight统一硬件资源简单配置修改
【3】BetaFlight统一硬件配置文件研读

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

BetaFlight统一硬件配置文件研读之feature命令 的相关文章

随机推荐

  • ArduPilot开源飞控系统之简单介绍

    ArduPilot开源飞控系统之简单介绍 1 源由2 了解 amp 阅读2 1 ArduPilot历史2 2 关于GPLv32 3 ArduPilot系统组成2 4 ArduPilot代码结构 3 后续3 1 DIY F4503 2 软件设
  • ArduPilot Kakute F7 AIO DIYF450 之GPS配置

    ArduPilot Kakute F7 AIO DIYF450 之GPS配置 1 源由2 步骤2 1 模块预测试2 2 物理连接2 3 UART配置2 4 Compass使能2 5 GPS使能2 6 校准Compass 3 GPS amp
  • 关于CSDN文章内嵌视频自动播放问题

    关于CSDN文章内嵌视频自动播放问题 1 源由2 分析3 反馈4 沟通5 总结6 附录 Firefox配置7 附录 Microsoft Edge配置 1 源由 这个问题是4月初发现的 xff0c 主要现象就是页面上的视频一起自动播放了 鉴于
  • 关于FPV图传系统时延讨论

    关于FPV图传系统时延讨论 1 源由2 时延测试方法3 时延测试资料4 关于模拟图传5 关于FPV时延感受5 1 静态时延5 2 动态时延 6 参考资料7 附录7 1 When is 120fps NOT 120fps DJI O3 Air
  • ArduPilot之开源代码框架

    ArduPilot之开源代码框架 1 系统框架2 工程框架2 1 工程目录2 2 代码组成2 3 运行流程 4 硬件传感器总线4 1 I2C4 2 SPI4 3 UART4 4 CAN 5 软件设计概念6 总结7 参考资料 在研读ArduP
  • Charles电脑配置和手机配置【超详细,iOS和安卓】

    1 xff0c 电脑安装charles charles的安装非常简单 xff0c 直接通过charles官网安装最新版即可 Charles 是收费软件 xff0c 可以免费试用 30 天 试用期过后 xff0c 未付费的用户仍然可以继续使用
  • vmmem内存占用高

    文章目录 前言通过 wslconfig限制其内存使用 前言 什么时vmmem进程 vmmem进程时在使用vmware时的进程 xff0c 内存占用非常高 我是在使用docker时遇到的这个进程 通过 wslconfig限制其内存使用 这个方
  • QGroundControl之安装调试

    QGroundControl之安装调试 1 源由2 问题汇总2 1 摄像头播放问题2 2 Windows电脑录像和拍照保存位置2 3 Android设备录像和拍照保存位置 3 打包资料4 附录 QGroundControl Video St
  • ArduPilot之posHold&RTL实测

    ArduPilot之posHold amp RTL实测 1 源由2 模式配置3 测试步骤4 飞行实测5 总结6 参考资料7 附录 关于QGC 暂不支持MAVLink2 signing Protocol问题7 1 问题描述7 2 硬件配置7
  • ArduPilot之开源代码Library&Sketches设计

    ArduPilot之开源代码Library amp Sketches设计 1 简介1 1 Core libraries1 2 Sensor libraries1 3 Other libraries 2 源由3 Library Sketche
  • ArduPilot之开源代码Sensor Drivers设计

    ArduPilot之开源代码Sensor Drivers设计 1 源由2 Sensor Drivers设计2 1 front end back end分层2 2 设计思想分析 3 实例理解3 1 驱动初始化3 2 业务应用代码3 3 fro
  • ArduPilot之开源代码基础知识&Threading概念

    ArduPilot之开源代码基础知识 amp Threading概念 1 源由2 基础知识2 1 The timer callbacks2 2 HAL specific threads2 2 1 AP HAL ChibiOS2 2 2 AP
  • ArduPilot之GPS Glitch问题&M8N模块配置

    ArduPilot之GPS Glitch问题 amp M8N模块配置 1 源由2 现象3 视频分析3 1 配置 xff08 不理想 xff09 3 2 配置优化3 3 优化配置 43 短时间 43 3D Lock 43 Glitch3 4
  • BetaFlight统一硬件配置文件研读

    BetaFlight统一硬件配置文件研读 1 源由2 分析2 1 硬件SOC2 2 统一配置文件2 3 cli命令2 4 板级配置主要命令2 4 1 board name2 4 2 manufacturer id2 4 3 resource
  • BetaFlight统一硬件配置文件研读之timer命令

    BetaFlight统一硬件配置文件研读之timer命令 1 源由2 代码分析3 实例分析4 配置情况4 1 AFn配置查表4 2 timer4 3 timer show4 4 timer pin list 5 参考资料 统一硬件配置文件的
  • 自制肥鲨HDO2电源之功率问题

    自制肥鲨HDO2电源之功率问题 1 源由2 分析2 1 电压检测2 2 功率检测 3 思考4 验证4 1 PH50 10400mAh充电宝供电4 2 PH80 20000mAh充电宝供电4 3 总结 5 参考资料 1 源由 前端时间因为肥鲨
  • BetaFlight统一硬件配置文件研读之serial命令

    BetaFlight统一硬件配置文件研读之serial命令 1 源由2 代码分析3 实例分析4 配置情况5 参考资料 统一硬件配置文件的设计是一种非常好的设计模式 xff0c 可以将硬件和软件的工作进行解耦 1 源由 cli命令中seria
  • Mac配置环境变量后所有命令失效(多条解决方案)

    目录 1 xff0c 首先让命令暂时生效 xff0c 但关窗口后不生效了就 2 xff0c 该操作会清空之前配置的bash profile xff0c 来使命令生效 3 xff0c 该操作可保存原来的bash profile的配置 xff0
  • BetaFlight统一硬件配置文件研读之set命令

    BetaFlight统一硬件配置文件研读之set命令 1 源由2 代码分析3 实例分析4 配置情况4 1 set4 2 set parameter name4 3 set parameter name value 5 参考资料 统一硬件配置
  • BetaFlight统一硬件配置文件研读之feature命令

    BetaFlight统一硬件配置文件研读之feature命令 1 源由2 代码分析3 实例分析4 配置情况4 1 feature4 2 feature list4 3 feature feature name4 4 feature feat