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

基于瑞芯微RK3562 的四核 AR M Cortex-A53 + 單核 ARM Cortex-M0——MQTT通信方案

發(fā)布時(shí)間:2025-4-15 10:14    發(fā)布者:Tronlong--
前  言
本文主要介紹創(chuàng)龍科技TL3562-MiniEVM評(píng)估板基于MQTT通信協(xié)議的開(kāi)發(fā)案例,適用開(kāi)發(fā)環(huán)境如下。
Windows開(kāi)發(fā)環(huán)境:Windows 7 64bit、Windows 10 64bit
Linux開(kāi)發(fā)環(huán)境:VMware16.2.5、Ubuntu20.04.6 64bit
U-Boot:U-Boot-2017.09
Kernel:Linux-5.10.209
LinuxSDK:rk3562-ubuntu20.04-sdk-[版本號(hào)](基于rk3562_linux_release_v1.2.0)
我司提供的MQTT通信協(xié)議開(kāi)發(fā)案例主要包括mqtt_client和mqtt_sinewave_pub,位于產(chǎn)品資料“4-軟件資料Demomqtt-demos”目錄下。

評(píng)估板簡(jiǎn)介
創(chuàng)龍科技 TL3562-MiniEVM 是一款基于瑞芯微 RK3562J/RK3562 處理器設(shè)計(jì)的四核 AR M Cortex-A53 + 單核 ARM Cortex-M0 國(guó)產(chǎn)工業(yè)評(píng)估板,主頻高達(dá) 2.0GHz。評(píng)估板由核心板和評(píng)估底板組成,核心板 CPU、ROM、RAM、電源、晶振等所有元器件均采用國(guó)產(chǎn)工業(yè)級(jí)方案,國(guó)產(chǎn)化率 100%,評(píng)估底板大部分元器件亦采用國(guó)產(chǎn)工業(yè)級(jí)方案,國(guó)產(chǎn)化率約 99%(按元器件數(shù)量占比,數(shù)據(jù)僅供參考)。核心板經(jīng)過(guò)專業(yè)的 PCB Layout 和高低溫測(cè)試驗(yàn)證,支持選配屏蔽罩,質(zhì)量穩(wěn)定可靠,可滿足各種工業(yè)應(yīng)用環(huán)境要求。
評(píng)估板引出 2 路 Ethernet、2 路 USB、Micro SD、UART 等通信接口,同時(shí)引出 2 路 M IPI CSI、LVDS LCD、MIPI LCD、HDMI OUT、MIC IN、SPK OUT、HP OUT 多媒體接口,支
持 1080P@60fps H.264 視頻編碼、4K@30fps H.265 視頻解碼。
評(píng)估板體積小巧,尺寸為 85x130mm,可作為卡片式電腦使用,且便于產(chǎn)品集成,方便用戶快速進(jìn)行產(chǎn)品方案評(píng)估與技術(shù)預(yù)研。
               
評(píng)估板硬件資源圖解 1         


評(píng)估板硬件資源圖解 2


MQTT通信協(xié)議簡(jiǎn)介
概述
MQTT(Message Queuing Telemetry Transport,消息隊(duì)列遙測(cè)傳輸協(xié)議),是一種基于發(fā)布/訂閱(Publish/Subscribe)模式的“輕量級(jí)”通訊協(xié)議,該協(xié)議構(gòu)建于TCP/IP協(xié)議上,由IBM在1999年發(fā)布。MQTT最大優(yōu)點(diǎn)在于,可以極少的代碼和有限的帶寬,為連接遠(yuǎn)程設(shè)備提供實(shí)時(shí)可靠的消息服務(wù)。
MQTT是輕量、簡(jiǎn)單、開(kāi)放和易于實(shí)現(xiàn)的,同時(shí)作為一種低開(kāi)銷、低帶寬占用的即時(shí)通訊協(xié)議,使其在物聯(lián)網(wǎng)、小型設(shè)備、移動(dòng)應(yīng)用等方面有較廣泛的應(yīng)用。



圖 1

