noam76

controleur_temp.ino

May 15th, 2023
1,513
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Libraries
  2. #include <ESP8266WiFi.h>//https://github.com/esp8266/Arduino/blob/master/libraries/ESP8266WiFi/src/ESP8266WiFi.h
  3. #include <DHT.h>
  4.  
  5. //Constants
  6. #define LED D4
  7. // Definit la broche de l'Arduino sur laquelle la
  8. // broche DATA du capteur est reliee
  9. #define DHTPIN D2
  10. // Definit le type de capteur utilise
  11. #define DHTTYPE DHT11
  12. // Constante mesuree avec un thermometre de reference
  13. // qui sert a etalonner le capteur de temperature
  14. #define DELTA_TEMPERATURE 0.7
  15. // Declare un objet de type DHT
  16. // Il faut passer en parametre du constructeur
  17. // de l'objet la broche et le type de capteur
  18. DHT dht(DHTPIN, DHTTYPE);
  19.  
  20. //Parameters
  21. String request;
  22. char* ssid = "********";
  23. char* password = "********";
  24. String nom = "ESP8266";
  25. //Objects
  26. WiFiServer server(80);
  27.  
  28. void setup() {
  29.     //Init Serial USB
  30.     Serial.begin(115200);
  31.     pinMode(LED, OUTPUT);
  32.     pinMode(A0, INPUT);
  33.  
  34.     //Init WiFi server
  35.     Serial.println(F("Initialize System"));
  36.     server.begin();
  37.     //Init ESPBrowser
  38.     Serial.print(F("Connecting to ")); Serial.println(ssid);
  39.     WiFi.begin(ssid, password);
  40.     // Connect to Wifi network.
  41.     while (WiFi.status() != WL_CONNECTED)
  42.     {
  43.       delay(500); Serial.print(F("."));
  44.     }
  45.  
  46.     Serial.println();
  47.     Serial.println(F("ESPBrowser initialized"));
  48.     Serial.print(F("IP Address: "));
  49.     Serial.println(WiFi.localIP());
  50.     // Initialise la capteur DHT11
  51.     dht.begin();
  52. }
  53.  
  54. void loop() {
  55.   WiFiClient client = server.available();
  56.   if (!client) {
  57.     return;
  58.   }
  59.   // Wait until the client sends some data
  60.   Serial.println("new client");
  61.   while (!client.available()) {
  62.     delay(1);
  63.   }
  64.   // Read the first line of the request
  65.   String request = client.readStringUntil('\r');
  66.   Serial.println(request);
  67.   client.flush();
  68.   handleRequest(request);
  69.   webpage(client);//Return webpage
  70.  
  71.     // Recupere la temperature et l'humidite du capteur et l'affiche
  72.   // sur le moniteur serie
  73.   Serial.println("Temperature = " + String(dht.readTemperature()) + " °C");
  74.   Serial.println("Humidite = " + String(dht.readHumidity()) + " %");
  75.  
  76.   // Attend 10 secondes avant de reboucler
  77.   delay(10000);
  78. }
  79.  
  80. void handleRequest(String request) { /* function handleRequest */
  81.   ////Handle web client request
  82.   if (request.indexOf("/light1on") > 0)  {
  83.     digitalWrite(LED, LOW);
  84.   }
  85.   if (request.indexOf("/light1off") > 0)   {
  86.     digitalWrite(LED, HIGH);
  87.   }
  88. }
  89.  
  90. void webpage(WiFiClient client) { /* function webpage */
  91.   ////Send wbepage to client
  92.   client.println("HTTP/1.1 200 OK");
  93.   client.println("Content-Type: text/html");
  94.   client.println(""); //  do not forget this one
  95.   client.println("<!DOCTYPE HTML>");
  96.   client.println("<html>");
  97.   client.println("<head>");
  98.   client.println("<meta name='apple-mobile-web-app-capable' content='yes' />");
  99.   client.println("<meta name='apple-mobile-web-app-status-bar-style' content='black-translucent' />");
  100.   client.println("</head>");
  101.   client.println("<body bgcolor = '#70706F'>");
  102.   client.println("<hr/><hr>");
  103.   client.println("<h1 style='color : #3AAA35;'><center> " + nom + " Device Control </center></h1>");
  104.   client.println("<hr/><hr>");
  105.   client.println("<br><br>");
  106.   client.println("<br><br>");
  107.   client.println("<center>");
  108.   client.println("  Pin A0");
  109.   client.println("  <input value=" + String(analogRead(A0)) + " readonly></input>");
  110.   client.println("  </center>");
  111.   client.println("<center>");
  112.   client.println("Built-in LED");
  113.   client.println("<a href='/light1on'><button>Turn On </button></a>");
  114.   client.println("<a href='/light1off'><button>Turn Off </button></a><br />");
  115.   client.println("</center>");
  116.   client.println("<br><br>");
  117.   client.println("<br><br>");
  118.   client.println("<center>");
  119.   client.println("<table border='5'>");
  120.   client.println("<tr>");
  121.   client.print("<td>LED is </td>");
  122.   if (digitalRead(LED))
  123.   {
  124.     client.print("<td> OFF</td>");
  125.   } else {
  126.     client.print("<td> ON</td>");
  127.   }
  128.   client.println("</tr>");
  129.   client.println("</table>");
  130.   client.println("</center>");
  131.   client.println("</body></html>");
  132.   client.println();
  133.   delay(1);
  134. }
Advertisement
Add Comment
Please, Sign In to add comment