0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MAVLink学习之路01_ 认识MAVLink

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-03-07 16:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1写在前面

1.MAVLink是一种非常轻量级的通信协议,在简单的8位单片机上也可以运行。

2.MAVLink的初衷主要是用于无人机上,但它的通用性和可移植性非常好,它也可以应用于其它很多场合。

3.MAVLink的设计方式值得学习通信的朋友研究一下。

2

关于MAVLink

2.1 描述

MAVLink:Micro Air Vehicle Link,即微型飞行器连接通信协议,于2009年初由Lorenz Meier首次发布。

Mavlink协议是在串口通讯基础上的一种更高层的开源通讯协议。

MAVLink是一种非常轻量级的通信协议,主要用于与无人机(以及板载无人机组件之间)进行通信。

2.2 主要特征

1.效率很高

MAVLink V1每帧最少只有8个字节的数据,包括帧头和数据包丢弃检测;

MAVLink V2每帧最少只有14个字节的数据(是一个更加安全和可扩展的协议);

2.非常可靠

自2009年以来,MAVLink一直被用于在各种不同且具有挑战性的通信信道上的许多不同车辆,地面站(和其他节点)之间进行通信。它提供了检测数据包丢失,损坏和数据包身份验证的方法。

3.支持多种编程语言

可在多种MCU(如:STM32、Atmega、ARM7)和操作系统(如:Windows,Linux,MacOS,AndroidiOS)上运行。

4.支持网络上最多255个并发系统

2.3 参考网址

官网:https://mavlink.io/en

地面站:

http://qgroundcontrol.org/mavlink/start

维基百科:

https://en.wikipedia.org/wiki/MAVLink

(提示:微信公众号不支持外链接,请复制链接到浏览器打开)

3

MAVLink协议格式

目前MAVLink有两个版本:V1和V2版本,差异及详情请看下图:

MAVLink V2是V1的拓展版本,是一个更加安全和可扩展的协议。

由于市面上应用较广的还是V1版本,且支持的编程语言也是V1多余V2。因此,接下来(MAVLink学习之路)我都会结合MAVLink V1来讲述(学会V1,V2和容易就掌握了)。

3.1 MAVLink V1格式

MAVLink通信内容包含常见通信协议帧头、帧尾、长度、校验等。协议格式及详情见下图:

4

MAVLink使用方法和步骤

MAVLink之所以受广大无人机开发朋友的喜爱,原因就在于MAVLink移植方便、操作简单,以及它的兼容性很好(当然,这些都是它的优点,缺点肯定也是有的)。

要想使用MAVLink,一些基本的操作肯定还是得有。方便初学者对MAVLinK有进一步的认识,我先罗列主要步骤。

4.1 主要步骤

1.下载相应安装包及工具

2.环境搭建

3.通过xml配置MSG消息

4.移植到STM32