MQTT具有如下特點(diǎn):
輕量可靠:MQTT的報(bào)文格式精簡(jiǎn)、緊湊,可在嚴(yán)重受限的硬件設(shè)備和低帶寬、高延遲的網(wǎng)絡(luò)上實(shí)現(xiàn)穩(wěn)定傳輸。
發(fā)布/訂閱模式(Publish/Subscribe):發(fā)布/訂閱模式的優(yōu)點(diǎn)在于發(fā)布者與訂閱者的解耦,實(shí)現(xiàn)異步協(xié)議。即訂閱者與發(fā)布者無(wú)需建立直接連接,亦無(wú)需同時(shí)在線。
為物聯(lián)網(wǎng)而生:提供心跳機(jī)制、遺囑消息、QoS質(zhì)量等級(jí) + 離線消息、主題和安全管理等全面的物聯(lián)網(wǎng)應(yīng)用特性。
生態(tài)更完善:覆蓋范圍廣,已成為眾多云廠商物聯(lián)網(wǎng)平臺(tái)的標(biāo)準(zhǔn)通信協(xié)議。

應(yīng)用場(chǎng)景
MQTT作為一種低開(kāi)銷,低帶寬占用的即時(shí)通訊協(xié)議,可以極少的代碼和帶寬為聯(lián)網(wǎng)設(shè)備提供實(shí)時(shí)可靠的消息服務(wù),適用于硬件資源有限的設(shè)備及帶寬有限的網(wǎng)絡(luò)環(huán)境。常見(jiàn)的應(yīng)用場(chǎng)景如下:
物聯(lián)網(wǎng)M2M通信,物聯(lián)網(wǎng)大數(shù)據(jù)采集。
移動(dòng)即時(shí)消息及消息推送。
智能硬件、智能家居、智能電器。
車聯(lián)網(wǎng)通信,電動(dòng)車站樁采集。
智慧城市、遠(yuǎn)程醫(yī)療、遠(yuǎn)程教育。
電力能源、石油能源。

Mosquitto工具安裝
Mosquitto是一款開(kāi)源的MQTT消息代理(服務(wù)器)軟件,提供輕量級(jí)的、支持可發(fā)布/可訂閱的的消息推送模式。我司提供的評(píng)估板文件系統(tǒng)已支持Mosquitto工具,本文mqtt_client案例采用Mosquitto工具演示MQTT通信協(xié)議的通信功能。由于上位機(jī)Ubuntu系統(tǒng)作為通信對(duì)象,因此需在Ubuntu終端執(zhí)行如下命令安裝Mosquitto工具。
Host#sudo apt-get install mosquitto-clients

圖 2

mqtt_client案例
案例說(shuō)明
案例功能:使用libmosquitto的API與MQTT代理服務(wù)器通信。基于MQTT通信協(xié)議,實(shí)現(xiàn)發(fā)布和訂閱消息功能。
程序流程圖如下圖所示。

圖 3


案例測(cè)試
本案例使用公網(wǎng)MQTT HiveMQ服務(wù)器與上位機(jī)Ubuntu Mosquitto工具通信。請(qǐng)通過(guò)網(wǎng)線將評(píng)估板千兆網(wǎng)口ETH0 RGMII和上位機(jī)連接至公網(wǎng),確保可正常訪問(wèn)互聯(lián)網(wǎng)。
下表提供了可用的在線公共MQTT服務(wù)器,可根據(jù)需要自行切換。
表 1

服務(wù)器名稱Broker地址TCP端口WebSocket
HiveMQbroker.hivemq.com18838000
Mosquittotest.mosquitto.org188380
Eclipsemqtt.eclipseprojects.io188380/443
EMQ X(國(guó)內(nèi))broker-cn.emqx.io18838083/8084

評(píng)估板啟動(dòng),將案例bin目錄下mqtt_client可執(zhí)行文件拷貝至評(píng)估板文件系統(tǒng)的任意目錄下,執(zhí)行如下命令查看程序參數(shù)說(shuō)明。
Target#./mqtt_client --help

圖 4


