使串行端口驱动程序可由用户配置
本主题介绍如何设置串行驱动程序,以便最终用户(通过参数)对其进行配置,使其能够在飞行控制器板上任何一个可配置的串行端口上运行。
先决条件
假定驱动程序已经存在,并使用命令语法在 shell 中启动:
吁
<;驱动程序名称>; start -d <;串行端口>; [-b <;波特率>; | -b p:<;参数名>;]
在哪里?
-d
:串行端口名称。-b
:波特率(可选),如果驱动程序支持多种波特率。如果支持,驱动程序必须允许您以裸波特率和参数名两种形式指定波特率,形式为-b p:<参数名>;
(可以用px4_get_parameter_value()
).TIP
参见 GPS 驱动程序 为例。
使驱动程序可配置
使驱动程序可配置:
创建 YAML 模块配置文件:
在驱动程序的源代码目录中添加一个新文件,文件名为 module.yaml
插入以下文字,并根据需要进行调整:
cmake模块名:uLanding 雷达 serial_config: - 指挥部: ulanding_radar start -d ${SERIAL_DEV} -b p:${BAUD_PARAM} 端口配置参数: 名字:SENS_ULAND_CFG 组:传感器
信息
模块配置文件的完整文档可在 validation/module_schema.yaml 文件。这也用于验证 CI 中的所有配置文件。
将模块配置添加到 CMakeLists.txt 驱动模块的文件:
cmakepx4_add_module( 模块 drivers__ulanding MAIN ulanding_radar SRCS ulanding.cpp MODULE_CONFIG module.yaml )