在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

MQTT測試程序上機實驗

瑞薩MCU小百科 ? 來源:瑞薩MCU小百科 ? 2025-02-11 13:35 ? 次閱讀

13.6.5 MQTT測試程序上機實驗

把mqtt_test、paho.mqtt.c.tar.bz2放到Ubuntu上同一個目錄下。

1.編譯paho庫

在Ubuntu下執行如下命令:

左右滑動查看完整內容

$ tar xjf paho.mqtt.c.tar.bz2
$ cd paho.mqtt.c

修改CMakeLists.txt,在最前面增加如下內容:

左右滑動查看完整內容

set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)
SET(CMAKE_C_COMPILER aarch64-poky-linux-gcc)
SET(CMAKE_CXX_COMPILER aarch64-poky-linux-g++)
set(CMAKE_SYSROOT /opt/remi-sdk/sysroots/aarch64-poky-linux)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)

然后執行如下命令編譯:

左右滑動查看完整內容

$ source /opt/remi-sdk/environment-setup-aarch64-poky-linux 
$ mkdir build
$ cd build
$ cmake ../ -DCMAKE_INSTALL_PREFIX=output
$ make
$ make install

如果一切順利,會在build目錄下生成一個output目錄(有些錯誤信息提示權限問題,無關緊要),里面有很多庫文件。內容如下:

$ ls output/
bin include lib share

把頭文件、庫文件復制到工具鏈里:

左右滑動查看完整內容

