1. 程式人生 > >自制Pixhawk飛控板燒寫BootLoader教程

自制Pixhawk飛控板燒寫BootLoader教程

對於自己製作的飛控板,通過USB連線電腦之後,開始電腦是無法檢測到飛控板的埠存在的。檢測不到埠,就不能用控制檯給飛控板燒寫韌體,就不能用QGroundControl,就不能進行感測器的校正,就不能設定遙控器,就毛都幹不了。
因此需要先進行兩個晶片的Bootloader燒錄。
以飛控板上的STM32F427VIT6主控晶片為例,使用STLink2 以及配套的ST-Link-Utility 軟體進行BootLoader燒寫的步驟如下:

  1. 連線
    jtag
    飛控板上預留了晶片的JTAG介面,使用JST_SUR_H6封裝,由於SWD模式比JTAG在高速模式下面更加可靠。在資料量大的情況下JTAG下載程式會失敗,但是SWD模式出現問題的機率會小很多,並且採用SWD模式僅使用兩條線即可進行除錯,因此這裡選擇使用SWD模式進行連線。將SWCLK、SWDIO、VCC、GND四根線一一對應連線即可,燒錄時飛控板需要單獨使用USB供電,最終接線情況如圖。
    connect

  2. BootLoader燒錄
    st
    使用ST-Link Utility軟體進行燒錄,上電後先點選選單欄Target下的Connect將飛控板連入軟體,將px4fmu-v2_bl.bin檔案拖入到軟體介面內,擦除(Erase)晶片上原有資料後點擊驗證程式(Programe Verify)即可完成主晶片的BootLoader燒寫。上圖所示即為成功效果。對於STM32F100C8T6B故障協處理器晶片的BootLoader燒錄與STM32F427晶片方法相同,但需要先用ST-Link2連線STM32F1的JTAG介面並選擇px4io_bl.bin檔案。
    完成主控晶片STM32F427與故障協處理器STM32F100的BootLoader的燒錄之後,將飛控通過USB連線到電腦就可以在埠中看到相應的介面了,顯示為”PX4 FMU”。
    開心了吧。~~~

BootLoader是自己從github上clone然後編譯的,筆者燒錄的是fmu-v2版本的BootLoader,使用其他飛控板的各取所需。能人異士按需更改想必也是闊以的。
這裡就歐克了。

boot