女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

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

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-07 16:21 ? 次閱讀

MAVLink應用編程主要內容

2.1 發送和接收說明

利用MAVLink通信協議進行編程,主要實現的功能就是:

1.發送端

將需要發送的數據(如:SysState, BatVol),添加MAVLink通信協議,通過硬件(如:UARTCAN)發送出去。

2.接收端

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

主要流程:數據 -> MAVLink封裝 -> 發送 -> 接收 -> MAVLink解析 ->數據

2.2 發送和接收流程圖

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

提示:

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

而實際項目可能會:

1.發送和接收在一個工程;

2.包含操作系統

3.發送、接收數據FIFO(隊列)處理;

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

3

MAVLink函數接口詳細說明

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

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

3.1 發送主要函數接口

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

1.MAVLink_SendTest

這個接口是根據自己情況進行封裝函數,用于應用程序調用,這里不多說。

2.mavlink_msg_sys_info_pack

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

3.mavlink_msg_to_send_buffer

將上一步得到的MAVLink_Msg轉換成我們要發送的數據BUF緩存。

4.MAV_USART_SendNByte

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

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

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

3.2 接收主要函數接口

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

1.MAV_USART_GetByte

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

2.mavlink_parse_char

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

3.if(MAVLINK_MSG_ID_SYS_INFO == MAVLinkMsg.msgid)

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

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

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

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

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

    關注

    28

    文章

    997

    瀏覽量

    40947
  • CAN
    CAN
    +關注

    關注

    57

    文章

    2885

    瀏覽量

    466727
  • uart
    +關注

    關注

    22

    文章

    1267

    瀏覽量

    103241
  • mavlink
    +關注

    關注

    0

    文章

    8

    瀏覽量

    2652
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    即刻啟程,踏上W55MH32高性能以太網單片機學習之路

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

    如何使用UCANS32K146讀取MAVLINK

    /user-guides/autopilot/the-cube-module-overview 我想要UCANS32K146讀取飛控的所有診斷信息,并被告知此信息是使用 MAVLINK 接口從飛控發送的。 是否有任何驅動程序或示例代碼可以執行此作(我沒有
    發表于 03-26 06:36

    PRSCAN-05HSA PRSCAN-05HSA

    電子發燒友網為你提供AIPULNION(AIPULNION)PRSCAN-05HSA相關產品參數、數據手冊,更有PRSCAN-05HSA的引腳圖、接線圖、封裝手冊、中文資料、英文資料,PRSCAN-05HSA真值表,PRSCAN
    發表于 03-25 18:37
    PRSCAN-<b class='flag-5'>05</b>HSA PRSCAN-<b class='flag-5'>05</b>HSA

    RS485-05HSA RS485-05HSA

    電子發燒友網為你提供AIPULNION(AIPULNION)RS485-05HSA相關產品參數、數據手冊,更有RS485-05HSA的引腳圖、接線圖、封裝手冊、中文資料、英文資料,RS485-05HSA真值表,RS485-
    發表于 03-25 18:35
    RS485-<b class='flag-5'>05</b>HSA RS485-<b class='flag-5'>05</b>HSA

    RS485-05HSSV RS485-05HSSV

    電子發燒友網為你提供AIPULNION(AIPULNION)RS485-05HSSV相關產品參數、數據手冊,更有RS485-05HSSV的引腳圖、接線圖、封裝手冊、中文資料、英文資料,RS485-05HSSV真值表,RS485-
    發表于 03-25 18:35
    RS485-<b class='flag-5'>05</b>HSSV RS485-<b class='flag-5'>05</b>HSSV

    RS485-05LSAV RS485-05LSAV

    電子發燒友網為你提供AIPULNION(AIPULNION)RS485-05LSAV相關產品參數、數據手冊,更有RS485-05LSAV的引腳圖、接線圖、封裝手冊、中文資料、英文資料,RS485-05LSAV真值表,RS485-
    發表于 03-25 18:35
    RS485-<b class='flag-5'>05</b>LSAV RS485-<b class='flag-5'>05</b>LSAV

    RS485-05LSA RS485-05LSA

    電子發燒友網為你提供AIPULNION(AIPULNION)RS485-05LSA相關產品參數、數據手冊,更有RS485-05LSA的引腳圖、接線圖、封裝手冊、中文資料、英文資料,RS485-05LSA真值表,RS485-
    發表于 03-25 18:34
    RS485-<b class='flag-5'>05</b>LSA RS485-<b class='flag-5'>05</b>LSA

    NW2-05D05DR3 NW2-05D05DR3

    電子發燒友網為你提供AIPULNION(AIPULNION)NW2-05D05DR3相關產品參數、數據手冊,更有NW2-05D05DR3的引腳圖、接線圖、封裝手冊、中文資料、英文資料,NW2-05D05DR3真值表,NW2-
    發表于 03-20 18:30
    NW2-<b class='flag-5'>05D05</b>DR3 NW2-<b class='flag-5'>05D05</b>DR3

    FN1-05S05RNT FN1-05S05RNT

    電子發燒友網為你提供AIPULNION(AIPULNION)FN1-05S05RNT相關產品參數、數據手冊,更有FN1-05S05RNT的引腳圖、接線圖、封裝手冊、中文資料、英文資料,FN1-05S05RNT真值表,FN1-
    發表于 03-19 18:39
    FN1-<b class='flag-5'>05S05</b>RNT FN1-<b class='flag-5'>05S05</b>RNT

    NNV25-05S05A3NT NNV25-05S05A3NT

    電子發燒友網為你提供AIPULNION(AIPULNION)NNV25-05S05A3NT相關產品參數、數據手冊,更有NNV25-05S05A3NT的引腳圖、接線圖、封裝手冊、中文資料、英文資料,NNV25-05S05A3NT真
    發表于 03-19 18:36
    NNV25-<b class='flag-5'>05S05</b>A3NT NNV25-<b class='flag-5'>05S05</b>A3NT

    NNV25-05S05ANT NNV25-05S05ANT

    電子發燒友網為你提供AIPULNION(AIPULNION)NNV25-05S05ANT相關產品參數、數據手冊,更有NNV25-05S05ANT的引腳圖、接線圖、封裝手冊、中文資料、英文資料,NNV25-05S05ANT真值表,
    發表于 03-19 18:36
    NNV25-<b class='flag-5'>05S05</b>ANT NNV25-<b class='flag-5'>05S05</b>ANT

    BQ78412應用程序編程接口

    電子發燒友網站提供《BQ78412應用程序編程接口.pdf》資料免費下載
    發表于 12-18 14:46 ?0次下載
    BQ78412應用程序<b class='flag-5'>編程</b><b class='flag-5'>接口</b>

    4G模組SD卡接口編程:深度學習

    今天我們需要深度學習的是4G模組SD卡接口編程,以我常用的模組Air724UG為例,分享給大家。
    的頭像 發表于 11-20 23:14 ?600次閱讀
    4G模組SD卡<b class='flag-5'>接口</b><b class='flag-5'>編程</b>:深度<b class='flag-5'>學習</b>

    接口芯片的編程模型方法是什么

    接口芯片的編程模型方法是一個復雜的話題,涉及到硬件設計、軟件編程、通信協議等多個方面。 1. 接口芯片概述 接口芯片是用來連接不同硬件設備或
    的頭像 發表于 09-30 11:30 ?565次閱讀

    如何理解socket編程接口

    Socket編程接口是一種網絡編程的基本概念,它提供了一種在不同計算機之間進行通信的方法。 Socket編程接口的基本概念 1.1 Sock
    的頭像 發表于 08-16 10:48 ?811次閱讀