評(píng)估板發(fā)布/上位機(jī)訂閱
在上位機(jī)執(zhí)行如下命令,使用mosquitto_sub工具訂閱MQTT主題。
Host#mosquitto_sub -h broker.hivemq.com -p 1883 -t test/data
參數(shù)解析:
-h:指定MQTT服務(wù)器;
-p:指定MQTT服務(wù)器TCP端口;
-t:定義MQTT主題,可自定義命名。

圖 5

在評(píng)估板文件系統(tǒng)執(zhí)行如下命令發(fā)布消息至MQTT服務(wù)器。
Target#./mqtt_client -h broker.hivemq.com -p 1883 -M publish -t test/data -m 'www.tronlong.com'
參數(shù)解析:
-h:MQTT服務(wù)器
-p:MQTT服務(wù)器端口
-M:模式,publish為發(fā)布,subscribe為訂閱
-t:MQTT主題,可隨便命名
-m:發(fā)布的MQTT消息

圖 6 評(píng)估板發(fā)布

消息發(fā)布成功后,上位機(jī)將從MQTT服務(wù)器接收到對(duì)應(yīng)的消息。

圖 7 上位機(jī)訂閱


評(píng)估板訂閱/上位機(jī)發(fā)布
在評(píng)估板文件系統(tǒng)執(zhí)行如下命令訂閱MQTT主題。
Target#./mqtt_client -h broker.hivemq.com -p 1883 -M subscribe -t test/data

圖 8

在上位機(jī)執(zhí)行如下命令發(fā)布消息至MQTT服務(wù)器。
Host#mosquitto_pub -h broker.hivemq.com -p 1883 -t test/data -m www.tronlong.com

圖 9 上位機(jī)發(fā)布

消息發(fā)布成功后,評(píng)估板將從MQTT服務(wù)器接收到對(duì)應(yīng)消息。

圖 10 評(píng)估板訂閱


案例編譯
將案例src文件夾拷貝至Ubuntu工作目錄下,請(qǐng)先確保已參考《Ubuntu系統(tǒng)使用手冊(cè)》文檔安裝LinuxSDK,在案例src目錄執(zhí)行如下命令修改Makefile文件。
Host#vim Makefile

圖 11

修改內(nèi)容如下:
SDK_PATH = /home/tronlong/RK3562/Ubuntu/rk3562-ubuntu20.04-sdk-v1.0 //修改為L(zhǎng)inuxSDK源碼路徑

圖 12

執(zhí)行如下命令,配置交叉編譯工具鏈環(huán)境變量,進(jìn)行案例編譯。編譯完成后,將在當(dāng)前目錄下生成可執(zhí)行文件。
Host#source /home/tronlong/RK3562/Ubuntu/rk3562-ubuntu20.04-sdk-v1.0/environment
Host#make

圖 13


關(guān)鍵代碼
創(chuàng)建Mosquitto實(shí)例

圖 14

設(shè)置回調(diào)函數(shù)

圖 15

連接MQTT服務(wù)器

圖 16

發(fā)布消息

圖 17

訂閱主題

圖 18


mqtt_sinewave_pub案例
案例說(shuō)明
案例功能:使用libmosquitto的API與MQTT代理服務(wù)器通信。評(píng)估板生成正弦波數(shù)據(jù),每秒發(fā)送512個(gè)采樣點(diǎn)的數(shù)據(jù)至MQTT服務(wù)器;上位機(jī)通過(guò)Web頁(yè)面從MQTT服務(wù)器接收到數(shù)據(jù)后,將會(huì)繪制波形。
程序流程圖如下圖所示。

圖 19

案例測(cè)試
本案例使用公網(wǎng)MQTT HiveMQ服務(wù)器與上位機(jī)Ubuntu Web程序通信。請(qǐng)通過(guò)網(wǎng)線將評(píng)估板千兆網(wǎng)口ETH0 RGMII和上位機(jī)連接至公網(wǎng),確保可正常訪問(wèn)互聯(lián)網(wǎng)。
評(píng)估板啟動(dòng),將案例bin目錄下mqtt_sinewave_pub可執(zhí)行文件拷貝至評(píng)估板文件系統(tǒng)的任意目錄下,執(zhí)行如下命令查看程序參數(shù)說(shuō)明。
Target#./mqtt_sinewave_pub --help

