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

工程添加文件信息如下

编译

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

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

相关推荐
安科瑞刘鸿鹏173 小时前
高速路灯故障难定位?用 ASL600 实现精确单灯监测与维护预警
运维·网络·物联网·安全
C++ 老炮儿的技术栈3 小时前
Qt Creator中不写代如何设置 QLabel的颜色
c语言·开发语言·c++·qt·算法
艾莉丝努力练剑3 小时前
【Linux:文件】基础IO
linux·运维·c语言·c++·人工智能·io·文件
you-_ling3 小时前
IO编程相关知识
c语言·vscode
小龙报3 小时前
【51单片机】深度解析 51 串口 UART:原理、配置、收发实现与工程化应用全总结
c语言·开发语言·c++·stm32·单片机·嵌入式硬件·51单片机
承渊政道3 小时前
C++学习之旅【C++中模板进阶内容介绍】
c语言·c++·笔记·学习·visual studio
浅念-3 小时前
C语言——动态内存管理
c语言·开发语言·c++·笔记·学习
学嵌入式的小杨同学12 小时前
【Linux 封神之路】信号编程全解析:从信号基础到 MP3 播放器实战(含核心 API 与避坑指南)
java·linux·c语言·开发语言·vscode·vim·ux
精彩极了吧12 小时前
C语言基本语法-自定义类型:结构体&联合体&枚举
c语言·开发语言·枚举·结构体·内存对齐·位段·联合
进击的小头14 小时前
实战案例:51单片机低功耗场景下的简易滤波实现
c语言·单片机·算法·51单片机