查看: 3014|回复: 0

app inventor 2牵手美科WiFi之Arduino IDE for esp8266(中)

[复制链接]
  • TA的每日心情
    开心
    2019-1-20 16:41
  • 签到天数: 56 天

    [LV.5]常住居民I

    发表于 2017-3-20 22:44 | 显示全部楼层 |阅读模式
    本帖最后由 topdog 于 2017-3-22 12:12 编辑

    文章上接app inventor 2牵手美科WiFi之Arduino IDE for esp8266(上)
    (3)程序解释
    <1>,在Arduino IDE for esp8266安装支持AM2301的dht库文件,点击sketch--->include libray --->manage libraries 查找dht,安装dht 1.2.3版库文件
    6.JPG
    AM2301即dht21,下面程序是测量温湿度的代码:[kenrobot_code]#include "DHT.h"

    #define DHTPIN 13

    #define DHTTYPE DHT21

    DHT dht(DHTPIN, DHTTYPE);

    void setup()
    {
            Serial.begin(115200);
            dht.begin();
    }

    void loop()
    {
            delay(2000);
            float h = dht.readHumidity();
            float t = dht.readTemperature();
            
            Serial.print("Humidity: ");
            Serial.print(h);
            Serial.print(" %\t");
            Serial.print("Temperature: ");
            Serial.print(t);
            Serial.print(" *C ");
    }[/kenrobot_code]
    下面我们把代码复制到ide上,按照 app inventor 2牵手美科WiFi之Arduino IDE for esp8266(上)烧写固件的硬件操作, ide点击tools --->boards如下图设置
    7.jpg
    点击upload,直到编译,上传结束。然后拔掉gpio 0的杜邦线,把am2301的测量管脚连接gpio 13,正极连接5v,负极连接gnd。就可以在串口端观察到温湿度的数值了。上述就是Arduino IDE for esp8266程序的基础编写上传过程。它的使用和普通arduino core并没有太大区别。
    2.JPG
    <2>接下来我们要结合iot.doit.am物联网来上传测量到的温湿度数据。做一下前期准备。首先ie地址栏输入http://iot.doit.am,要申请uid,填写password,之后点击sign up注册
    8.JPG
    然后,点击login登录,分别在get api key 获得密匙,用于上传数据,在device control 添加temp、humi两个设备。
    9.JPG

    <3>物联协议
    平台基于TCP通讯,服务器IP: iot.doit.am 端口:8810。
    接通WiFi后,控制设备:
    a)先订阅自己的用户id:
           cmd=subscribe&topic=demo \r\n
         应答:cmd=subscribe&res=1
    b)数据上传:
      cmd=upload&device_name=Humi&data=%d&device_name=Temp&data=%d&uid=demo&key=%s
    应答:
    cmd=upload&res=1
    通过 http://iot.doit.am可以实时查看。

    <4>程序亮点
    连续登陆物联网,成功后开始上传数据步骤
    10.JPG
    在实践中发现测量值有跳变发生,使用希尔排序对11次采集的数值输出中间量,克服了这一现象。
    11.JPG





    打赏作者鼓励一下!
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    KittenBot杯第六届开源硬件开发大赛启动啦
    KittenBot杯第六届开源硬
    大赛简介: 第六届开源硬件开发大赛由Arduino中文社区发起 由KittenBot冠名赞助
    Blinker 模拟传感器+数字传感器例程(DHT11 温湿度+气体传感)
    Blinker 模拟传感器+数字
    才接触1星期,发现Blinker自带了很多例程,已经成功试验了DHT的例程序,并完善了体
    一文教你选择Arduino开发板,小白进
    一文教你选择Arduino开发
    笔者在2016年接触了Arduino,跳了万条坑,行了千里弯,到今天也算是Arduino的一
    [发布帖]RPG游戏 无人世界
    [发布帖]RPG游戏 无人世界
    视频攻略:https://www.bilibili.com/video/av43790997/ (b站正在审核) 剧情:主角是
    【人脸识别】ESP-EYE 最新的板子到货了
    【人脸识别】ESP-EYE 最新
    1.我不会编程,最多抄几个一步一步的网络教程。 2.不知道为啥就是超级喜欢电子元件。
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表