圖 20

執(zhí)行如下命令運(yùn)行程序,連接MQTT服務(wù)器,并發(fā)送正弦波數(shù)據(jù)至MQTT服務(wù)器。
Target#./mqtt_sinewave_pub -h broker.hivemq.com -p 1883

圖 21

評(píng)估板程序運(yùn)行后,在上位機(jī)使用瀏覽器打開(kāi)"toolsweb_mqtt_sub"目錄下的index.html文件。在彈出的Web頁(yè)面(如下圖),依次輸入MQTT服務(wù)器:broker.hivemq.com,端口號(hào):8000,最后點(diǎn)擊連接,Web頁(yè)面將會(huì)從MQTT服務(wù)器獲取正弦波數(shù)據(jù)并進(jìn)行波形繪制。
備注:ARM端MQTT通信協(xié)議基于TCP協(xié)議,Web端MQTT通信協(xié)議基于WebSocket協(xié)議,因此使用的端口號(hào)不同。

圖 22


圖 22

案例編譯
將案例src文件夾拷貝至Ubuntu工作目錄下,請(qǐng)先確保已參考《Ubuntu系統(tǒng)使用手冊(cè)》文檔安裝LinuxSDK,進(jìn)入案例src目錄執(zhí)行如下命令修改Makefile文件。
Host#vim Makefile

圖 24

修改內(nèi)容如下:
SDK_PATH = /home/tronlong/RK3562/Ubuntu/rk3562-ubuntu20.04-sdk-v1.0 //修改為L(zhǎng)inuxSDK源碼路徑

圖 25

執(zhí)行如下命令配置交叉編譯工具鏈環(huán)境變量。編譯完成后,將在當(dāng)前目錄下生成可執(zhí)行文件。
Host#source /home/tronlong/RK3562/Ubuntu/rk3562-ubuntu20.04-sdk-v1.0/environment
Host#make

圖 26

關(guān)鍵代碼

創(chuàng)建Mosquitto實(shí)例

圖 27

設(shè)置回調(diào)函數(shù)

圖 28

連接MQTT服務(wù)器

圖 29

發(fā)送數(shù)據(jù)

圖 30

想了解更多資料,可前往創(chuàng)龍科技官網(wǎng)或微信公眾號(hào)。

本文地址:http://www.qingdxww.cn/thread-885710-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 安靜高效的電機(jī)控制——這才是正確的方向!
  • 5分鐘詳解定時(shí)器/計(jì)數(shù)器E和波形擴(kuò)展!
  • PIC18-Q71系列MCU概述
  • 無(wú)線充電基礎(chǔ)知識(shí)及應(yīng)用培訓(xùn)教程3
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美手机看片 | 免费视频不卡一区二区三区 | 黄色网址视频在线播放 | 国外成人在线视频网站 | 欧美在线视频一区在线观看 | 在线精品亚洲欧洲第一页 | 国产吧在线视频 | 日韩欧美视频一区二区在线观看 | 99热麻豆 | 亚洲国产高清在线观看视频 | 国产三级大片 | 国产导航在线 | 妹子干综合 | 欧美另类亚洲 | 窝窝免费午夜视频一区二区 | 国产精品999视频 | 国产午夜精品理论片在线 | 成人亚洲欧美日韩在线 | 男人天堂亚洲 | 国产伦精品一区二区三区 | 国产欧美日韩不卡在线播放在线 | 天天操好逼 | 亚洲一区免费在线 | 午夜欧美性视频在线播放 | 成人综合色站 | 女老师1 | 成人国产精品一级毛片天堂 | 麻豆视传媒 | 青青青青草原国产免费 | 2021国产麻豆剧果冻传媒入 | 天天摸夜夜| 男人的天堂啪啪 | h日本动漫无删减在线观看免 | 亚洲天堂视频在线免费观看 | 日本乱妇 | 久久99精品久久久久久黑人 | 日韩福利在线视频 | 日韩在线观看免费完整版视频 | 99精彩免费观看 | 最新内地三级在线观看 | 欧美亚洲尤物久久精品 |