ESP8266-01S + DHT11 通过WiFi名称显示传感器信息-Arduino中文社区 - Powered by Discuz! Archiver

bing` 发表于 2021-4-10 22:38

ESP8266-01S + DHT11 通过WiFi名称显示传感器信息

本帖最后由 bing` 于 2021-4-10 22:43 编辑

ESP8266-01S + DHT11 通过WiFi名称显示传感器信息
关键词:arduino 8266dht11温湿度传感器数据WiFi名称 数据展示
https://www.arduino.cn/forum.php?mod=image&aid=74486&size=300x300&key=e0f97cb1a766b81f&nocache=yes&type=fixnonehttps://www.arduino.cn/forum.php?mod=image&aid=74487&size=300x300&key=302117624d39d0bf&nocache=yes&type=fixnone
将esp-01s从DHT11获取的温湿度数据,通过esp-01s模块自带的ap(无线热点)功能展示出来,达到温湿度数据广播功能,给传感器数据展示提供了一条新的途径。
代码如下:

#include "DHT.h"
#include <ESP8266WiFi.h>
#define DHTPIN 2                      //定义DHT11模块连接管脚
#define DHTTYPE DHT11         //使用 DHT 11模块
//#define DHTTYPE DHT22       //使用DHT 22(AM2302), AM2321模块
//#define DHTTYPE DHT21      //使用 DHT 21 (AM2301)模块
String stringOne, stringTwo, stringThree, stringfour, stringfive, string0, string1;
int i = 0;
DHT dht(DHTPIN, DHTTYPE);   //定义dht

void setup() {                                             //主程序
Serial.begin(9600);                                    //设置串口
Serial.println(F("DHT开始测试!"));             //串口打印DHT开始测试!
dht.begin();                                              //DHT开始工作
//字符串用于后面拼接
stringOne = String("温度:");
stringTwo = String("℃");
stringfour = String(" 湿度:");
stringfive = String("%");
stringThree = String();
string0 = String("CS35Plus 欢迎你");       //打算车上放,所以
string1 = String("传感器出错");}

void loop() {                                                   
delay(2000);                                                       //等待2秒,读取温度或湿度大约需要250毫秒!避免发生错误
float h = dht.readHumidity();                            //将湿度度赋予h
float t = dht.readTemperature();                      //读取摄氏度赋予t
if (isnan(h) || isnan(t)) {                                    //读取失败显示
    Serial.println(F("读取失败,找不到传感器!"));
    WiFi.softAP(string1);                     
    return;
}
float hic = dht.computeHeatIndex(t, h, false);   //用摄氏度计算酷热指数,摄氏度设参数为false
Serial.print(F("湿度: "));                                  //串口打印
Serial.print(h);                                              //串口打印湿度值
Serial.print(F("%,温度: "));                            //串口打印
Serial.print(t);                                             //串口打印温度值
Serial.print(F("°C "));                                    //串口打印
Serial.print(F(", 体感温度: "));                      //串口打印
Serial.print(hic);                                    //串口打印体感温度
Serial.println(F("°C "));                           //串口打印
stringThree =stringOne + t + stringTwo + stringfour + h + stringfive;

if (i < 10){i=i+1;}else{i=i-10;};                //引入i,在串口调试的时候每次发送不同数字,便于区别
Serial.println("测试段落开始 ");
Serial.println(stringThree);
Serial.println(i);
Serial.println("测试段落结束 ");
WiFi.softAP(stringThree);
delay(30000);                                       //等待2秒,WiFi名称稳定些
WiFi.softAP(string0);                            //开启后,添加CS35Plus欢迎你,打算车上放,所以
delay(20000);
}


打算车上放,所以
https://www.arduino.cn/forum.php?mod=image&aid=74491&size=300x300&key=e85aa949aaeb1832&nocache=yes&type=fixnone
实物连接图如下:
https://www.arduino.cn/forum.php?mod=image&aid=74492&size=300x300&key=9e2f1d7a908ad3aa&nocache=yes&type=fixnone
权当引玉之砖,不妥之处欢迎论坛大佬指正。

bing` 发表于 2021-4-10 22:42

占位备用

topdog 发表于 2021-4-11 14:59

写的不对呀,板砖伺候。:lol

bing` 发表于 2021-4-14 18:34

topdog 发表于 2021-4-11 14:59
写的不对呀,板砖伺候。

:L真的假的

ws9528 发表于 2021-10-5 23:07

想法独特,支持兄弟
页: [1]
查看完整版本: ESP8266-01S + DHT11 通过WiFi名称显示传感器信息