ESP8266上报数据到中国移动物联网平台HTTP
#include <HttpPacket.h>
#include <ArduinoJson.h>
#include <ESP8266WiFi.h>
HttpPacketHead packet;
#define myPeriodic 5
int L = ; //LED指示灯引脚
int sent = ;
char OneNetServer[] = "api.heclouds.com"; //不需要修改
const char ssid[] = "plus"; //修改为自己的路由器用户名
const char password[] = ""; //修改为自己的路由器密码
char device_id[] = ""; //修改为自己的设备ID
char API_KEY[] = "ZnbTv5Qpbrv"; //修改为自己的API_KEY
char sensor_id1[] = "PM1.0";
char sensor_id2[] = "PM2.5"; void connectWifi()
{ Serial.print("Connecting to " + *ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay();
Serial.print("."); }
Serial.println("");
Serial.println("Connected");
Serial.println("");
digitalWrite(, HIGH);
delay();
digitalWrite(, LOW);
delay();
digitalWrite(, HIGH);
}
void postDataToOneNet(char* API_VALUE_temp, char* device_id_temp, char* sensor_id_temp, float thisData)
{
WiFiClient client;
StaticJsonBuffer<> jsonBuffer;
JsonObject& myJson = jsonBuffer.createObject();
JsonArray& datastreams= myJson.createNestedArray("datastreams");
JsonObject& id_datapoints = datastreams.createNestedObject();
id_datapoints["id"] = sensor_id_temp;
JsonArray& datapoints = id_datapoints.createNestedArray("datapoints");
JsonObject& value = datapoints.createNestedObject();
value["value"] =thisData;
char p[];
myJson.printTo(p, sizeof(p));
packet.setHostAddress(OneNetServer);
packet.setDevId(device_id_temp); //device_id
packet.setAccessKey(API_VALUE_temp); //API_KEY
/*create the http message about add datapoint */
packet.createCmdPacket(POST, TYPE_DATAPOINT, p);
if (strlen(packet.content))
Serial.print(packet.content);
Serial.println(p);
char cmd[];
memset(cmd, , );
strcpy(cmd, packet.content);
strcat(cmd, p);
if (client.connect(OneNetServer, )) {
Serial.println("WiFi Client connected ");
client.print(cmd);
delay();
}//end if
// Serial.println(cmd);
client.stop();
}
void setup() {
Serial.begin();
pinMode(, OUTPUT);
connectWifi();
Serial.println("setup end!");
}
void loop() {
int temp = random(, ); int hum = random(, );
//发送数据到Onenet
postDataToOneNet(API_KEY, device_id, sensor_id1, temp);
delay();
postDataToOneNet(API_KEY, device_id, sensor_id2, hum);
Serial.println("N0 " + String(sent) + " Stream: was send");
sent++;
int count = myPeriodic;
while (count--)
delay();
}
ESP8266上报数据到中国移动物联网平台HTTP的更多相关文章
- 中国移动物联网平台数据转发 c# 控制台程序
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...
- ESP8266 上报数据到贝壳物联
下面贴上代码: #include <aJSON.h> #include <SPI.h> #include <Wire.h> #include <dht11.h ...
- 中国移动物联网ONENET平台数据本地采集工具
吧从中国移动物联网平台上接收的数据 实时按天保存为CSV文件或者是SQL SERVER数据库中方便进行数据处理 还可设置显示最大值,最小值,报警值,报警推送,tts语音报警等贴心功能
- HelloX操作系统与中国移动OneNET物联网平台成功完成对接
HelloX成功与中国移动物联网平台对接 经过HelloX项目组同仁的努力,尤其是Tywin(@飓风)的努力下,HelloX最新版本V1.78已成功与中国移动OneNET(open.iot.10086 ...
- 玩转OneNET物联网平台之MQTT服务① —— OneNetMqtt全方位调试
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 国内物联网平台(7):Ablecloud物联网自助开发和大数据云平台
国内物联网平台(7)——Ablecloud物联网自助开发和大数据云平台 马智 平台定位 面向IoT硬件厂商,提供设备联网与管理.远程查看控制.定制化云端功能开发.海量硬件数据存储与分析等基础设施,加速 ...
- [IOT] 自制蓝牙工牌办公室定位系统 (一)—— 阿里物联网平台概览及打通端到云(硬核·干货)
目录:老少皆宜.超长干货文警告 1.快速入门创建产品 -- 小白,打包带走去吹牛 2.代码分析 -- 老炮,快速了解能用上 2.1 从start.sh分析开发环境如何自动构建 2.2 从sample. ...
- 玩转OneNET物联网平台之HTTP服务① —— 模拟上传温度(TcpClient)
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 玩转OneNET物联网平台之简介
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
随机推荐
- Spring Batch 体系结构
Spring Batch 设计的时候充分考虑了可扩展性和各类终端用户. 下图显示了 Spring Batch 的架构层次示意图,这种架构层次为终端用户开发者提供了很好的扩展性与易用性. 上图显示的是 ...
- VS Code插件
VS Code下载地址: https://code.visualstudio.com/ 1.view in browser 和 Open-In-Browser 安装可在编辑器中打开html,在 ...
- Docker 只要一小时,零基础入门Docker(转)
转自:https://zhuanlan.zhihu.com/p/23599229 推荐:https://hijiangtao.github.io/2018/04/17/Docker-in-Action ...
- MySQL补充
1.mysql限制显示条目数:Limit, offset 图片网址:https://sqlbolt.com/lesson/filtering_sorting_query_results 实例: SEL ...
- selenium chrome 自动加载flash
#coding:utf-8from selenium import webdriverfrom selenium.webdriver.support.select import Selectfrom ...
- FBI树(第一次做建树题)
试题来源 NOIP2004 普及组 问题描述 我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串. FBI树是一种二叉树,它的结 ...
- 【IDEA】【2】创建Maven项目及部署发布
正文: 1,我参考的文档1已经比较全面了,需要注意的是界面可能有点不一样,有些地方需要自己注意一下 2,project和model的概念:挺困扰人的,我目前没有多模块开发,开发多个项目的时候是开了多个 ...
- STL中的拷贝替换算法(so easy)
#include"vector" using namespace std; #include"string" #include"algorithm&q ...
- git忽略未被跟踪和已被跟踪的文件
git的文件操作本质上来讲是基于文件索引来做追踪的. 至于忽略未跟踪(untrack)文件文件,git提供了三种方式 1 .gitignore 2 git config --global core ...
- QString 的用法
C++语言提供了两种字符串的实现:C风格的字符串,以'\0‘结尾;std::string,即标准模版库中的类.Qt则提供了自己的字符串实现:QString,QString不用担心内存分配以及关于'\0 ...