欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MQTT測(cè)試程序上機(jī)實(shí)驗(yàn)

瑞薩MCU小百科 ? 來(lái)源:瑞薩MCU小百科 ? 2025-02-11 13:35 ? 次閱讀

13.6.5 MQTT測(cè)試程序上機(jī)實(shí)驗(yàn)

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

1.編譯paho庫(kù)

在Ubuntu下執(zhí)行如下命令:

左右滑動(dòng)查看完整內(nèi)容

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

修改CMakeLists.txt,在最前面增加如下內(nèi)容:

左右滑動(dòng)查看完整內(nèi)容

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)

然后執(zhí)行如下命令編譯:

左右滑動(dòng)查看完整內(nèi)容

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

如果一切順利,會(huì)在build目錄下生成一個(gè)output目錄(有些錯(cuò)誤信息提示權(quán)限問(wèn)題,無(wú)關(guān)緊要),里面有很多庫(kù)文件。內(nèi)容如下:

$ ls output/
bin include lib share

把頭文件、庫(kù)文件復(fù)制到工具鏈里:

左右滑動(dòng)查看完整內(nèi)容

$ 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目錄壓縮,上傳到開發(fā)板:

左右滑動(dòng)查看完整內(nèi)容

$ tar cjf output.tar.bz2 output/
$ scp output.tar.bz2 [email protected]:/mnt

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

左右滑動(dòng)查看完整內(nèi)容

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

2.編譯測(cè)試程序

在Ubuntu上執(zhí)行如下命令:

左右滑動(dòng)查看完整內(nèi)容

$ source /opt/remi-sdk/environment-setup-aarch64-poky-linux
$ cd mqtt_test
$ make
$ scp mqtt_test [email protected]:/mnt

3.測(cè)試

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

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

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

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

最后,在開發(fā)板上執(zhí)行mqtt_test程序,如下:

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

13.7 MQTT程序開發(fā)

源碼為:

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

13.7.1 程序流程

程序主要有2大功能:

①根據(jù)配置文件,周期性地讀“點(diǎn)”、發(fā)布消息

②訂閱消息,根據(jù)消息寫“點(diǎn)”

這些功能可以細(xì)分如下:

①通過(guò)RPC獲得MQTT信息

②通過(guò)RPC獲得“點(diǎn)”的信息

③連接MQTT Broker

④訂閱消息

⑤周期性地讀“點(diǎn)”,發(fā)布消息

在程序運(yùn)行過(guò)程中,用戶可能使用前臺(tái)程序修改了配置,比如修改了MQTT Broker的信息、增加、刪除的點(diǎn),并且程序運(yùn)行過(guò)程中可能發(fā)生錯(cuò)誤。這就需要重新運(yùn)行程序:重新運(yùn)行上述5個(gè)細(xì)分步驟。

本程序使用狀態(tài)機(jī)來(lái)實(shí)現(xiàn),有如下?tīng)顟B(tài):

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

在main函數(shù)中,根據(jù)當(dāng)前狀態(tài)進(jìn)行對(duì)應(yīng)處理。

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

13.7.2 監(jiān)測(cè)配置文件

前臺(tái)程序會(huì)導(dǎo)致配置文件被修改,需要監(jiān)測(cè)配置文件是否發(fā)生了變化。使用的函數(shù)在cfg.c里,它們的代碼在《13.4.2 配置文件的操作》講解過(guò)。

main.c的main函數(shù)里,調(diào)用的代碼如下:

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

13.7.3 初始化RPC連接

需要使用RPC調(diào)用得到MQTT信息、得到點(diǎn)的信息。所以第1個(gè)狀態(tài)代碼如下:

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

13.7.4 獲取MQTT信息

要進(jìn)行MQTT連接,需要獲得MQTT信息,代碼如下:

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

13.7.5 獲取點(diǎn)的信息

后續(xù)要讀點(diǎn)、上報(bào)點(diǎn)的信息,所以需要使用RPC調(diào)用獲得、記錄所有點(diǎn)的信息,代碼如下:

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 發(fā)布消息

發(fā)布消息時(shí),如果沒(méi)有錯(cuò)誤,則已知保存在本狀態(tài):循環(huán)發(fā)布消息。代碼如下:

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

13.7.9 訂閱消息的處理

在前面設(shè)置了MQTT回調(diào)函數(shù),當(dāng)接收到訂閱的消息時(shí),使用如下函數(shù)處理:

①解析接收到的信息,根據(jù)它找到“點(diǎn)”

②寫點(diǎn)

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

13.7.10 錯(cuò)誤處理

如果發(fā)生的錯(cuò)誤累計(jì)達(dá)到10次,或則配置文件發(fā)生了變化,則重新處理:

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    698

    瀏覽量

    22127
  • Ubuntu
    +關(guān)注

    關(guān)注

    5

    文章

    567

    瀏覽量

    30065
  • 測(cè)試程序
    +關(guān)注

    關(guān)注

    1

    文章

    71

    瀏覽量

    22983
  • MQTT
    +關(guān)注

    關(guān)注

    5

    文章

    655

    瀏覽量

    22723

