^PANEL^ESP32^ |VCC|Vin| |GND|GND| |DIN|GPIO23| |CS|GPIO5| |CLK|GPIO18| #include #include #include #include #include // Uncomment according to your hardware type #define HARDWARE_TYPE MD_MAX72XX::FC16_HW //#define HARDWARE_TYPE MD_MAX72XX::GENERIC_HW // Defining size, and output pins #define MAX_DEVICES 4 #define CS_PIN 5 const char* ssid = "ESLAEKO_P.BAJA"; const char* password = NULL; IPAddress ip(192,168,100,12); IPAddress gateway(192,168,100,1); IPAddress subnet(255,255,255,0); IPAddress dns(8,8,8,8); AsyncWebServer server(80); MD_Parola Display = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); String my_ip; 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 void setup() { Display.begin(); Display.setIntensity(0); Display.displayClear(); Display.displayScroll("CONECTANDO WIFI", PA_CENTER, PA_SCROLL_LEFT, 25); Serial.begin(115200); delay(10); Serial.println('\n'); WiFi.begin(ssid, password); WiFi.config(ip, gateway, subnet, dns); Serial.print("Connecting to "); Serial.print(ssid); while (WiFi.status() != WL_CONNECTED) { if (Display.displayAnimate()) { Display.displayReset(); } } Serial.println('\n'); Serial.println("Connection established!"); Serial.print("IP address:\t"); Serial.println(WiFi.localIP()); server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) { request->send(200, "text/plain", "V1.0 Atril"); }); AsyncElegantOTA.begin(&server); server.begin(); Serial.println("HTTP server started"); 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() { 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 } void mensaje(){ HTTPClient http; // Your Domain name with URL path or IP address with path http.begin(serverPath.c_str()); // Send HTTP GET request int httpResponseCode = http.GET(); if (httpResponseCode>0) { Serial.print("HTTP Response code: "); Serial.println(httpResponseCode); String payload = http.getString(); Serial.println(payload); //longitud frase Serial.println(payload.length()); int largo = payload.length(); 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 { Serial.print("Error code: "); Serial.println(httpResponseCode); } // Free resources http.end(); }