C'est assez indigeste je vous l'accorde.
Du coups j'ai voulu le rendre plus lisible avec des classes.
J'ai donc créé 2 classes :
une classe "Motorisation" et une autre "Pages_Web".
Mon fichier ino est a présent plus léger :
#include <UnoWiFiDevEd.h>
#include "Motorisation.h"
#include "Pages_Web.h"
const unsigned short int pin_analog_tension_batterie = 0;
const float valeur_max_tension_mesuree_batterie = 4.53;
const float valeur_min_tension_mesuree_batterie = 3.76;
void setup()
{
pinMode (PIN_RELAIS_ALIM, OUTPUT);
digitalWrite (PIN_RELAIS_ALIM, HIGH);
Wifi.begin(); // Initialise le serveur wifi.
Wifi.println(F("Web Server is up")); // Préviens le serveur que tout est ok et prêt à etre utilisé.
Motorisation moteur(5,175,2,3, &pageWeb); // pos_init_servo_gauche,pos_init_servo_droit,pin_fdc_bas,pin_fdc_haut
Pages_Web pageWeb(&moteur);
}
void loop()
{
while(Wifi.available())
{
process(Wifi);
}
delay(50);
}
void process(WifiData client)
{
String command = client.readStringUntil('/');
if (command == "webserver")
{
WebServer(&client);
}
}
void WebServer(WifiData *client)
{
int index = -1;
unsigned long int temps = millis();
index = client->parseInt();
client->println("HTTP/1.1 200 OK");
client->println("Content-Type: text/html");
client->println();
client->println(F("<!DOCTYPE html>"));
client->println(F("<html>"));
client->println(F("<head>"));
client->println(F("<meta charset=\"utf-8\">"));
if (index == 1)
{
moteur.ouverture_porte();
}
else if (index == 0)
{
moteur.fermeture_porte();
}
else if (index == 10)
{
pageWeb.page_etat();
}
}
Même si il reste encore quelques éléments qui peuvent être modifiés.
Mon fichier Pages_Web.h lui est celui qui me pose le problème...