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

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

3天内不再提示

全国产!瑞芯微 RK3576 ARM 八核 2.2GHz 工业开发板—MQTT通信协议案例

Tronlong创龙科技 来源:Tronlong创龙科技 作者:Tronlong创龙科技 2025-06-26 11:29 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前 言

本文主要介绍评估板基于MQTT通信协议的开发案例,适用开发环境如下。

Windows开发环境:Windows 7 64bit、Windows 10 64bit

Linux开发环境:VMware16.2.5、Ubuntu22.04.5 64bit

U-Boot:U-Boot-2017.09

Kernel:Linux-6.1.115

LinuxSDK:LinuxSDK-[版本号](基于rk3576_linux6.1_release_v1.1.0)

我司提供的MQTT通信协议开发案例主要包括mqtt_client和mqtt_sinewave_pub,位于产品资料“4-软件资料Demomqtt-demos”目录下。

开发板简介

创龙科技 TL3576-EVM 是一款基于瑞芯微 RK3576J/RK3576高性能处理器设计的4核ARM Cortex-A72 +4核 ARM Cortex-A53 + ARM Cortex-M0 国产工业评估板,Cortex-A72 核心主频高达 2.2GHz,Cortex-A53 核心主频高达 2.0GHz。评估板由核心板和评估底板组成,核心板 CPUROMRAM电源、晶振、连接器等所有元器件均采用国产工业级方案,国产化率100%。同时,评估底板大部分元器件亦采用国产工业级方案,国产化率约为 99%(按元器件数量占比,数据仅供参考)。核心板经过专业的PCBLayout 和高低温测试验证,质量稳定可靠,可满足各种工业应用环境要求。

wKgZPGhSfKuAM-yDACgewhs62No995.png评估板硬件资源图解1

wKgZPGhSfLaAJrZfACymDwqG5B0938.png​评估板硬件资源图解2

MQTT通信协议简介

