Интернет-магазин «Неглупый Дом»
ESP8266 и KY-015 дают веб-панель погоды в комнате.
ESP8266 поднимает собственный веб-сервер в домашней сети — при каждом запросе страницы он опрашивает KY-015 (DHT11 по своему однопроводному протоколу) и формирует HTML-ответ с текущими значениями на лету, без внешнего хостинга.
Реализации модулей бывают разные — сверяйтесь с маркировкой своей платы.
// Проверьте код через монитор порта под свою схему — я языковая модель, могу что-то упустить.
#include <ESP8266WiFi.h>
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
const char* ssid = "your_wifi_name";
const char* password = "your_wifi_password";
WiFiServer server(80);
void setup() {
Serial.begin(9600);
dht.begin();
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.print(F("IP-адрес: "));
Serial.println(WiFi.localIP());
server.begin();
}
void loop() {
WiFiClient client = server.available();
if (!client) return;
client.readStringUntil('\r');
client.flush();
float t = dht.readTemperature();
float h = dht.readHumidity();
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html; charset=utf-8");
client.println();
if (isnan(t) || isnan(h)) {
client.println("<html><body><h1>Ошибка чтения датчика</h1></body></html>");
return;
}
client.print("<html><body><h1>Температура: ");
client.print(t);
client.print(" °C</h1><h1>Влажность: ");
client.print(h);
client.println("%</h1></body></html>");
}
KY-015 совместим с библиотекой DHT (тип DHT11), она отдаёт оба значения сразу на страницу.
Ещё модули для Arduino: Электронные модули.
🎁 Купить весь комплект со скидкой 10%
Все 2 товара сразу: 325 ₽ 293 ₽ (экономия 32 ₽)
Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.
Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.