目录
1.所需材料
Arduino WIFI D1开发板+温湿度传感器(DHT11)+公对母杜邦线三根
2.模块简介
2.1Arduino WIFI D1
Arduino WiFi D1开发板是一款基于ESP8266芯片的WiFi模块扩展板,专为Arduino平台设计。它内置了Wi-Fi功能,使得Arduino能够连接到无线网络并与互联网通信,无需额外的电脑作为网关。通过这个模块,用户可以方便地添加物联网(IoT)功能,如远程控制、传感器数据上传等。D1板通常包括必要的硬件接口,如SPI和GPIO端口,以及必要的天线接头。
Arduino WiFi D1的特点:
- Wi-Fi功能:支持2.4GHz IEEE 802.11 b/g/n标准,连接范围广,便于搭建网络应用。
- 兼容性:插件式设计,可以直接插入Arduino Uno或其他兼容型号的主板上使用。
- 简单易用:配合Arduino IDE软件,编程相对直观,适合初学者入门。
- 成本效益:相较于单独购买ESP8266模块,集成化的D1板更节省空间且价格更为合理。
2.2 温湿度模块 (DHT11)
DHT11是一种常见的低成本温湿度传感器,可测量温度范围为0℃至50℃,相对湿度范围为20-90%。
3、接口接线
Arduino WIFI D1 | OLED显示模块 |
5V | VCC |
GND | GND |
D4 | DATA |
4、使用的开发板+附加库+代码示例
4.1使用ESP8266开发板
4.2 使用DHT11
4.3代码示例
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#include <DHT.h>
#define DHTPIN D4 // DHT11数据引脚
#define DHTTYPE DHT11 // DHT11传感器类型
DHT dht(DHTPIN, DHTTYPE);
ESP8266WebServer server(80);
const char* ssid = "wifi名称"; // 替换为你的WiFi名称
const char* password = "wifi密码"; // 替换为你的WiFi密码
void setup() {
Serial.begin(115200);
dht.begin();
// 连接WiFi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.println(WiFi.localIP());
// 设置Web服务器
server.on("/", handleRoot);
server.begin();
Serial.println("HTTP server started");
}
void loop() {
server.handleClient();
}
void handleRoot() {
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
// 检查是否读取失败
if (isnan(humidity) || isnan(temperature)) {
server.send(200, "text/plain", "Failed to read from DHT sensor!");
return;
}
// 生成网页内容
String htmlContent = "<html><head><title>Temperature and Humidity</title></head><body>";
htmlContent += "<h1>Temperature and Humidity</h1>";
htmlContent += "<p>Temperature: " + String(temperature) + " ℃</p>";
htmlContent += "<p>Humidity: " + String(humidity) + " %</p>";
htmlContent += "</body></html>";
server.send(200, "text/html", htmlContent);
}
5.运行结果
可以使用znmap扫描一下同一局域网下的ip,然后通过ip访问,这个实在浏览器中搜索192.168.0.103,即开发板的ip所看见的信息。
6.总结
在程序使用前要保证开发板安装正确,并且开发板型号正确,我这里用到的esp8266开发板是2.7老版本,下载时候也可以下载这个,把开发板插入电脑,更换型号,选择如下图开发板和端口。