本文来源电子发烧友社区,作者:黄炼榕, 帖子地址:https://bbs.elecfans.com/jishu_2021265_1_1.html
MQTT 全称为 Message Queuing Telemetry Transport(消息队列遥测传输)是一种基于发布/订阅范式的二进制“轻量级”消息协议,由IB公司发布。针对于网络受限和嵌入式设备而设计的一种数据传输协议。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
这里移植paho mqtt软件包
导入头文件
#include "lwip/ip_addr.h"
#include "lwip/netifapi.h"
#include "lwip/sockets.h"
修改函数transport_sendPacketBuffer
int transport_sendPacketBuffer(int sock, unsigned char* buf, int buflen){
int rc = 0;
rc = send(sock, buf, buflen, 0);
return rc;
}
修改close函数
int transport_close(int sock){
int rc;
rc = shutdown(sock, SHUT_WR);
rc = recv(sock, NULL, (size_t)0, 0);
rc = lwip_close(sock);
return rc;
}
mqtt主要文件mqtt.c文件内容附件所示。
MQTT 全称为 Message Queuing Telemetry Transport(消息队列遥测传输)是一种基于发布/订阅范式的二进制“轻量级”消息协议,由IB公司发布。针对于网络受限和嵌入式设备而设计的一种数据传输协议。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
这里移植paho mqtt软件包
导入头文件
#include "lwip/ip_addr.h"
#include "lwip/netifapi.h"
#include "lwip/sockets.h"
修改函数transport_sendPacketBuffer
int transport_sendPacketBuffer(int sock, unsigned char* buf, int buflen){
int rc = 0;
rc = send(sock, buf, buflen, 0);
return rc;
}
修改close函数
int transport_close(int sock){
int rc;
rc = shutdown(sock, SHUT_WR);
rc = recv(sock, NULL, (size_t)0, 0);
rc = lwip_close(sock);
return rc;
}
mqtt主要文件mqtt.c文件内容附件所示。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
wi-fi
+关注
关注
14文章
2081浏览量
124172 -
HarmonyOS
+关注
关注
79文章
1962浏览量
29936 -
HiSpark
+关注
关注
1文章
156浏览量
6889
发布评论请先 登录
相关推荐
Wi-Fi Halow占领海外安防监控新高地,弥补Wi-Fi与LPWAN不足
Wi-FiHalow是Wi-Fi联盟推出的专门面向物联网市场的标准。在传统Wi-Fi以传输速度快、大容量传输为特征持续获取市场时,重点满足物
PSoC6上的Wi-fi_mqtt_Client出现MQTT连接错误的原因?
我在使用 PSoC6 板上的 Wi-Fi_MQTT_Client 示例时遇到了一个问题。 Wi-Fi 连接成功了,但在尝试连接 MQTT 代理(test.mositto.org)时却出现了以下错误
发表于 07-04 07:25
DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册
电子发烧友网站提供《DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册.rar》资料免费下载
发表于 05-30 17:53
•1次下载
验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦
验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦 MM6108-EKH08开发套件专为验证物联网Wi-Fi HaLow用例而设计。该
Wi-Fi的诞生与发展
短距离无线通信技术有Wi-Fi、ZigBee、蓝牙以及Z-Wave,今天我们先揭开Wi-Fi的神秘面纱。Chrent短距离无线通信技术——Wi-Fi过去的20多年,Wi-Fi靠着仅有的
PSoC6上的Wi-fi_mqtt_Client出现MQTT连接错误怎么解决?
client.key, client.crt, 以及其他必需的配置。 Wi-Fi 连接成功,但在尝试 MULTICH_CONNECT_PCB MQTT 代理 (test.mosquitto.org) 时, 我遇到以下
发表于 03-04 06:37
Wi-Fi HaLow和传统Wi-Fi的区别
Wi-Fi HaLow和传统Wi-Fi的区别 Wi-Fi是一种无线网络技术,可以连接到互联网或局域网,为用户提供无线上网的便利。随着科技的发展和互联网的普及,Wi-Fi也在不断演进和
康普携手Wi-Fi联盟,RUCKUS Wi-Fi 7系列接入点成Wi-Fi
康普高级副总裁兼网络、智能蜂窝和安全解决方案总裁Bart Giordano对此表示: “我们非常荣幸能与Wi-Fi Alliance形成长期合作伙伴关系,将我们的RUCKUS Wi-Fi 7 接入点平台作为Wi-Fi CERT
PSoC6 Wi-Fi示例无法调试FreeRTOS任务级代码怎么解决?
你好,
我在 Ubuntu 18.04.6 中运行 MTB 3.1 GUI LTS 并为原型开发套件 (CY8CPROTO-062-4343W) 构建 PSoC6 示例。
在调试最新的 Wi-Fi
发表于 01-22 07:50
BT Wi-Fi模式是否可以通过ModustoolBox对套件进行编程来实现?
想配置用于分析 CYW43439 的 CY8CPROTO-062S2-43439 原型开发套件。
浏览文档我无法弄清楚如何在不同的 Wi-Fi 和蓝牙模式(电源模式、连接模式等)下配置套件。
在
发表于 01-22 06:19
RA AWS MQTT/TLS云连接解决方案-Wi-Fi DA16600
电子发烧友网站提供《RA AWS MQTT/TLS云连接解决方案-Wi-Fi DA16600.pdf》资料免费下载
发表于 01-03 10:00
•0次下载
Wi-Fi 6和Wi-Fi 5之间有哪些区别呢?
Wi-Fi 6和Wi-Fi 5之间有哪些区别呢? Wi-Fi 6和Wi-Fi 5是无线局域网标准的两个版本,它们之间存在很多区别。Wi-Fi
什么是2.4 GHz Wi-Fi? 如何提升2.4 GHz Wi-Fi的性能?
GHz Wi-Fi现在还有用吗? 2.4 GHz Wi-Fi是一种无线通信技术,通过使用2.4 GHz频段的无线电波来传输数据。它是目前最常见的Wi-Fi频段之一,并且被广泛用于家
评论