Files
arduino-tempsensor/DHT11_Server.ino
2022-06-10 14:41:33 +03:00

70 lines
2.2 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#include <SPI.h>
#include <Ethernet.h>
#include "DHT.h"
//Константы
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // Мак адрес
byte ip[]={192, 168, 71, 27};
EthernetClient client;
EthernetServer server(80);
//Переменные
unsigned long int timeConn = millis(); // Частота отправки данных о t/h на сервер
float h; // Значение температуры
float t; // Значение влажности
/*--------------------------------------------------------------
Необходимые настройки
—------------------------------------------------------------*/
void setup()
{
//Старт
Serial.begin(9600);
Ethernet.begin(mac,ip);
server.begin();
dht.begin();
}
/*--------------------------------------------------------------
Основное тело программы
—------------------------------------------------------------*/
void loop()
{
h = dht.readHumidity();
t = dht.readTemperature();
if (millis() - timeConn > 2000) {
//sendData(t,h);
timeConn = millis();
Serial.println("CONNECT SERVER: Send temp/hum");
}
//}
/*--------------------------------------------------------------
Функция отправляет данные о температуре и влажности на
WEB сервер.
—------------------------------------------------------------*/
//void sendData(float t, float h) {
client = server.available(); // ожидаем объект клиент
client.println("HTTP/1.1 200 OK"); // стартовая строка
client.println("Content-Type: text/html; charset=utf-8"); // тело передается в коде HTML, кодировка UTF-8
client.println(); // пустая строка отделяет тело сообщения
client.println("<!DOCTYPE HTML>"); // тело сообщения
client.println("<html>");
client.print("t=");
client.println(t);
client.println("<br>");
client.println();
client.print("h=");
client.println(h);
client.println("</html>");
//client.print(t);
//client.print(h);
client.stop();
client.flush();
}