原文標(biāo)題:MQTT測(cè)試程序上機(jī)實(shí)驗(yàn)及程序開發(fā)——RZ MPU工業(yè)控制教程連載(55)

文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    匯編語(yǔ)言上機(jī)實(shí)驗(yàn)指導(dǎo)書

    匯編語(yǔ)言上機(jī)實(shí)驗(yàn)指導(dǎo)書一、概述上機(jī)實(shí)驗(yàn)總學(xué)時(shí)為18學(xué)時(shí),其中綜合性和設(shè)計(jì)性實(shí)驗(yàn)至少為8學(xué)時(shí)。實(shí)驗(yàn)
    發(fā)表于 03-23 16:06 ?21次下載

    DSP的實(shí)驗(yàn)測(cè)試程序(匯編)

    DSP的實(shí)驗(yàn)測(cè)試程序(匯編)
    發(fā)表于 02-11 10:46 ?64次下載
    DSP的<b class='flag-5'>實(shí)驗(yàn)</b><b class='flag-5'>測(cè)試</b><b class='flag-5'>程序</b>(匯編)

    匯編語(yǔ)言程序結(jié)構(gòu)

    實(shí) 驗(yàn)   匯編語(yǔ)言程序結(jié)構(gòu) 一、實(shí)驗(yàn)目的 1.掌握匯編語(yǔ)言程序上機(jī)過(guò)程。    2.掌握匯編語(yǔ)言結(jié)構(gòu)。
    發(fā)表于 09-28 23:11 ?2900次閱讀

    Labview之上機(jī)實(shí)驗(yàn)

    Labview之上機(jī)實(shí)驗(yàn)二,很好的Labview資料,快來(lái)下載學(xué)習(xí)吧。
    發(fā)表于 04-19 09:54 ?0次下載

    Labview之上機(jī)實(shí)驗(yàn)之三

    Labview之上機(jī)實(shí)驗(yàn)之三,很好的Labview資料,快來(lái)下載學(xué)習(xí)吧。
    發(fā)表于 04-19 10:23 ?0次下載

    微信小程序上線三天 看網(wǎng)友們現(xiàn)在怎么樣了

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

    哈工大四系FPGA上機(jī)實(shí)驗(yàn)編程部分

    哈工大四系FPGA上機(jī)實(shí)驗(yàn)編程部分
    發(fā)表于 10-20 15:52 ?16次下載

    C++程序設(shè)計(jì)上機(jī)指導(dǎo).pdf

    C++程序設(shè)計(jì)上機(jī)指導(dǎo)
    發(fā)表于 05-02 10:20 ?28次下載

    C程序上機(jī)教程之課程標(biāo)準(zhǔn)的詳細(xì)資料免費(fèi)下載

    C程序上機(jī)一門對(duì)學(xué)生進(jìn)行程序設(shè)計(jì)訓(xùn)練的實(shí)踐性課程,旨在鍛煉學(xué)生的實(shí)際操作能力,培養(yǎng)良好的編程思想和程序調(diào)試基本技能,提高學(xué)生的提高計(jì)算機(jī)應(yīng)用能力。
    發(fā)表于 11-20 08:00 ?9次下載
    C<b class='flag-5'>程序上機(jī)</b>教程之課程標(biāo)準(zhǔn)的詳細(xì)資料免費(fèi)下載

    MATLAB上機(jī)作業(yè)的程序資料免費(fèi)下載

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

    cadence-Pspice-上機(jī)實(shí)驗(yàn)-電子電路的直流分析

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

    手指在應(yīng)用程序上機(jī)器人

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

    電工知識(shí)—S7-1500程序上

    把CPU中的程序上傳到計(jì)算機(jī)中是很有工程應(yīng)用價(jià)值的操作,上傳的前提是用戶必須擁有讀程序的權(quán)限,上傳程序的步驟如下。
    的頭像 發(fā)表于 03-07 10:04 ?1.1w次閱讀

    USB Gadget zero應(yīng)用上機(jī)實(shí)驗(yàn)

    2. 上機(jī)實(shí)驗(yàn) 實(shí)驗(yàn)步驟: 先安裝 g_zero 驅(qū)動(dòng)程序:在開發(fā)板上執(zhí)行 modprobe g_zero 然后連接 OTG 線到 PC 在 Ubuntu 中識(shí)別出設(shè)備 執(zhí)行
    的頭像 發(fā)表于 07-13 11:15 ?775次閱讀

    USB鼠標(biāo)驅(qū)動(dòng)程序上機(jī)實(shí)驗(yàn)

    上機(jī)實(shí)驗(yàn) 需要重新配置內(nèi)核,去掉內(nèi)核自帶的驅(qū)動(dòng)程序。在內(nèi)核目錄下執(zhí)行"make menuconfig": Device Drivers --- > HID support
    的頭像 發(fā)表于 07-17 17:35 ?753次閱讀