本帖最后由 caiyq52 于 2020-12-31 02:38 编辑
疫情期间快递太慢啦,买了十多天的8266烧录器和其他一些模块终于到了。继续倒腾一下“点灯”。用示例程序做一个温湿度检测,分享一下。
一,准备工作 1.1软件 ·Arduino IDE(必须是1.8.10及更高版本!我这里使用的版本刚下载的1.8.11) Arduino IDE 1.8.11链接:https ://pan.baidu.com/s/1QQ8bjWcLga6hA2vsXdXVow提取码:b70v 或者在Arduino官网下载新版本: https : //www.arduino.cc/
·安装blinker Arduino库(blinker-library-master.zip) blinker-library-master.zip 链接:https ://pan.baidu.com/s/1NXzV_oPfvdzytI5FR0lDuw提取码:9na8 将下载好的库文件夹(blinker-library-master)解压到我的电脑>文档> Arduino> libraries文件夹中。
·安装DHT库(DHT-sensor-library-master.zip) 链DHT-sensor-library-master.zip接:https://pan.baidu.com/s/1ReKOYkypI_o6L2qvc-VHxA提取码:wzti 将下载好的库文件夹解压到我的电脑>文档> Arduino> libraries文件夹中。
·安装esp8266 / esp32扩展包(8266_package_2.6.3.exe) 8266_package_2.6.3.exe链接:https ://pan.baidu.com/s/1yM1sDZ4494n8BM4dgPuS0A提取码:9gl9 直接运行自动安装。
1.2硬件 · ESP8266模块
· DHT11温湿度WiFi子系统模块 · 8266烧录器 二,开始
2.1点灯·blinkerAPP
·下载安装APP
https://diandeng.tech/doc/app-download
2.2 APP使用,并获取键码和设置按钮名称
·步骤如下
2.3 Arduino程序
·参考点灯示例程序
Arduino IDE -文件-示例——Blinker——Blinker_DHT——DHT11_WiFi ·程序 这里加了点注释
- #define BLINKER_WIFI
- #include <Blinker.h>
- char auth[]="3cxxxxxxxxxx";//点灯中的密钥
- char ssid[]="WIFI名称";
- char pswd[]="WIFI密码";
- BlinkerNumber HUMI("num-shidu"); //必须于自己软件中设置的名称相同
- BlinkerNumber TEMP("num-wendu"); //必须于自己软件中设置的名称相同
- #include <DHT.h>
- #define DHTPIN 2
- #define DHTTYPE DHT11 // DHT 11
- //#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
- //#define DHTTYPE DHT21 // DHT 21 (AM2301)
- DHT dht(DHTPIN, DHTTYPE);
- uint32_t read_time = 0;
- float humi_read, temp_read;
- void dataRead(const String & data)
- {
- BLINKER_LOG("Blinker readString: ", data);
- Blinker.vibrate();
-
- uint32_t BlinkerTime = millis();
-
- Blinker.print("millis", BlinkerTime);
- }
- void heartbeat()
- {
- HUMI.print(humi_read);
- TEMP.print(temp_read);
- }
- void setup()
- {
- Serial.begin(115200);
- BLINKER_DEBUG.stream(Serial);
- pinMode(LED_BUILTIN, OUTPUT);
- digitalWrite(LED_BUILTIN, LOW);
- Blinker.begin(auth, ssid, pswd);
- Blinker.attachData(dataRead);
- Blinker.attachHeartbeat(heartbeat);
-
- dht.begin();
- }
- void loop()
- {
- Blinker.run();
- if (read_time == 0 || (millis() - read_time) >= 2000)
- {
- read_time = millis();
- float h = dht.readHumidity();
- float t = dht.readTemperature();
- if (isnan(h) || isnan(t)) {
- BLINKER_LOG("Failed to read from DHT sensor!");
- return;
- }
- float hic = dht.computeHeatIndex(t, h, false);
- humi_read = h;
- temp_read = t;
- BLINKER_LOG("Humidity: ", h, " %");
- BLINKER_LOG("Temperature: ", t, " *C");
- BLINKER_LOG("Heat index: ", hic, " *C");
- }
- }
复制代码
·选择工具-开发板-Generic ESP8266模块
·连接硬件(烧录器8266)
!·选择对应的端口,上传程序
·将8266插到到DHT11温湿度的WiFi节点模块上!
·模块上电(模块说明中工作电压为3.7-5V),打开APP测试!这里我直接从烧录器上接的3.3V和GND到模块上,试了一下可以运行。
2020.02.21 武汉加油!中国加油!
|