Ardupilot移植自制硬件
创始人
2025-05-28 04:39:15

1.编写硬件描述文件

在以下路径文件夹下添加自己飞控硬件名称的文件夹:

Ardupilot/libaries/AP_HAL_ChibiOS/hwdef

文件内容参考此文件夹其他硬件写法,修改出适配自己硬件的硬件描述文件。
文件夹中有三个文件:

  • hwdef-bl.dat:这个定义的是BootLoader程序对应的硬件描述,由于BootLoader只用到了很少一部分硬件外设,因此此文件内容明显比“hwdef.dat”少;
  • hwdef.dat:这个定义的是飞控程序对应的硬件描述,其中包含了STM32时钟配置,串口、SPI、IIC、CAN等接口配置,IMU芯片型号描述,PWM以及定时器配置等等关键信息。
  • defaults.parm:这个文件定义了针对此电路板的默认参数。比如默认不使用串口的流控制、电源电压检测的比例系数等。注意,此文件不是必须的,如果你没有哪些参数是特有的,可以没有这个文件。

注意,上述三个文件的文件名是固定的(hwdef-bl.dat、hwdef.dat、defaults.parm),不能改为其他的名字。

2.编译Bootloader

// 第一步,清理之前的编译中间文件,一定要清理一下,能避免很多奇怪的问题
./waf distclean// 第二步,设置编译目标为针对你的硬件的BootLoader
./waf configure --board YourBoard --bootloader
// 注意,这里的“YourBoard”就是上面步骤中你自己新建的文件夹的名字
./waf configure --board NFCYv5 --bootloader// 第三步,编译BootLoader
./waf bootloader

3.编译飞控固件

// 第一步,清理之前的编译中间文件,一定要清理一下,能避免很多奇怪的问题
./waf distclean// 第二步,设置编译目标为针对你的硬件的飞控固件
./waf configure --board YourBoard// 第三步,编译飞控固件(此处以编译多旋翼固件为例)
./waf copter

相关内容

热门资讯

房价浮动有下限?天津市住建部门... “手里还有没签约的客户,抓紧邀约,跟客户宣贯到位,自己对自己的客户负责!”近日,社交平台流传一份天津...
被质疑“擦边营销”,知名品牌致... 一次被指“擦边”的营销展示,金帝巧克力被卷入舆论旋涡。据现代快报1月12日消息,近年来,曾作为80、...
精准发力 政府投资基金投向划定... 1月12日,国家发展改革委、财政部、科技部、工业和信息化部联合发布《关于加强政府投资基金布局规划和投...
产品均价下滑 温氏股份净利预减... 近日,温氏股份披露了2025年度业绩预告,预计公司2025年归母净利润为50亿—55亿元,比上年同期...
“地震”过后的小宇宙,章泽天来... 章泽天入驻小宇宙,像一颗石子投入平静的湖面。1月12日,章泽天在播客平台"小宇宙"上线个人播客"小天...