$ sudo cp -rf output/include/* /opt/remi-sdk/sysroots/aarch64-poky-linux/usr/include/
$ sudo cp -rfd output/lib/* /opt/remi-sdk/sysroots/aarch64-poky-linux/usr/lib64/

把output目錄壓縮,上傳到開發板:

左右滑動查看完整內容

$ tar cjf output.tar.bz2 output/
$ scp output.tar.bz2 root@192.168.5.9:/mnt

在開發板里解壓output.tar.bz2文件,復制庫文件到“/usr/lib64”,命令如下:

左右滑動查看完整內容

# cd /mnt
# tar xjf output.tar.bz2
# cd output/lib
# cp -d libpaho* /usr/lib64/

2.編譯測試程序

在Ubuntu上執行如下命令:

左右滑動查看完整內容

$ source /opt/remi-sdk/environment-setup-aarch64-poky-linux
$ cd mqtt_test
$ make
$ scp mqtt_test root@192.168.5.9:/mnt

3.測試

按照《13.6.3 PC MQTT工具使用》,先啟動MQTT服務軟件,然后再啟動MQTTX,如下配置、連接:

e1d4655a-e82d-11ef-9310-92fbcf53809c.png

在MQTTX里訂閱主題為“/iot/up”的消息,發送主題為“/iot/down”的消息,如下圖所示:

e1e53c86-e82d-11ef-9310-92fbcf53809c.png

最后,在開發板上執行mqtt_test程序,如下:

e1f8bbe4-e82d-11ef-9310-92fbcf53809c.png

13.7 MQTT程序開發

源碼為:

e20e0fa8-e82d-11ef-9310-92fbcf53809c.png

13.7.1 程序流程

程序主要有2大功能:

①根據配置文件,周期性地讀“點”、發布消息

②訂閱消息,根據消息寫“點”

這些功能可以細分如下:

①通過RPC獲得MQTT信息

②通過RPC獲得“點”的信息

③連接MQTT Broker

④訂閱消息

⑤周期性地讀“點”,發布消息

在程序運行過程中,用戶可能使用前臺程序修改了配置,比如修改了MQTT Broker的信息、增加、刪除的點,并且程序運行過程中可能發生錯誤。這就需要重新運行程序:重新運行上述5個細分步驟。

本程序使用狀態機來實現,有如下狀態:

e230f90a-e82d-11ef-9310-92fbcf53809c.png

在main函數中,根據當前狀態進行對應處理。

e246fd40-e82d-11ef-9310-92fbcf53809c.png

13.7.2 監測配置文件

前臺程序會導致配置文件被修改,需要監測配置文件是否發生了變化。使用的函數在cfg.c里,它們的代碼在《13.4.2 配置文件的操作》講解過。

main.c的main函數里,調用的代碼如下:

e2777812-e82d-11ef-9310-92fbcf53809c.png

13.7.3 初始化RPC連接

需要使用RPC調用得到MQTT信息、得到點的信息。所以第1個狀態代碼如下:

e2ba4c28-e82d-11ef-9310-92fbcf53809c.png

13.7.4 獲取MQTT信息

要進行MQTT連接,需要獲得MQTT信息,代碼如下:

e2da26e2-e82d-11ef-9310-92fbcf53809c.png

13.7.5 獲取點的信息

后續要讀點、上報點的信息,所以需要使用RPC調用獲得、記錄所有點的信息,代碼如下:

e305dd46-e82d-11ef-9310-92fbcf53809c.png

13.7.6 連接MQTT

代碼如下:

e32d4b10-e82d-11ef-9310-92fbcf53809c.png

13.7.7 訂閱消息

代碼如下:

e3525964-e82d-11ef-9310-92fbcf53809c.png

13.7.8 發布消息

發布消息時,如果沒有錯誤,則已知保存在本狀態:循環發布消息。代碼如下:

e373673a-e82d-11ef-9310-92fbcf53809c.png

13.7.9 訂閱消息的處理

在前面設置了MQTT回調函數,當接收到訂閱的消息時,使用如下函數處理:

①解析接收到的信息,根據它找到“點”

②寫點

e3a3247a-e82d-11ef-9310-92fbcf53809c.png

13.7.10 錯誤處理

如果發生的錯誤累計達到10次,或則配置文件發生了變化,則重新處理:

e3d06b4c-e82d-11ef-9310-92fbcf53809c.png

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

    關注

    5

    文章

    712

    瀏覽量

    22361
  • Ubuntu
    +關注

    關注

    5

    文章

    575

    瀏覽量

    30449
  • 測試程序
    +關注

    關注

    1

    文章

    71

    瀏覽量

    23054
  • MQTT
    +關注

    關注

    5

    文章

    660

    瀏覽量

    23140

原文標題:MQTT測試程序上機實驗及程序開發——RZ MPU工業控制教程連載(55)

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏

    評論

    相關推薦

    匯編語言上機實驗指導書

    匯編語言上機實驗指導書一、概述上機實驗總學時為18學時,其中綜合性和設計性實驗至少為8學時。實驗
    發表于 03-23 16:06 ?21次下載

    DSP的實驗測試程序(匯編)

    DSP的實驗測試程序(匯編)
    發表于 02-11 10:46 ?64次下載
    DSP的<b class='flag-5'>實驗</b><b class='flag-5'>測試</b><b class='flag-5'>程序</b>(匯編)

    匯編語言程序結構

    實 驗   匯編語言程序結構 一、實驗目的 1.掌握匯編語言程序上機過程。    2.掌握匯編語言結構。
    發表于 09-28 23:11 ?2936次閱讀

    Labview之上機實驗

    Labview之上機實驗二,很好的Labview資料,快來下載學習吧。
    發表于 04-19 09:54 ?0次下載

    Labview之上機實驗之三

    Labview之上機實驗之三,很好的Labview資料,快來下載學習吧。
    發表于 04-19 10:23 ?0次下載

    微信小程序上線三天 看網友們現在怎么樣了

    程序上線的第一天朋友圈炸了; 小程序上線的第二天無人問津了; 小程序上線的第三天網友們到處詢問如何刪除小程序。..。
    發表于 01-11 14:13 ?2186次閱讀
    微信小<b class='flag-5'>程序上</b>線三天 看網友們現在怎么樣了

    哈工大四系FPGA上機實驗編程部分

    哈工大四系FPGA上機實驗編程部分
    發表于 10-20 15:52 ?16次下載

    C++程序設計上機指導.pdf

    C++程序設計上機指導
    發表于 05-02 10:20 ?28次下載

    C程序上機教程之課程標準的詳細資料免費下載

    C程序上機一門對學生進行程序設計訓練的實踐性課程,旨在鍛煉學生的實際操作能力,培養良好的編程思想和程序調試基本技能,提高學生的提高計算機應用能力。
    發表于 11-20 08:00 ?9次下載
    C<b class='flag-5'>程序上機</b>教程之課程標準的詳細資料免費下載

    MATLAB上機作業的程序資料免費下載

    本文檔的主要內容詳細介紹的是MATLAB上機作業的程序資料免費下載。
    發表于 01-11 08:00 ?0次下載
    MATLAB<b class='flag-5'>上機</b>作業的<b class='flag-5'>程序</b>資料免費下載

    cadence-Pspice-上機實驗-電子電路的直流分析

    cadence-Pspice-上機實驗-電子電路的直流分析(現代電源技術期末試題)-該文檔為cadence-Pspice-上機實驗-電子電路的直流分析講解文檔,是一份不錯的參考資料,感
    發表于 09-24 16:36 ?20次下載
    cadence-Pspice-<b class='flag-5'>上機</b><b class='flag-5'>實驗</b>-電子電路的直流分析

    手指在應用程序上機器人

    電子發燒友網站提供《手指在應用程序上機器人.zip》資料免費下載
    發表于 11-16 10:04 ?0次下載
    手指在應用<b class='flag-5'>程序上機</b>器人

    電工知識—S7-1500程序上

    把CPU中的程序上傳到計算機中是很有工程應用價值的操作,上傳的前提是用戶必須擁有讀程序的權限,上傳程序的步驟如下。
    的頭像 發表于 03-07 10:04 ?1.1w次閱讀

    USB Gadget zero應用上機實驗

    2. 上機實驗 實驗步驟: 先安裝 g_zero 驅動程序:在開發板上執行 modprobe g_zero 然后連接 OTG 線到 PC 在 Ubuntu 中識別出設備 執行
    的頭像 發表于 07-13 11:15 ?878次閱讀

    USB鼠標驅動程序上機實驗

    上機實驗 需要重新配置內核,去掉內核自帶的驅動程序。在內核目錄下執行"make menuconfig": Device Drivers --- > HID support
    的頭像 發表于 07-17 17:35 ?835次閱讀

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品
    主站蜘蛛池模板: 激情狠狠干 | 国产精品久久久久久免费播放 | 欧美视频区 | 一区二区三区伦理高清 | 欧美日韩一区二区三区视频在线观看 | 亚洲日韩色图 | 性夜黄 a 爽免费看 性夜黄a爽影免费看 | 美女扒开尿口让男人30视频 | 99久在线 | 色多多黄| 婷婷综合网站 | 四虎在线最新永久免费 | 伊人久久大香线蕉综合影 | 欧美色综合久久 | 朱元璋传奇1998王耿豪版 | 日本污污视频 | 国产精品国产三级国快看 | 久久久久久久国产 | 美剧免费在线观看 | 国产91色综合久久免费分享 | 深爱五月婷婷 | 天堂在线www天堂中文在线 | 精品久草 | 5151四虎永久在线精品免费 | 欧美xxxx日本 | 午夜毛片在线观看 | 日本一区二区视频在线观看 | 色综合天天综合网看在线影院 | 最新亚洲一区二区三区四区 | 亚洲啪啪免费视频 | 扒开末成年粉嫩的小缝强文 | 在线亚洲一区 | 天天综合色天天综合色sb | 精品国产一区二区三区成人 | 久久影视免费体验区午夜啪啪 | 特级毛片aaaa级毛片免费 | 亚洲视频在线视频 | 亚洲高清日韩精品第一区 | 久久久久久久久久免观看 | 伊人网综合在线视频 | 成人夜夜 |