chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MAVLink學習之路05_ MAVLink應用編程接口分析

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 2020-03-07 16:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

MAVLink應用編程主要內(nèi)容

2.1 發(fā)送和接收說明

利用MAVLink通信協(xié)議進行編程,主要實現(xiàn)的功能就是:

1.發(fā)送端

將需要發(fā)送的數(shù)據(jù)(如:SysState, BatVol),添加MAVLink通信協(xié)議,通過硬件(如:UART、CAN)發(fā)送出去。

2.接收端

硬件(如:UART、CAN)接收到的數(shù)據(jù),通過MAVLink協(xié)議解析,得到一幀完整的MAVLink數(shù)據(jù)包,提取發(fā)送端發(fā)送的數(shù)據(jù)(如:SysState, BatVol),將得到的數(shù)據(jù)應用到我們程序中。

主要流程:數(shù)據(jù) -> MAVLink封裝 -> 發(fā)送 -> 接收 -> MAVLink解析 ->數(shù)據(jù)

2.2 發(fā)送和接收流程圖

該流程圖是結(jié)合我上一篇文章提供的源代碼例程畫出來,包含的只是主要內(nèi)容,更多細節(jié)沒有在流程圖中呈現(xiàn)。

提示:

我提供例程是針對初學者提供比較單一發(fā)送和接收例程(MDK-ARM和EWARM包含各自的發(fā)送和接收工程)。

而實際項目可能會:

1.發(fā)送和接收在一個工程;

2.包含操作系統(tǒng)

3.發(fā)送、接收數(shù)據(jù)FIFO(隊列)處理;

所以,實際項目,請按需修改我提供的源碼。

3

MAVLink函數(shù)接口詳細說明

這一章節(jié)講述發(fā)送和接收主要用到的函數(shù)接口,請參考我提供的源代碼例程理解。

為方便初學者理解,我將其分為發(fā)送和接收兩個部分來講述。

3.1 發(fā)送主要函數(shù)接口

上面是我提供例程的代碼,主要講4個接口。

1.MAVLink_SendTest

這個接口是根據(jù)自己情況進行封裝函數(shù),用于應用程序調(diào)用,這里不多說。

2.mavlink_msg_sys_info_pack

這個函數(shù)接口主要目的:將變量信息(SysID、CompID、SysState、BatVol)打包,最終得到MAVLink_Msg這個消息包。

3.mavlink_msg_to_send_buffer

將上一步得到的MAVLink_Msg轉(zhuǎn)換成我們要發(fā)送的數(shù)據(jù)BUF緩存。

4.MAV_USART_SendNByte

這個函數(shù)接口也是我自己根據(jù)硬件(UART)封裝的,如果你是其它硬件通信,只需要封裝一個類似的接口(參數(shù)具有BUF,LEN)即可。

發(fā)送數(shù)據(jù)的流程:從應用代碼 -> 底層硬件(發(fā)送出去)。

如果要深入了解,可以先熟悉軟件流程,再結(jié)合源代碼工程,同時參看接口函數(shù)具體實現(xiàn)。相信你很快就明白了。

3.2 接收主要函數(shù)接口

上面是我提供例程的代碼(方便截圖,去掉了部分),主要講以上4點內(nèi)容。

1.MAV_USART_GetByte

該函數(shù)接口也是硬件底層通信接口,請根據(jù)自己情況修改,只需要傳遞數(shù)據(jù)(流)進來即可。

2.mavlink_parse_char

MAVLink解析是按照一個一個字符進行解析,我們接收到一個字符,就對其進行解析,直到解析完(根據(jù)返回標志判斷)一幀數(shù)據(jù)為止。

3.if(MAVLINK_MSG_ID_SYS_INFO == MAVLinkMsg.msgid)

這里就是對解析好的一包完整消息進行分類判斷吧。其實,我是想說,這個地方還有兩個ID需要進行判斷,SysID系統(tǒng)ID和CompID部件ID。

我提供例程為方便初學者快速理解,未提供SysID和CompID判斷,在后續(xù)應用編程中會用到。

接收數(shù)據(jù)的流程:從應用代碼 -> 底層硬件(發(fā)送出去)。

