查看: 366|回复: 0

[评测分享] 【米尔-MYD-LR3568-GK开发板--试用评测】15——MQTT收发测试

[复制链接]
  • TA的每日心情
    慵懒
    昨天 22:42
  • 签到天数: 196 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2024-11-23 22:32:23 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 stm1024 于 2024-11-24 00:02 编辑

    MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅模式的消息传输协议,被设计用于低带宽和不稳定的网络环境中。在Linux环境下,有许多开源的MQTT库可以用来帮助开发者实现客户端或者服务器端的应用程序。
    在之前的树莓派评测时,也做过该协议的演示和测试,见链接:https://www.eefocus.com/forum/thread-230328-1-1.html

    1. 先测试一下安装和消息订阅发布
    过程都是一样的,给出截图。
    11.jpg

    22.jpg

    33.jpg

    44.jpg
    以上测试验证在LR3568上,和其他的Linux环境都是一样能够正常订阅和发布MQTT消息的,这就验证了程序正常安装,以及配置的正确性和功能的完好性。

    2. 基于库的MQTT程序开发

    如果只是为了演示一下MQTT的消息订阅发布,也太浅尝辄止了,这个协议通常不是人工手动发送的,而是通过程序完成,这种情况下就需要编写程序了。
    其实mosquitto中包含了类库,需要做的就是对其进行编译:
    中间会碰到问题,搞了两次分别报错如下:
    55.jpg

    77.jpg
    需要安装库:
    1. #安装opensslconf.h
    2. sudo apt-get install libssl-dev
    3. #安装libcjson libcjson-dev
    4. sudo apt-get install libcjson1 libcjson-dev
    复制代码
    分别安装这两个包:
    66.jpg

    88.jpg

    然后就可以make,以及make install了,如下所示是安装成功后的截图:
    xx.jpg

    在mosquitto-2.0.20\examples有一个publish和suscribe的文件夹,里面各包含1个basic-1.c的源码,把文件名称修改为basic1.c,方便编译,编译的makefile是:
    1. include ../../config.mk
    2. basic1 : basic1.o
    3.         ${CROSS_COMPILE}${CC} $^ -o $@ ../../lib/libmosquitto.so.${SOVERSION}
    复制代码

    最后可执行程序运行:
    xx1.jpg
    发布者
    xx2.jpg
    订阅者
    以及使用Windows客户端的订阅者:
    666.jpg

    我们只需要稍微研究和修改一下源码就可以编写我们自己的程序了。




    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    手机版|小黑屋|与非网

    GMT+8, 2025-1-11 18:18 , Processed in 0.110584 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.