STM32——使用ESP8266-01连接OneNet云平台并将DHT11读取的温湿度通过MQTT(物模型)上传至云平台(二)
一、创建OneNET云平台并建立物模型
1、打开OneNET云平台并创建账号
2、在首页点击开发者中心
3、添加要开发产品,这里请观看官方的文档:创建产品、产品管理
以下是要注意的地方
4、把以下信息记录下来并保存到一个txt文件中
二、生成token
1、打开下载好的文件,在有关资料中找到token
2、输入生成token的信息(我的时间戳是2050-04-28)在线生成时间戳链接
3、把生成的信息复制到txt文件中
三、修改代码
1、打开工程
2、打开onenet.c、esp8266.c、onenet.c把下面框起来的内容进行修改
3、打开onenet.c修改上报文OneNET平台最多只能上传10个数据
举个例子
上传一个数据的代码为
char json[]="{\"id\":\"123\",\"version\":\"1.0\",\"params\":{\"temp\":{\"value\":%d}}}";
char t_json[200];
unsigned short json_len;
sprintf(t_json, json, temperature);
上传两个数据的代码为
char json[]="{\"id\":\"123\",\"version\":\"1.0\",\"params\":{\"temp\":{\"value\":%d},\"humi\":{\"value\":%d}}}";
unsigned short json_len;
sprintf(t_json, json, temperature,humidity);
也就是我们在第一行的,\"temp\":{\"value\":%d}后面加一个“,”在添加\"humi\":{\"value\":%d};
在 sprintf(t_json, json, temperature,humidity);中添加有关参数。
上报字符串的格式为:\"door\":{\"value\":\"yes\"}
四、设备之间的接线
DHT11 | STM323 |
VCC | 5V |
GND | GND |
DATA | B14 |
ESP8266 | STM32 |
3V3 | 3V |
RST | A11 |
CH_PD(EN) | 3V3 |
TX | RX |
RX | TX |
GND | GND |
五、检验
1、将工程编译,并下载
2、打开OneNET云平台查看设备是否在线及数据是否上传
代码及其资料:
链接:https://pan.baidu.com/s/1s_duMrF-gQD-Tzrj0UEf4Q?pwd=21rq
提取码:21rq
参考资料:资料1
因作者水平有限,希望这篇博客对你有帮助,有任何问题欢迎指点!
作者:紧邻的二氧化碳分子