Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
products:laboratory_iot_c:exp62 [2024/12/06 21:49] – [Программный код эксперимента] labuser30products:laboratory_iot_c:exp62 [2024/12/06 22:04] (текущий) – [Программный код эксперимента] labuser30
Строка 19: Строка 19:
     <body>     <body>
         <form action="/">         <form action="/">
-            Red: <input type="number" name="r" min="0" max="1023" value="<=VALUE=R=>"> <br/> +            Red: <input type="number" name="r" min="0" max="255" value="<=VALUE=R=>"> <br/> 
-            Green: <input type="number" name="g" min="0" max="1023" value="<=VALUE=G=>"> <br/>+            Green: <input type="number" name="g" min="0" max="255" value="<=VALUE=G=>"> <br/>
             Blue: <input type="number" name="b" min="0" max="1023" value="<=VALUE=B=>"> <br/>             Blue: <input type="number" name="b" min="0" max="1023" value="<=VALUE=B=>"> <br/>
             <input type="submit" value="Send">             <input type="submit" value="Send">
Строка 36: Строка 36:
 #include <ESP8266WebServer.h> #include <ESP8266WebServer.h>
  
-#define WIFI_NAME     "Freedom+#define WIFI_NAME     "WiFi_Name
-#define WIFI_PASSWORD "koval2121"+#define WIFI_PASSWORD "WiFi_Password"
  
 #define PIN_LED_R 13 #define PIN_LED_R 13
Строка 46: Строка 46:
  
 void indexPage() { void indexPage() {
-  int duty_r = 512+  int duty_r = 128
-  int duty_g = 512+  int duty_g = 128
-  int duty_b = 512;+  int duty_b = 128;
  
   if (server.hasArg("r")) duty_r = server.arg("r").toInt();    if (server.hasArg("r")) duty_r = server.arg("r").toInt(); 
Строка 54: Строка 54:
   if (server.hasArg("b")) duty_b = server.arg("b").toInt();   if (server.hasArg("b")) duty_b = server.arg("b").toInt();
      
-  analogWrite(PIN_LED_R, 1023 - duty_r); +  analogWrite(PIN_LED_R, 255 - duty_r); 
-  analogWrite(PIN_LED_G, 1023 - duty_g); +  analogWrite(PIN_LED_G, 255 - duty_g); 
-  analogWrite(PIN_LED_B, 1023 - duty_b);+  analogWrite(PIN_LED_B, 255 - duty_b);
  
   String page = "<!DOCTYPE html>";   String page = "<!DOCTYPE html>";
Строка 64: Строка 64:
   page += "<body>";   page += "<body>";
   page += R"(<form action="/">)";   page += R"(<form action="/">)";
-  page += R"(Red: <input type="number" name="r" min="0" max="1023" value="<=VALUE=R=>"> <br/>)"; +  page += R"(Red: <input type="number" name="r" min="0" max="255" value="<=VALUE=R=>"> <br/>)"; 
-  page += R"(Green: <input type="number" name="g" min="0" max="1023" value="<=VALUE=G=>"> <br/>)"; +  page += R"(Green: <input type="number" name="g" min="0" max="255" value="<=VALUE=G=>"> <br/>)"; 
-  page += R"(Blue: <input type="number" name="b" min="0" max="1023" value="<=VALUE=B=>"> <br/>)";+  page += R"(Blue: <input type="number" name="b" min="0" max="255" value="<=VALUE=B=>"> <br/>)";
   page += R"(<input type="submit" value="Send">)";   page += R"(<input type="submit" value="Send">)";
   page += "</form>";   page += "</form>";
   page += "</body>";   page += "</body>";
   page += "</html>";   page += "</html>";
-  +
   page.replace("<=VALUE=R=>", String(duty_r));   page.replace("<=VALUE=R=>", String(duty_r));
   page.replace("<=VALUE=G=>", String(duty_g));   page.replace("<=VALUE=G=>", String(duty_g));
Строка 84: Строка 84:
   pinMode(PIN_LED_G, OUTPUT);   pinMode(PIN_LED_G, OUTPUT);
   pinMode(PIN_LED_B, OUTPUT);   pinMode(PIN_LED_B, OUTPUT);
-  analogWriteRange(1024); +  analogWriteRange(256); 
-  analogWrite(PIN_LED_R, 1023); +  analogWrite(PIN_LED_R, 128); 
-  analogWrite(PIN_LED_G, 1023); +  analogWrite(PIN_LED_G, 128); 
-  analogWrite(PIN_LED_B, 1023);+  analogWrite(PIN_LED_B, 128);
  
   Serial.print("Connecting to WiFi");    Serial.print("Connecting to WiFi"); 
Строка 113: Строка 113:
 </WRAP> </WRAP>
  
-Следует обратить внимание, что перед установкой яркости светодиода мы вычитаем полученные данные из числа 1023. Это сделано потому, что наш RGB светодиод с общим анодом (имеет общий плюс) и мы установили +Следует обратить внимание, что перед установкой яркости светодиода мы вычитаем полученные данные из числа 255. Это сделано потому, что наш RGB светодиод с общим анодом (имеет общий плюс) и мы установили диапазон аналогового выходов на 256. 
 + 
 +<code python[enable_line_numbers="2", start_line_numbers_at="56"]> 
 +  analogWriteRange(256);  
 +</code>