5.结合实例应用编程

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6078

    文章

    45580

    浏览量

    673691
  • 通信协议
    +关注

    关注

    28

    文章

    1096

    浏览量

    42349
  • 协议
    +关注

    关注

    2

    文章

    620

    浏览量

    41192
  • mavlink
    +关注

    关注

    0

    文章

    9

    浏览量

    2777
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    驱动之路#20:Pinctrl 在手,引脚复用很顺手

     欢迎关注,每周更新!☞ 本合集分享的是,我当初学习Linux驱动的来时路——《《驱动之路》开篇:自序pinctrl节点下(rk3576-pinctrl.dtsi),定义具体的引脚配置(复用
    的头像 发表于 04-07 21:18 471次阅读
    驱动<b class='flag-5'>之路</b>#20:Pinctrl 在手,引脚复用很顺手

    ESP-01/01S 烧录固件

    一、ESP-01 与 ESP-01S 的区别 引脚:ESP-01S 的 IO0、RST 和 EN 引脚内置上拉,ESP-01 则没有。 丝印:ESP-
    的头像 发表于 02-10 11:36 864次阅读
    ESP-<b class='flag-5'>01</b>/<b class='flag-5'>01</b>S 烧录固件

    驱动之路#03:LCD 时序参数分析

      题图:浙江普陀山客运中心最近获得2021年度凡尔赛建筑奖。 欢迎关注,每周更新!☞ 本合集分享的是,我当初学习Linux驱动的来时路——《《驱动之路》开篇:自序13 tvb: 垂直上宽/后肩
    的头像 发表于 02-10 08:27 2363次阅读
    驱动<b class='flag-5'>之路</b>#03:LCD 时序参数分析

    嵌入式单片机开发学习路径

    学习C语言 C语言是嵌入式开发的基础。掌握C语言的基本语法、指针、结构体、内存管理等内容是进入嵌入式开发的前提。 2. 硬件知识 2.1 认识单片机 单片机是嵌入式系统中的核心器件。了解单片机
    发表于 02-09 15:42

    神经网络的初步认识

    如今在机器学习的领域中,有许多方法可以用来解决特定的问题,例如房价预测、邮件分类、文件压缩等。而与我们日常生活关系最密切的应用莫过于计算机视觉(如学校门禁系统)和自然语言处理(如Siri)。这些
    的头像 发表于 12-17 15:05 460次阅读
    神经网络的初步<b class='flag-5'>认识</b>

    消费电子EMC整改:被动应对到主动防御的技术进阶之路

    消费电子EMC整改:被动应对到主动防御的技术进阶之路|南柯电子
    的头像 发表于 12-15 10:12 533次阅读

    消费电子EMC整改:助从被动修复到主动防御的进阶之路

    消费电子EMC整改:助从被动修复到主动防御的进阶之路|南柯电子
    的头像 发表于 12-03 09:52 664次阅读

    STM32和ESP32有什么区别?如何选开发板?资深工程师学习路线建议!

    ,并为你揭示一条通往高薪嵌入式岗位的进阶之路01初学者入门单片机:选STM32还是ESP32?区别是什么?STM32与ESP32无疑是单片机入门的两款经典MCU,在
    的头像 发表于 11-07 15:18 1195次阅读
    STM32和ESP32有什么区别?如何选开发板?资深工程师<b class='flag-5'>学习</b>路线建议!

    SD642-EN-V01

    SD642-EN-V01
    发表于 09-19 17:25 0次下载

    金升阳党委“光源行动”启程:以责任之光照亮求学之路

    金升阳党委“光源行动”启程:以责任之光照亮求学之路
    的头像 发表于 09-08 15:12 625次阅读
    金升阳党委“光源行动”启程:以责任之光照亮求学<b class='flag-5'>之路</b>

    BASiC_BSRD-2503-ES01数据手册

    BASiC_BSRD-2503-ES01
    发表于 09-01 16:25 9次下载

    Texas Instruments TPS62A01QEVM-270 &amp; TPS62A01AQEVM-270评估模块数据手册

    Texas Instruments TPS62A01QEVM-270和TPS62A01AQEVM-270评估模块旨在帮助用户快速评估和测试TPS62A01-Q1和TPS62A01A-Q
    的头像 发表于 08-05 13:39 1260次阅读
    Texas Instruments TPS62A<b class='flag-5'>01</b>QEVM-270 &amp; TPS62A<b class='flag-5'>01</b>AQEVM-270评估模块数据手册

    迅为RK3568开发板安装烧录工具-安装 RKTool 驱动

    在烧写镜像之前首先需要安装 RKTool 驱动。 RKTool 驱动在网盘资料“iTOP-3568 开发板\\\\01_【iTOP-RK3568 开发板】基础资料【V1.7版本
    发表于 05-29 10:47

    第一章 W55MH32 高性能以太网单片机的学习方法概述

    本章介绍W55MH32的学习方法,建议先了解硬件资源,按基础篇、入门篇循序渐进学习。参考两份手册,提供例程资料,还给出官网、github 等学习资料查找渠道。让我们一起踏上W55MH32高性能以太网单片机的
    的头像 发表于 05-26 09:07 1089次阅读
    第一章 W55MH32 高性能以太网单片机的<b class='flag-5'>学习</b>方法概述

    即刻启程,踏上W55MH32高性能以太网单片机学习之路

    即刻启程,踏上W55MH32高性能以太网单片机学习之路!即刻开启W55MH32学习之旅!本教系列程配套官方手册与W55MH32L开发板,从外设功能框图解析到代码实操,助你掌握高性能以太网单片机的架构和核心原理,轻松驾驭多接口及以
    的头像 发表于 05-07 18:51 1473次阅读
    即刻启程,踏上W55MH32高性能以太网单片机<b class='flag-5'>学习</b><b class='flag-5'>之路</b>!