概述

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(Publish/Subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。

MQTT是轻量、简单、开放和易于实现的,同时作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。

wKgZO2hcrPmAI011AABoX9YS1-k398.png图 1

MQTT具有如下特点:

轻量可靠:MQTT的报文格式精简、紧凑,可在严重受限的硬件设备和低带宽、高延迟的网络上实现稳定传输。

发布/订阅模式(Publish/Subscribe):发布/订阅模式的优点在于发布者与订阅者的解耦,实现异步协议。即订阅者与发布者无需建立直接连接,亦无需同时在线。

为物联网而生:提供心跳机制、遗嘱消息、QoS质量等级 + 离线消息、主题和安全管理等全面的物联网应用特性。

生态更完善:覆盖范围广,已成为众多云厂商物联网平台的标准通信协议。

应用场景

MQTT作为一种低开销,低带宽占用的即时通讯协议,可以极少的代码和带宽为联网设备提供实时可靠的消息服务,适用于硬件资源有限的设备及带宽有限的网络环境。常见的应用场景如下:

物联网M2M通信,物联网大数据采集。

移动即时消息及消息推送。

智能硬件智能家居、智能电器。

车联网通信,电动车站桩采集。

智慧城市、远程医疗、远程教育。

电力能源、石油能源。

Mosquitto工具安装

Mosquitto是一款开源的MQTT消息代理(服务器)软件,提供轻量级的、支持可发布/可订阅的的消息推送模式。我司提供的评估板文件系统已支持Mosquitto工具,本文mqtt_client案例采用Mosquitto工具演示MQTT通信协议的通信功能。由于上位机Ubuntu系统作为通信对象,因此需在Ubuntu终端执行如下命令安装Mosquitto工具,出现提示时输入"Y"并按下回车即可。

Host# sudo apt-get install mosquitto-clients

wKgZPGhcrQaAASwYAAJYnrng51U462.png图 2

mqtt_client案例

案例说明

案例功能:使用libmosquitto(MQTT version 5.0/3.1.1)的API与MQTT代理服务器通信。基于MQTT通信协议,实现发布和订阅消息功能。

程序流程图如下图所示。

wKgZPGhcrReAeokiABSyIp1uNXM235.png图 3

案例测试

本案例使用公网MQTT服务器与上位机Ubuntu Mosquitto工具通信。请通过网线将评估板千兆网口ETH1RGMII和上位机连接至公网,确保可正常访问互联网。

下表提供了可用的在线公共MQTT服务器,可根据需要自行切换。

wKgZPGhcrSGAURDWAACe1iz62rk658.png

评估板启动,将案例bin目录下mqtt_client可执行文件拷贝至评估板文件系统的任意目录下,执行如下命令查看程序参数说明。

Target# ./mqtt_client --help

wKgZPGhcrTSANppGAABEMLw3F5w408.png图 4

评估板发布/上位机订阅

在上位机执行如下命令,使用mosquitto_sub工具订阅MQTT主题。

Host# mosquitto_sub -h broker-cn.emqx.io -p 1883 -t test/data

参数解析:

-h:指定MQTT服务器;

-p:指定MQTT服务器端口

-t:定义MQTT主题,可自定义命名。

wKgZPGhcrUaAGOGDAAAf9q-JjP0202.png图 5

在评估板文件系统执行如下命令发布消息至MQTT服务器。

Target# ./mqtt_client -h mosquitto_sub -h broker-cn.emqx.io -p 1883 -t test/data -p 1883 -M publish -t test/data -m 'www.tronlong.com'

参数解析:

-h:MQTT服务器

-p:MQTT服务器端口

-M:模式,publish为发布,subscribe为订阅

-t:MQTT主题,可随便命名

-m:发布的MQTT消息

wKgZO2hcrVKALlzxAAAe3DEDWec284.png图 6 评估板发布

消息发布成功后,上位机将从MQTT服务器接收到对应的消息。

wKgZO2hcrWCAJMqFAAAnAGdKZyY741.png图 7 上位机订阅

评估板订阅/上位机发布

在评估板文件系统执行如下命令订阅MQTT主题。

Target# ./mqtt_client -h broker-cn.emqx.io -p 1883 -M subscribe -t test/data

wKgZPGhcrWiAO5kjAAAPwcVJckw557.png图 8

在上位机执行如下命令发布消息至MQTT服务器。

Host# mosquitto_pub -h broker-cn.emqx.io -p 1883 -t test/data -m www.tronlong.com

wKgZPGhcrXKAfHWcAAAzFLrGZoY015.png图 9 上位机发布

消息发布成功后,评估板将从MQTT服务器接收到对应消息。

wKgZPGhcrXuAAGqLAAATvUo3rNg417.png图 10 评估板订阅

案例编译

将案例src文件夹拷贝至Ubuntu工作目录下,请先确保已参考《Linux系统使用手册安装》完成解压并编译LinuxSDK步骤。在案例src目录执行如下命令,配置交叉编译工具链环境变量,进行案例编译。编译完成后,将在当前目录下生成可执行文件。

Host# source /home/tronlong/RK3576/rk3576_linux6.1_release/buildroot/output/rockchip_rk3576/host/environment-setup

Host# make

wKgZO2hcrYWAOZIbAAG4jonM0Rg614.png图 11

关键代码

创建Mosquitto实例。

wKgZO2hcrY-AXRBSAAAeeCl6dzE152.png图 12

设置回调函数。

wKgZO2hcrZeAOwgeAABL0sLlPQ0684.png图 13

连接MQTT服务器。

wKgZO2hcrZ-AJ2jjAAAoMVmX_Mo029.png图 14

发布消息。

wKgZO2hcraaAReIPAACI-oo0k1Q378.png图 15

订阅主题。

wKgZO2hcra6AQ9ieAABSmxsBgv4979.png图 16

由于篇幅过长等原因,部分内容均不逐一展示,如需获取完整版详细资料,请关注创龙科技微信公众号或官网,或者评论区留言,感谢您的支持!

审核编辑 黄宇

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

    关注

    25

    文章

    6140

    浏览量

    113615
  • 瑞芯微
    +关注

    关注

    27

    文章

    702

    浏览量

    53527
  • MQTT
    +关注

    关注

    5

    文章

    724

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【作品合集】米尔RK3576开发板测评

    米尔RK3576开发板测评作品合集 产品介绍: RK3576一款面向AI市场推出的高性
    发表于 09-11 10:19

    RK3576RK3576S有什么区别,性能参数配置与型号差异解析

    、物联网等商用AIoT领域。(RK3576RK3576S芯片框图)触觉智能作为专业的
    的头像 发表于 08-14 23:57 1792次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b>与<b class='flag-5'>RK3576</b>S有什么区别,性能参数配置与型号差异解析

    如何在RK3576开发板端编译OpenCV并搭建应用

    本文将介绍基于米尔电子MYD-LR3576开发板(米尔基于RK3576
    的头像 发表于 08-08 08:04 3315次阅读
    如何在<b class='flag-5'>RK3576</b><b class='flag-5'>开发板</b>上<b class='flag-5'>板</b>端编译OpenCV并搭建应用

    全国产 RK3576 ARM 2.2GHz 工业开发板—Linux应用开发手册

    创龙科技 TL3576-EVM 是一款基于 RK3576J/RK3576高性能处理器设计的
    的头像 发表于 06-25 16:44 657次阅读
    <b class='flag-5'>全国产</b>!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK3576</b> <b class='flag-5'>ARM</b> <b class='flag-5'>八</b><b class='flag-5'>核</b> <b class='flag-5'>2.2GHz</b> <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—Linux应用<b class='flag-5'>开发</b>手册

    全国产 RK3576 ARM 2.2GHz 工业开发板—Linux开发环境搭建

    创龙科技 TL3576-EVM 是一款基于 RK3576J/RK3576高性能处理器设计的
    的头像 发表于 06-25 10:17 498次阅读
    <b class='flag-5'>全国产</b>!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK3576</b> <b class='flag-5'>ARM</b> <b class='flag-5'>八</b><b class='flag-5'>核</b> <b class='flag-5'>2.2GHz</b> <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—Linux<b class='flag-5'>开发</b>环境搭建

    全国产 RK3576 ARM 2.2GHz 工业开发板—Linux系统使用手册

    创龙科技 TL3576-EVM 是一款基于 RK3576J/RK3576高性能处理器设计的
    的头像 发表于 06-24 10:50 625次阅读
    <b class='flag-5'>全国产</b>!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK3576</b> <b class='flag-5'>ARM</b> <b class='flag-5'>八</b><b class='flag-5'>核</b> <b class='flag-5'>2.2GHz</b> <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—Linux系统使用手册

    全国产 RK3576 ARM 2.2GHz 工业开发板—LVGL应用开发案例

    本文主要基于评估演示LVGL应用开发案例,适用开发环境如下。创龙科技 TL3576-EVM 是一款基于
    的头像 发表于 06-23 15:17 586次阅读
    <b class='flag-5'>全国产</b>!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK3576</b> <b class='flag-5'>ARM</b> <b class='flag-5'>八</b><b class='flag-5'>核</b> <b class='flag-5'>2.2GHz</b> <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—LVGL应用<b class='flag-5'>开发</b>案例

    基于RK3576国产ARM2.2GHz A72 工业评估——Docker容器部署方法说明

    创龙科技TL3576-MiniEVM是一款基于RK3576J/RK3576高性能处理器设计
    的头像 发表于 04-18 10:18 927次阅读
    基于<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b><b class='flag-5'>国产</b><b class='flag-5'>ARM</b><b class='flag-5'>八</b><b class='flag-5'>核</b><b class='flag-5'>2.2GHz</b> A72 <b class='flag-5'>工业</b>评估<b class='flag-5'>板</b>——Docker容器部署方法说明

    RK3576,82.2GHz+6T算力NPU工业评估规格书

    创龙科技TL3576-EVM-S是一款基于RK3576J/RK3576高性能处理器设计的4
    的头像 发表于 04-10 15:03 3410次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b>,8<b class='flag-5'>核</b><b class='flag-5'>2.2GHz</b>+6T算力NPU<b class='flag-5'>工业</b>评估<b class='flag-5'>板</b>规格书

    国产3576-Mini(82.2GHz工业评估规格书

    创龙科技TL3576-MiniEVM是一款基于RK3576J/RK3576高性能处理器设计
    的头像 发表于 04-09 17:54 905次阅读
    <b class='flag-5'>国产</b>!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>3576</b>-Mini(8<b class='flag-5'>核</b><b class='flag-5'>2.2GHz</b>)<b class='flag-5'>工业</b>评估<b class='flag-5'>板</b>规格书

    RK3576,82.2GHz+6T算力NPU工业核心说明书

    创龙科技SOM-TL3576-S是一款基于RK3576J/RK3576高性能处理器设计的4
    的头像 发表于 04-09 09:46 4000次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b>,8<b class='flag-5'>核</b><b class='flag-5'>2.2GHz</b>+6T算力NPU<b class='flag-5'>工业</b>核心<b class='flag-5'>板</b>说明书

    RK3576S工业评估规格书

    评估简介创龙科技TL3576-EVM-S是一款基于RK3576J/
    发表于 03-19 17:14 0次下载

    国产开发板的端侧AI测评-基于米尔RK3576

    国产自主可控必须搞起来。那与非网本期内容就跟自主可控强关联——评测一款基于国产SoC的板卡,由米尔电子推出的
    发表于 02-14 16:29

    迅为电子推出iTOP-RK3576开发板

    随着人工智能、物联网和边缘计算的飞速发展,迅为公司重磅推出iTOP-RK3576开发板。这款开发板搭载
    的头像 发表于 01-15 17:22 1264次阅读

    【米尔RK3576开发板评测】+项目名称【米尔RK3576开发板评测】一个视频和你共同认识一下米尔RK3576开发板

    收到米尔RK3576开发板后,也对米尔RK3576开发板进行了了解,米尔这款开发板真的很不错,下面是官方的一些参数介绍: MYC-LR
    发表于 12-18 20:50