User Tools

Site Tools


tecnologia:proyectos:atril

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tecnologia:proyectos:atril [2022/12/28 17:56] – admintecnologia:proyectos:atril [2022/12/29 03:56] (current) – admin
Line 1: Line 1:
 +^PANEL^ESP32^
 +|VCC|Vin|
 +|GND|GND|
 +|DIN|GPIO23|
 +|CS|GPIO5|
 +|CLK|GPIO18|
 +
 <code> <code>
 #include <MD_Parola.h> #include <MD_Parola.h>
 #include <MD_MAX72xx.h> #include <MD_MAX72xx.h>
-#include <SPI.h> +#include <WiFi.h>   
-#include <WiFi.h>+
 #include <HTTPClient.h> #include <HTTPClient.h>
-#include <ESPAsyncWebServer.h> 
 #include <AsyncElegantOTA.h> #include <AsyncElegantOTA.h>
  
Line 27: Line 32:
 AsyncWebServer server(80); AsyncWebServer server(80);
  
-const int lectura=5; +MD_Parola Display = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); 
-String power=""; +String my_ip;
 String serverPath = "http://bateriaseko.lobo99.com/frases"; String serverPath = "http://bateriaseko.lobo99.com/frases";
 +String payload ="";
 +
 +int pinCoin = 15;   // pin de la Arduino donde conectamos la salida COIN del detector de monedas
 +int lectura = 0;   // variable para almacenar lo que leemos del pin COIN
  
-MD_Parola Display = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); 
  
 void setup() { void setup() {
-  
   Display.begin();   Display.begin();
   Display.setIntensity(0);   Display.setIntensity(0);
   Display.displayClear();   Display.displayClear();
 +  Display.displayScroll("CONECTANDO WIFI", PA_CENTER, PA_SCROLL_LEFT, 25);
 +
   Serial.begin(115200);   Serial.begin(115200);
   delay(10);   delay(10);
Line 49: Line 57:
  
   while (WiFi.status() != WL_CONNECTED) {   while (WiFi.status() != WL_CONNECTED) {
-    delay(500); +    if (Display.displayAnimate()) { 
-    Serial.print('.');+    Display.displayReset(); 
 +  } 
   }   }
  
Line 56: Line 65:
   Serial.println("Connection established!");     Serial.println("Connection established!");  
   Serial.print("IP address:\t");   Serial.print("IP address:\t");
-  Serial.println(WiFi.localIP());         // Send the IP address of the ESP8266 to the +  Serial.println(WiFi.localIP());
  
   server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) {   server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) {
-    request->send(200, "text/plain", "V1.0 27/04/2022 https://pad.eslaeko.net/p/iot_panelbaterias");+    request->send(200, "text/plain", "V1.0  Atril");
   });   });
      
      
-  AsyncElegantOTA.begin(&server);    // Start AsyncElegantOTA+  AsyncElegantOTA.begin(&server);
   server.begin();   server.begin();
   Serial.println("HTTP server started");   Serial.println("HTTP server started");
-  Display.print("V 1.0"); 
   delay(1000);   delay(1000);
  
-}+  my_ip = WiFi.localIP().toString(); 
 +  Serial.println(my_ip);
  
 +  Display.displayClear();
 +  Display.displayScroll(my_ip.c_str(), PA_CENTER, PA_SCROLL_LEFT, 25);
 +  
 +
 +  Serial.println(my_ip);
 +
 +  for (int muestra_ip = 1; muestra_ip <= 2; muestra_ip++) {
 +    while (true) {  
 +      if (Display.displayAnimate()) {
 +        Display.displayReset();
 +      break;
 +      }  
 +    }
 +  }
 +
 +  pinMode(pinCoin,INPUT);   // pinCoin es una entrada de información
 +
 +}
 void loop() { void loop() {
-    AsyncElegantOTA.loop(); 
  
-    Display.setTextAlignment(PA_LEFT);+  lectura = digitalRead(pinCoin);   // leemos el pinCoin 
 +  Serial.println(lectura);          // escribimos la lectura en el puerto serie 
 +  if (lectura==1)                   // si detecta moneda 
 +    mensaje();                     // esperamos un segundo, para que no nos de muchos unos seguidos 
 +  else                              // si no 
 +    delay(50);                       // esperamos solo 50 milisegundos para que la siguiente lectura sea muy seguida 
 +   
 +}
  
  
-    if(WiFi.status()== WL_CONNECTED){+void mensaje(){ 
 +  
       HTTPClient http;       HTTPClient http;
              
Line 91: Line 125:
         String payload = http.getString();         String payload = http.getString();
         Serial.println(payload);         Serial.println(payload);
-        Display.setTextAlignment(PA_CENTER); +        //longitud frase 
-        Display.print((String(payload.toInt()))+"%"); +        Serial.println(payload.length()); 
-        Display.setTextAlignment(PA_LEFT); +        int largo = payload.length(); 
-        delay(1000);+        String cadena = payload.substring(0,largo-1); 
 + 
 +        //Frase sin caracter final 
 +        Display.displayClear(); 
 +        Display.displayScroll(cadena.c_str(), PA_CENTER, PA_SCROLL_LEFT, 25); 
 +        while (true) {   
 +        if (Display.displayAnimate()) { 
 +          Display.displayReset(); 
 +          break; 
 +          }   
 +        } 
 + 
       }       }
       else {       else {
Line 102: Line 148:
       // Free resources       // Free resources
       http.end();       http.end();
-    } +
-    else { +
-      Serial.println("WiFi Disconnected"); +
-    } +
-     +
-  power = ""; +
-  delay(10000);+
 } }
 +
 </code> </code>
tecnologia/proyectos/atril.1672250219.txt.gz · Last modified: by admin