以上就是發(fā)送和接收的主要函數(shù)接口,如果你只是簡單的進行通信,這幾個接口就夠你使用了。當然,更高級的編程應用還需要你進一步掌握其中的內(nèi)容。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 通信協(xié)議
    +關(guān)注

    關(guān)注

    28

    文章

    1094

    瀏覽量

    42336
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    59

    文章

    3093

    瀏覽量

    473398
  • uart
    +關(guān)注

    關(guān)注

    22

    文章

    1319

    瀏覽量

    106948
  • mavlink
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    2777
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    STEVAL - LNBH05:衛(wèi)星LNB電源評估板的技術(shù)剖析

    - LNBH05電源評估板,看看它在LNB供電方面有哪些獨特的優(yōu)勢。 文件下載: STEVAL-LNBH05.pdf 一、STEVAL - LNBH05的功能特性 1. 接口與供電
    的頭像 發(fā)表于 04-17 14:05 ?102次閱讀

    深入解析 onsemi RFD16N05LSM N 溝道邏輯電平功率 MOSFET

    深入解析 onsemi RFD16N05LSM N 溝道邏輯電平功率 MOSFET 在電子設計領(lǐng)域,功率 MOSFET 是至關(guān)重要的元件,廣泛應用于各種電路中。今天我們來詳細了解 onsemi 公司
    的頭像 發(fā)表于 04-07 10:20 ?139次閱讀

    驅(qū)動之路#03:LCD 時序參數(shù)分析

    ? 題圖:浙江普陀山客運中心最近獲得2021年度凡爾賽建筑獎。 歡迎關(guān)注,每周更新!? 本合集分享的是,我當初學習Linux驅(qū)動的來時路——《《驅(qū)動之路》開篇:自序13 tvb: 垂直上寬/后肩
    的頭像 發(fā)表于 02-10 08:27 ?1921次閱讀
    驅(qū)動<b class='flag-5'>之路</b>#03:LCD 時序參數(shù)<b class='flag-5'>分析</b>

    嵌入式單片機開發(fā)學習路徑

    ,但是確是不可缺少的。 3. 實踐操作 3.1 學習并操作開發(fā)板 選擇一款流行的單片機開發(fā)板(如Arduino、STM32等),通過實際操作熟悉開發(fā)環(huán)境、編程流程和調(diào)試方法。 3.2 完成簡單
    發(fā)表于 02-09 15:42

    在Daraz平臺獲取搜索列表數(shù)據(jù)的API接口實現(xiàn)

    ? 一、接口分析 Daraz平臺未公開官方API文檔,但可通過分析網(wǎng)絡請求獲取數(shù)據(jù)接口。核心步驟如下: 請求URL 搜索頁面的數(shù)據(jù)接口通常為: ? base_url = "https
    的頭像 發(fā)表于 02-05 17:42 ?173次閱讀
    在Daraz平臺獲取搜索列表數(shù)據(jù)的API<b class='flag-5'>接口</b>實現(xiàn)

    多協(xié)議可編程USB接口適配器

    多協(xié)議可編程USB接口適配器USB2S,全面支持UART/I2C/SPI/CAN/1-Wire USB2S(USB To Serial ports)是一款多功能可編程接口適配器,支持U
    的頭像 發(fā)表于 01-15 14:06 ?290次閱讀
    多協(xié)議可<b class='flag-5'>編程</b>USB<b class='flag-5'>接口</b>適配器

    厚聲貼片電阻RS-05K101JT功率和最大工作電壓

    厚聲貼片電阻RS-05K101JT的額定功率為1/8W(0.125W),最大工作電壓為150V 。以下是具體分析: 1、功率解析 : 型號中的“05”對應封裝尺寸為0805(2.0mm×1.25mm
    的頭像 發(fā)表于 01-12 15:01 ?390次閱讀
    厚聲貼片電阻RS-<b class='flag-5'>05</b>K101JT功率和最大工作電壓

    EVAL-M1-05F804R評估板:電機驅(qū)動設計的得力助手

    電源板.pdf 評估板概述 EVAL-M1-05F804R是iMOTION?模塊化應用設計套件中的一款功率評估板。它配備了iMOTION標準接口M1連接器,以及三個用于電機驅(qū)動應
    的頭像 發(fā)表于 12-21 15:50 ?1070次閱讀

    如何選擇吉時利數(shù)字源表2601B的編程接口

    將從應用場景出發(fā),結(jié)合技術(shù)特性與工程實踐,解析各接口方案的優(yōu)劣與適用場景。 ? 一、接口類型與基礎(chǔ)特性分析 2601B數(shù)字源表支持以下主流編程接口
    的頭像 發(fā)表于 12-17 16:05 ?374次閱讀
    如何選擇吉時利數(shù)字源表2601B的<b class='flag-5'>編程</b><b class='flag-5'>接口</b>

    USB接口的革命性進化之路

    USB(Universal Serial Bus,通用串行總線)自問世以來,憑借其傳輸速度快、使用方便、連接靈活等優(yōu)勢,迅速取代了其他同類接口標準,成為電子設備連接的主流選擇。更關(guān)鍵的是,USB標準
    的頭像 發(fā)表于 12-01 11:48 ?470次閱讀

    Texas Instruments TSD05/TSD05C/TSD36C浪涌保護裝置數(shù)據(jù)手冊

    Texas Instruments TSD05/TSD05C/TSD36C浪涌保護器件專為箝位有害瞬變(如ESD和浪涌)而設計。TSD05是單向的,而TSD05C/TSD36C是雙向的
    的頭像 發(fā)表于 08-18 11:12 ?1345次閱讀
    Texas Instruments TSD<b class='flag-5'>05</b>/TSD<b class='flag-5'>05</b>C/TSD36C浪涌保護裝置數(shù)據(jù)手冊

    SESRV05-4A-靜電抑制器

    SESRV05-4A-靜電抑制器
    發(fā)表于 07-13 14:48 ?0次下載

    零基礎(chǔ)學習LuatOS編程:快速上手開發(fā)實戰(zhàn)教程!

    無論你是剛接觸物聯(lián)網(wǎng)編程的新手,還是希望拓展技能的技術(shù)愛好者,本教程將為零基礎(chǔ)的讀者提供一條清晰的LuatOS學習路徑。從安裝開發(fā)工具到編寫第一個程序,我們將通過實例講解核心概念,助你快速實現(xiàn)從理論
    的頭像 發(fā)表于 06-13 17:27 ?733次閱讀
    零基礎(chǔ)<b class='flag-5'>學習</b>LuatOS<b class='flag-5'>編程</b>:快速上手開發(fā)實戰(zhàn)教程!

    HC05藍牙原理圖加PCB

    HC05藍牙原理圖加PCB
    發(fā)表于 06-04 16:31 ?21次下載

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機學習之路!

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機學習之路!即刻開啟W55MH32學習之旅!本教系列程配套官方手冊與W55MH32L開發(fā)板,從外設功能框圖解析到代碼實操,助你掌握高性能以太網(wǎng)單片機的架構(gòu)和核心原理,輕松駕馭多
    的頭像 發(fā)表于 05-07 18:51 ?1448次閱讀
    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機<b class='flag-5'>學習</b><b class='flag-5'>之路</b>!