最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

六、MSP432飛控軟件框架分析

2021-04-21 22:21 作者:無名創(chuàng)新開源無人機(jī)EDU  | 我要投稿

飛控整個軟件代碼運(yùn)行在定時器調(diào)度模式,同時對各個外設(shè)模塊中斷優(yōu)先級進(jìn)行了合理設(shè)計,確保程序運(yùn)行的實時性和穩(wěn)健性。其中對實時性、周期性要求高的比如:傳感器數(shù)據(jù)采集、姿態(tài)解算、慣性導(dǎo)航、控制等任務(wù),采用定時器調(diào)度的方式執(zhí)行,其它耗時且對周期性要求不高的子任務(wù)例如:電壓采集、按鍵掃描、顯示屏刷?新、地面站發(fā)送、加速度計標(biāo)定、磁力計標(biāo)定、遙控器行程標(biāo)定、參數(shù)保存等放在while(1)里面,利用中斷空閑的時間去執(zhí)行。

飛控上電復(fù)位后,單片機(jī)會首先根據(jù)官方啟動文件定義來初始化堆棧指針、程序計數(shù)器、堆棧大小、中斷向量表等一系列過程,最后會運(yùn)行C函數(shù)分支入口_main,startup_msp432p401r_uvision.s內(nèi)容僅做了解就可以。

下面我們利用Understand軟件來對飛控程序框架進(jìn)行分析,首先看main主函數(shù)的調(diào)用框圖:

首先主函數(shù)main會調(diào)用硬件初始化函數(shù)HardWave_Init(),硬件初始化包括以下內(nèi)容:

主函數(shù)main執(zhí)行硬件初始化函數(shù)HardWave_Init()完畢后,會進(jìn)入進(jìn)入while(1)內(nèi)利用中斷空閑時間執(zhí)行按鍵掃描、OLED顯示、加速度計校準(zhǔn)、磁力計校準(zhǔn)、遙控器行程校準(zhǔn)、參數(shù)保存等。


定時器中斷任務(wù)調(diào)度主要執(zhí)行的任務(wù)為遙控器數(shù)據(jù)轉(zhuǎn)換、傳感器數(shù)據(jù)采集、姿態(tài)解算、光流速度融合、慣導(dǎo)GPS數(shù)據(jù)融合、SDK數(shù)據(jù)解析、控制、校準(zhǔn)檢測等。

? ? 其它中斷服務(wù)函數(shù)如PPM中斷解析函數(shù)、串口數(shù)據(jù)解析函數(shù),當(dāng)外設(shè)模塊發(fā)送中斷信號后,會進(jìn)入對應(yīng)中斷函數(shù):

地面站數(shù)據(jù)解析
OPENMV1數(shù)據(jù)解析
OPENMV2數(shù)據(jù)解析

綜上所述,飛控程序運(yùn)行時,存在三類主要的任務(wù):

1、定時器任務(wù)調(diào)度中斷函數(shù);

2、其它外設(shè)中斷函數(shù)(PPM解析、串口中斷等);

3、While(1)里面非實時函數(shù)

要想程序運(yùn)行穩(wěn)定、串口數(shù)據(jù)盡可能地不丟幀,PPM數(shù)據(jù)解析穩(wěn)定,必須要考慮每個任務(wù)實際用時開銷,對中斷優(yōu)先級進(jìn)行合理的設(shè)計。

在設(shè)計定時器任務(wù)調(diào)度中斷函數(shù)時,需要對每一個子任務(wù)的時間開銷進(jìn)行統(tǒng)計,且定時器中斷服務(wù)函數(shù)的調(diào)度周期要大于子任務(wù)的最大時間開銷之和。在進(jìn)行串口中斷優(yōu)先級設(shè)計時,需要把握以下幾點(diǎn):

1、多個串口通訊時,串口通訊波特率可以降低一點(diǎn)。
2、合計設(shè)計優(yōu)先級,當(dāng)存在不同波特率通訊時,通訊波特率高的串口中斷優(yōu)先級要高于波特率低的。
3、存在優(yōu)先級高于串口中斷的其它中斷任務(wù)時,其它中斷任務(wù)的總的最大時間開銷也要考慮。


六、MSP432飛控軟件框架分析的評論 (共 條)

分享到微博請遵守國家法律
廊坊市| 邛崃市| 榆社县| 四川省| 汨罗市| 海城市| 龙江县| 定结县| 遵义县| 山丹县| 柘荣县| 清流县| 安达市| 五常市| 磴口县| 武强县| 巴彦淖尔市| 阳谷县| 宜都市| 江油市| 桂平市| 什邡市| 永善县| 静海县| 玛沁县| 无棣县| 都安| 比如县| 淳化县| 汕尾市| 邳州市| 吉木乃县| 始兴县| 东港市| 晴隆县| 牡丹江市| 镇康县| 侯马市| 新密市| 华宁县| 镶黄旗|