前言
在自制网络温湿度计一文中提到了可以改进的方法,就是给添加温湿度变化曲线,那么按照编程思路是需要将温湿度数据放到数组或者列表中存储然后再用图表画出来。
这里呢,翻了翻点灯科技的官方文档,可以看到有一个云存储的方法,正好解决了存储温湿度数据的问题,直接拿过来用就可以了。比较简单,下面呢就用这个方法实现这个功能。
先看效果图:
正文
可参考点灯科技官网云储存方法,我这里给出一些自己的理解。
1.云储存数据
这里的云存储数据只支持联网设备,如果将温湿度计断电断网,数据是不会存储的,会在曲线图中骤然下降的趋势,重新连接后会骤然上升。这里的云存储的功能并不是很强大,如果修改代码重新上传程序的话之前云存储的数据会被清空。
2.具体函数
(1)云存储数据函数:
void dataStorage()//云存储温湿度数据函数
{
Blinker.dataStorage("temp", temp_read);//存储温度
Blinker.dataStorage("humi", humi_read);//存储湿度
}
函数体里面Blinker.dataStorage("temp", temp_read);
第一个参数是数据键名,用来在手机端图标中显示,第二个参数是要存储的数据变量。
(2)在代码中写好了函数后,需要在主循环中调用这个函数,调用函数如下:
Blinker.attachDataStorage(dataStorage);
这个函数的意思就是每次循环的时候就会调用上面的dataStorage函数,达到可以将每次获得的数据云存储的效果。
3.添加组件
在blinker手机端添加图表组件,输入对应的数据键名就可以了。
源码获取地址: [Github地址](https://github.com/jiangyinghao-BOOP/JYH-IOT-Binker/blob/master/%E8%87%AA%E5%88%B6%E7%BD%91%E7%BB%9C%E6%B8%A9%E6%B9%BF%E5%BA%A6%E8%AE%A1%EF%BC%88%E5%B8%A6%E6%B8%A9%E6%B9%BF%E5%BA%A6%E6%9B%B2%E7%BA%BF%EF%BC%89)