px4韌體fmu.c檔案中存在sbus的**,只是沒開啟,這裡僅僅只是開啟sbus在px4的主控中的配置,不涉及sbus原理的分析。
也適用於在主控中如何接收sbus遙控器資料。
硬體:基於px4的v5的硬體的修改,移除掉io從控晶元
軟體:px4中v1.8.2版本
//路徑:firmware/cmake/configs/nuttx_px4fmu-v5_default.cmake:6
#px4_nuttx_configure
(hwclass m7 config nsh romfs y romfsroot px4fmu_common io px4io-v2) 修改為
px4_nuttx_configure
(hwclass m7 config nsh romfs y romfsroot px4fmu_common)
根據自己硬體判斷是否需要修改
//路徑:firmware/platforms/nuttx/nuttx-configs/px4fmu-v5/include/board.h:345
//#define gpio_usart6_rx gpio_usart6_rx_2 /* pg9 */
//#define gpio_usart6_tx gpio_usart6_tx_2 /* pg14 */
/*改為*/
#define gpio_usart6_rx
gpio_usart6_rx_1
/* pc7 */
#define gpio_usart6_tx
gpio_usart6_tx_1
/* pc6 */
注意在qt中,修改板載檔案不要修改build中的檔案,最好「make clean」後修改,因為檢視定義一般會跳轉到build中的檔案中,修改build中檔案,是沒有意義的。
在下面檔案中新增下列巨集定義,因為是串列埠6,所以是 「/dev/ttys4」
//firmware/src/drivers/boards/px4fmu-v5/board_config.h:631
#define rc_serial_port
"/dev/ttys4"
//firmware/src/drivers/px4fmu/fmu.cpp:1646
// 硬體中我們已經反向了,所以驅動程式這裡就不需要反向了,還有注意檢視波特率和2bit停止位
// rc_io_invert(true);
rc_io_invert
(false
);
●注意 sbus和遙控器需要配對好,確保硬體沒有問題。
●除錯的時候可以示波器看串列埠6的接收引腳有沒有資料,如果有再在px4中看串列埠6的接收資料
PX4中ESC的驅動框架
cdev繼承的是device,然後i2c又是繼承的cdev,然後esc又是繼承的i2c,device cdev i2c esc。在esc的init函式裡面 首先會呼叫i2c的init函式。然後配置rst管腳,然後配置電調的i2c位址,包括兩個方面,乙個是設定飛控程式裡面的匯流排位址,另乙個是moto...
TF系列在PX4上的應用
px4 有著自己獨特的優勢,受到廣大愛好者的喜愛。tf 系列是北醒推出的價效比極高的雷射雷達,受到廣大愛好者的追捧。本文介紹tf 系列和px4 的連線方法。本文件基於qgroundcontrol v4.0.6 和韌體px4 v1.11.0 編寫,如因地面站或韌體功能不全,請公升級。本文以pixhaw...
4 在XML中配置物件的屬性
前面的類a是極度簡化的demo,除了構造方法,沒有任何成員。本篇就來 一下,類中有成員的時候,如何在xml中進行配置。1.簡單型別成員 在類a中加入乙個string型別的成員 public class a set public a 在xml中進行如下配置 可以看到,object節點中增加了乙個子節點...