MQTT:基于Keil开发工具移植入MQTTClient-C开源库

引言

在单片机这类资源比较紧张的嵌入式平台我们选择源码编译的方式移植MQTTClient-C开源库,找到MQTTClient.c和MQTTClient.h两个文件,通过文件添加方式添加到 Keil 项目里。

在 Keil 中,可通过右键点击项目中的 Source Group,选择 Add Existing Files to Group 来添加文件。

系统架构

单片机通过UART连接4G模块,我们要解决MQTT协议通过TCP数据收发接口的实现;

数据流示意图:

数据流: 单片机<---------->4G模块<------------>MQTT服务器

通信接口: UART 射频

网络协议: TCP

物联网协议: MQTT

移植

创建MQTTTimer.h和MQTTTimer.c文件,编写如下函数声明与实现,并同步加入MQTTPacket.h中头文件声明;

MQTTTimer.h

MQTTPacket.h

工程添加文件信息如下

编译

编译程序,确保没有任何异常;

下一章节介绍如何具体实现。

相关推荐
Bluetooth7305 小时前
c语言一维数组
c语言
QiLinkOS6 小时前
【从实验室到商业战场:发明专利如何重塑科技与企业的共生生态】
大数据·c语言·数据结构·c++·人工智能·单片机·算法
一抹晴空8 小时前
Keil MDK AC6 compiler编译报错,与AC5区别
c语言·arm开发·单片机
MetrixAeroCore9 小时前
罗马尼亚跨境物联网通信痛点与方案:MetrixAeroCore物联网卡解析
物联网
黎阳之光9 小时前
数智透明·安全兜底|黎阳之光透明矿山,AI+数字孪生守护矿山生命线
人工智能·物联网·算法·安全·数字孪生
TurMass工程师9 小时前
“十五五”城市生命线升级窗口打开,TurMass 技术让智慧管廊更会“感知”
物联网·智慧城市·turmass·turmassmesh
czhaii10 小时前
单片机伺服电机加减速控制子程序
c语言·单片机
qq_3331209710 小时前
C++高并发内存池的整体设计和实现思路_C 语言
java·c语言·c++
深圳市晶科鑫实业有限公司11 小时前
5G与AIoT时代:如何选择晶振常用频率?
服务器·单片机·物联网·5g·智能路由器·健康医疗·信息与通信
luj_176811 小时前
残熵算法的稳健防灾逻辑
c语言·开发语言·c++·经验分享·算法