MQTT协议在STM32上的移植
1 下载MQTT 嵌入式版本的C/C++库
https://www.eclipse.org/paho/index.php?page=clients/c/embedded/index.php
本篇是MQTT在STM32设备上的移植,因此使用paho的嵌入式C库。
1.1 移植
首先,需要将…/paho.mqtt.embedded-c/MQTTPacket/中的所有文件添加到keil工程文件,然后参考…/paho.mqtt.embedded-c/MQTTPacket/samples/中的例程编写。
移植的前提是保证已经建立TCP连接,因为MQTT协议实在TCP基础上的数据传输协议。本实验使用sim800c无线通讯模块先与MQTT服务器建立TCP连接(使用透传模式),再通过串口与stm32建立通讯联系。
接口函数
移植主要参考修改库中的…/paho.mqtt.embedded-c/MQTTPacket/samples/transport.c例程文件
,且主要是transport_sendPacketBuffer()和transport_getdata()函数,分别用来作为硬件实现发送和接收数据包的接口函数,因此需要针对硬件平台做相应修改。