HPMicro PX4 快速上手指南
仓库链接
Repo链接为:https://github.com/hpmicro/PX4-Autopilot ,板级文件路径为 boards/px4/fmu-v6xhpm
。
基于的开发板
- HPM6750EVKMINI
提供的主要功能
-
对如下drivers进行了适配
UART
,I2C
,SPI
,SDIO
,USB
,PWM
,FPU
,DMA
,GPTMR
等。
-
对如下模块或软件进行了对接
- 陀螺仪
ICM20602
- 磁力计
BMM350
- 气压计
BMP390
- GPS
NEO3
- FRAM
FM25V02A
- EEPROM
24LC64T
- ESC电调
OneShot125, PWM400, PWM200, PWM100, PWM50
- SBUS接口遥控器
- QGC地面站
- 陀螺仪
信号接线表
模块 | 外设 | 引脚 |
---|---|---|
FM25V02A | SPI2 | PB21, PB22, PB24, PB25 |
ICM20602 | SPI3 | PB29, PB30, PC02, PC03, PD19 |
BMM350 | I2C3 | PB13, PB14 |
BMP390 | I2C3 | PB13, PB14 |
24LC64 | I2C3 | PB13, PB14 |
24LC64 | I2C0 | PB10, PB11 |
NEO3 | I2C0, UART13 | PB10, PB11, PZ08, PZ09 |
ESC电调 | PWM0, PWM1 | PB18, PB19, PB26, PB27 |
SBUS接口遥控器 | UART6 | PD24(信号输入) -> PD25(取反输出) -> PE27 |
Console | UART0 | PY06, PY07 |
性能指标
-
执行
work_queue status
指令,显示的threads信息如下: -
执行
top
指令,显示的CPU使用率信息如下,CPU使用率为26.55%。
开发环境
- Ubuntu 22.04 LTS
编译器
- 编译器为GCC
- 下载链接为:https://github.com/hpmicro/riscv-gnu-toolchain/releases/tag/2023.10.18
- 在Home路径中新建ToolChain文件夹,路径为
~/Toolchain
,并将工具链解压至该文件夹中 - 在
~/.bashrc
文件中的最后一行新增如下语句,将工具链加入到环境变量 $PATH 中。export PATH=$PATH:~/Toolchain/rv32imac_zicsr_zifencei_multilib_b_ext-linux/bin
OpenOCD
- 下载链接为:https://github.com/hpmicro/riscv-openocd/releases/tag/hpm_xpi_v0.3.0
- 将其解压至
~/Toolchain
文件夹中 - 在
~/.bashrc
文件中的最后一行新增如下语句,将工具加入到环境变量 $PATH 中。export PATH=$PATH:~/Toolchain/openocd-linux/bin
编译代码
-
从GitHub下载代码
git clone --recurse-submodules git@github.com:hpmicro/PX4-Autopilot.git
-
在PX4-Autopilot根目录下,执行如下指令:
cd PX4-Autopilot make px4_fmu-v6xhpm_default
下载并运行
-
使用 板载FT2232 + OpenOCD 的方式进行下载调试
-
到
px4-autopilot/platforms/nuttx/NuttX/nuttx/arch/risc-v/src/hpmicro/hpm_sdk/boards/openocd
目录下启动OpenOCD,指令如下:openocd -f probes/ft2232.cfg -f soc/hpm6750-single-core.cfg -f boards/hpm6750evkmini.cfg
-
到
px4-autopilot/build/px4_fmu-v6xhpm_default
目录下,使用GDB下载并运行程序,指令如下:riscv32-unknown-elf-gdb ./px4_fmu-v6xhpm_default.elf (gdb) target remote localhost:3333 (gdb) mon reset halt (gdb) load (gdb) c
Console 串口调试终端
- 可使用picocom作为串口调试终端Console,指令如下:
sudo picocom -b 115200 /dev/ttyUSB1
资源链接
PX4 官方文档中心
:https://docs.px4.io/main/en/Nuttx 官方文档中心
:https://nuttx.apache.org/docs/latest/-
HPMicro 代码仓库
:https://github.com/hpmicro欢迎有兴趣的开发者共同参与,欢迎提交 Issue 或 Discussion。