Ah ok, je pensé que la déclaration, la fonction et l'affichage suffisait, donc voila le scketch.
#include <SPI.h>
#include <Ethernet.h>
#include <Server.h>
#include <Client.h>
//--- déclaration du tableau d'adresse MAC ---
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
//---- tableau de l'adresse IP de la carte Arduino
byte ip[] = { 192,168,1,55 }; // le PC a pour IP : 192.168.1.93
byte passerelle[] = { 192, 168, 1, 1 }; // l'adresse du PC de connexion
byte masque[] = { 255, 255, 255, 0 }; // idem masque sous-réseau du PC : 255.255.255.0
// --- Déclaration des objets utiles pour les fonctionnalités utilisées ---
//--- création de l'objet serveur ----
EthernetServer serveurHTTP(80); // crée un objet serveur utilisant le port 80 = port HTTP
//******************** **** ****************************************
#define ThermistorPIN0 0
#define ThermistorPIN1 1
#define ThermistorPIN2 2
#define ThermistorPIN3 3
#define ThermistorPIN4 4
#define ThermistorPIN5 5
#define ThermistorPIN6 6
#define ThermistorPIN7 7
// float Rf=1000;
String efficacite = 0; //Valeur efficacité du systeme en %
boolean Auto= false; //Au lancement le mode est en manuel
float Rpad = 80000; //Resistance diviseur de tension
float T0 ,T1,T2,T3,T4,T5,T6,T7; //variable des 8 capteurs de T°
float Temp; //temperature mesurée
float Thermistor(int RawADC) {
float Rserie = 100000;
long Resistance=((1024 * Rserie / RawADC) - Rserie);
Temp = log(Resistance); // sauver le log de la résistance mesurée
Temp = 1 / (5.9120e-03 + (-4.7272e-04 * Temp) + (1.8902e-06 * Temp * Temp * Temp));
Temp = Temp - 273.15;
return Temp;
}
int CalculEfficacite(double insufl, double Exterieur, double Interieur){
int Efficacite = ((insufl - Exterieur)/(Interieur - Exterieur))*100;
return Efficacite;
}
void AutoOff()
{
Auto= true;
}
void setup() {
//---- initialise la connexion Ethernet avec l'adresse MAC, l'adresse IP et le masque
Ethernet.begin(mac, ip, passerelle, masque);
//---- initialise le serveur ----
serveurHTTP.begin();
//----initialise connexion série
Serial.begin(9600); // initialise connexion série à 9600 bauds
}
void loop(){
// --- ici instructions à exécuter par le programme principal ---
T0 = Thermistor(analogRead(ThermistorPIN0));//HS
T1 = Thermistor(analogRead(ThermistorPIN1));//HS
T2 = Thermistor(analogRead(ThermistorPIN2));
// T3 = Thermistor(analogRead(ThermistorPIN3));
// T4 = Thermistor(analogRead(ThermistorPIN4));
// T5 = Thermistor(analogRead(ThermistorPIN5));
T6 = Thermistor(analogRead(ThermistorPIN6));
T7 = Thermistor(analogRead(ThermistorPIN7));
if(Auto)
{ efficacite = (String(CalculEfficacite(T4, T5, T3))+" %");
}
// crée un objet client basé sur le client connecté au serveur
EthernetClient client = serveurHTTP.available();
if (client) { // si l'objet client n'est pas vide
while (client.connected()) { // tant que le client est connecté
if (client.available()) { // si des octets sont disponibles en lecture, le test est vrai si il y a au moins 1 octet disponible
char c = client.read(); // lit l'octet suivant reçu du client (pour vider le buffer au fur à mesure !)
} // --- fin client.available
else { // si pas de caractères disponibles = requete client terminée
// envoi d'une entete standard de réponse http
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
// envoie les chaines de caractères voulues = du code HTML
client.println("<HTML>");
client.print("<HEAD>");
client.print("<TITLE />Control</title>");//Titre de la page
client.print("<script type='text/javascript'>function reFresh() { location.reload(true) } window.setInterval('reFresh()',1000); </script>");
client.print ("<body style=background-color:black>");//Fond ecran noir
client.println("<font size='16' color='white'><center>Home control</center></font>");//Police titre en vert
client.println("<hr />");//ligne
client.println("
");//retour à la ligne
client.println("<center><table>");//border=3 border cellpading=5>"); //Ajout d'un tableau
client.println("<table border width=800 height=400 ");
client.println("<CAPTION><font color='green'size='6'>Indicateurs systeme </CAPTION></font>");
client.println("
");
client.print("<input type='button' value='Auto' onClick= AutoOff() />");
client.println("
");
client.print("<tr><th><font color='#EFBC45'size='4'>Secteur de controle</th><th><font color='#EFBC45'size='4'>Emplacement sondes</th><th><font color='#EFBC45'size='4'>Temperatures / Etat</th><th><font color='#EFBC45'size='4'>Hygrometrie</th></tr>");
client.print("<tr><td align= center rowspan='3'><font color='#EFECCA'size='4'>Recuperation air vicie</td><td align= center><font color='#EFECCA'size='4'> Cuisine </td><td align= center><font color='#EFECCA'size='4'>");
client.print(T0);
client.print("</td><td align= center><font color='#EFECCA'size='4'>0</td></tr>");
client.print("<tr><td align= center><font color='#EFECCA'size='4'>Buanderie </td><td align= center><font color='#EFECCA'size='4'>");
client.print(T1);
client.print("</td><td align= center><font color='#EFECCA'size='4'>0</td></tr>");
client.print("<tr><td align= center rowspan='2'><font color='#EFECCA'size='4'>VMC</td><td align= center><font color='#EFECCA'size='4'> VMC maison </td><td align= center><font color='#EFECCA'size='4'> Actif / inactif </td></tr>");
client.print("<tr><td align= center><font color='#EFECCA'size='4'> VMC garage </td><td align= center><font color='#EFECCA'size='4'> Actif / inactif </td></tr>");
client.print("<tr><td align= center><font color='#EFECCA'size='4'> Efficacite </td><td align= center><font color='#EFECCA'size='4'> </td><td align= center><font color='#EFECCA'size='4'>");
client.print(efficacite);
client.print("</td></tr>");
client.println("</table></center>
</BODY></HTML>");
break;
}
}
// on donne au navigateur le temps de recevoir les données
delay(1);
// fermeture de la connexion avec le client
client.stop();
}
}