国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 24264|回復: 0
打印 上一主題 下一主題

【飛控開發高級教程1】瘋殼·開源編隊無人機-飛控整機代碼走讀、編譯與燒寫

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2022-7-27 11:02:22 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
COCOFLY教程
——瘋殼·無人機系列
飛控整機代碼走讀、編譯與燒寫





圖1


一、代碼架構
  飛控的整體代碼工程由 8 個工作組組成,分別是 Ctrl、Driver、VL53L1X、STM32_LIB、USB、USB/Lib、StartUP 以及 Drv_Point,如下圖所示。


圖2
  各個組的具體的代碼功能如下表所示。


表1

二、代碼走讀

  系統的主函數部分是整個代碼的起始運行位置,在主函數內主要做兩個事情:1、初始化外設及參數,2、輪詢線程。


圖3
  系統的每一個線程都已經分配好了運行周期,在不同的線程里執行不同的事情,線程的切換通過函數指針的形式切換,而系統的運行時間由 sysTick 提供即系統的“滴答”時鐘。各個線程的入口如下。


圖4
  分別有 1000ms 周期的任務、50ms 周期的任務、20ms 周期的任務、10ms 周期的任務、6ms 周期的任務、4ms 周期的任務、3ms 周期的任務以及 2ms 周期的任務。
  整個飛控可以平穩飛行,重點在于控制部分,即工作組“Ctrl”里面的代碼。如下圖所示為“Ctrl”組的代碼框架。


圖5
  其中與遙控器、上位機的數據通信處理包含在 Data_Transfers.c 內。里面無非就是對數據包進行拆解包、封裝包等。如下圖所示為對接收到的遙控器數據進行解包分析的代碼。














  三軸數據的獲取處理在 mpu_perpare.c 內,如下圖所示。




圖15
  PID 控制相關代碼集中在 Ctrl.c 及 Alt_Ctrl.c 內,其中 Ctrl.c 負責角度環、角速度環 PID 控制,而 Alt_Ctrl.c 則負責高度環、高度速度環的 PID 控制。
  IMU.c 和 MotionCal.c 是保證整個飛控平穩飛行的重要一環,這兩個 c 文件主要負責飛控的姿態解算、數據融合處理等。


  工作組“USB”以及“USB/Lib”,負責通過 STM32 自帶的 USB,虛擬出串口,方便與上位機進行通信。
  此外為了保護開發者的勞動成果,Player_Flight.lib 還封裝了秘鑰驗證激活算法、多機編隊控制、水平方向的速度和位置環的 PID 控制以及 3D 翻滾控制代碼。
  保存、編譯最后把代碼燒寫的飛控主板中,配合遙控器就可以正常使用了。如下圖所示 1 為保存、2 為編譯、3 為下載燒寫。


圖16




如需定制開發,請通過官網“瘋殼”網頁底部的“聯系我們”進行聯系

文件下載請點擊: 【1】飛控整機代碼走讀、編譯與燒寫.pdf (1.17 MB)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 极品尤物一区二区三区 | 99re8热精品免费视频 | 国产又长又粗又爽免费视频 | 免费一级特黄欧美大片久久网 | 隔壁的放荡邻居在线看 | 国产专区第一页 | 五月婷婷视频在线 | 色播在线永久免费视频 | 王茜麻豆 | 国产一区二区久久久 | 亚洲一区二区观看 | 欧美影视一区二区三区 | 亚洲福利在线播放 | 一级女人18片毛片免费视频 | 黄视频网站在线观看 | 国产极品美女视频 | 欧美国产中文字幕 | 香蕉视频一区二区 | 久久se精品动漫一区二区三区 | 成人在线看片 | 黄视频在线观看www 黄视频网址 | 99在线观看视频 | 99精品热视频这里只有精品7 | 国产在线精品成人一区二区三区 | 国产色视频网站 | 久久66热re国产毛片基地 | 538porm在线看国产亚洲 | 无遮挡免费视频 | 国产v精品欧美精品v日韩 | 狠狠干夜夜操 | 天天操天天干天天透 | 向日葵视频在线免费观看 | 一级毛片免费观看不卡的 | 国产精品毛片大码女人 | 天天舔天天干天天操 | 久久就是精品 | 四虎高清成人永久免费影院 | 日韩一区二区三区四区区区 | 成年人视频免费在线播放 | 欧美视频免费一区二区三区 | 欧美成人全部免费观看1314色 |