# STM32_M5311_Aliyun **Repository Path**: changser/STM32 ## Basic Information - **Project Name**: STM32_M5311_Aliyun - **Description**: 实现STM32+M5311+MQTT协议连接阿里云 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-09-21 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # STM32_M5311_MQTT连接阿里云物联网 #### 介绍 例程实现了基于MQTT协议上传DHT11温湿度数据到阿里云物联网平台和SG-90舵机的控制 #### 模组介绍 1. STM32F103C8T6开发板 2. 托马斯M5311 NBIOT模块 3. DHT11温湿度传感器 4. SG-90舵机 #### 更新日志 **1. 2019.8.22 第一次上传 ps:M5311必须上传hex到阿里云 at指令:因此要将str转hex** ``` AT+MQTTOPEN=1,1,1,1,1,"mywill","001bye" 发送连接建立请求,will 主题名 mywill, will 消息内容 001bye OK +MQTTOPEN:OK 连接成功 AT+MQTTSUB="pyr",1 订阅主题 pyr +MQTTSUBACK:1,1,pyr 订阅成功响应 AT+MQTTPUB="dev/gsm/u",1,1,0,0,"abc" 发布数据,数据内容为字符串 abc +MQTTPUBACK:1,0 发布数据响应,发布成功 AT+MQTTPUB="pyr",1,0,0,3,"7E7A7A" 向已订阅主题 pyr 发布数据,输入十六进制模式,此时终端将收到服务器下发的publish数据 ``` 修改内容: 1. 这里是列表文本添加str转hex库,成功通过AT+MQTTPUB="主题",1,0,0,str长度,"payload"发送数据到阿里云。 2. 更改send_MQTT(char* topic, char* message)为send_MQTT(char* topic, char* message, int len), 3. 增加了自动计算字符串长度功能,便于增加上传更多传感器采集数据。 **2. 2019.8.23 第二次上传** 修改内容: 1. 增加了检测M5311上传数据回传检测,实现了掉线软重启M5311模组的功能。 2. 修复了频繁命令下发导致设备重启的问题。 3. 创造了新的bug。(由于发送hex格式然而阿里云回传str格式导致无法检测命令上传成功) 1. 添加了阿里云服务,增加了获取设备信息的api。可以再APP显示设备在线情况。(这功能真的很赞) **预增加内容 添加触发器 高温预警 钉钉机器人 接入天猫精灵** #### APP界面 1. ![APP首页](https://images.gitee.com/uploads/images/2019/0823/221950_ffc36dba_4815563.png "Screenshot_20190823-221753_NB-iot.png") 2. ![控制与监控](https://images.gitee.com/uploads/images/2019/0823/222011_ce0232cb_4815563.png "Screenshot_20190823-221807_NB-iot.png") #### 参与贡献 Only Me #### 联系我 QQ:766529835