Serveur d'impression

Affichage données arduino sur la page web [Résolu] – Bien choisir son serveur d impression

Le 21 juillet 2019 - 3 minutes de lecture

D'après ce que j'ai compris il faut écrire un script dans le code HTML afin d'afficher la valeur du capteur.

Mon programme Arduino pour le capteur est celui ci, il marche et j'ai les résultats sur le moniteur série:

#comprendre

#comprendre

Adafruit_BMP085 bmp;

void setup()

Serial.begin (9600);

bmp.begin ();

boucle vide ()

Serial.print ("Temperature =");

Serial.print (bmp.readTemperature ());

Serial.println ("* C");

Serial.print ("Pressure =");

Serial.print (bmp.readPressure ());

Serial.println ("Pa");

Serial.println ();

retard (500);

Mon programme pour afficher une page Web présente sur la carte SD du bouclier Ethernet, qui marche aussi aussi:

#comprendre

#comprendre

#comprendre

#comprendre

#comprendre

#comprendre

#comprendre

#comprendre

// adresse MAC de l'autocollant du bouclier Ethernet sous la carte

octet mac[] = 0xXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX;

IPAddress ip (172, 16, 20, 2); //

Serveur EthernetServer (80); // crée un serveur sur le port 80

Fichier webFile;

void setup()

Ethernet.begin (mac, ip); // initialise le périphérique Ethernet

server.begin (); // commence à écouter les clients

Serial.begin (9600); // pour le débogage

// initialise la carte SD

Serial.println ("Initializing SD card …");

if (! SD.begin (4))

Serial.println ("ERROR – Échec d'initialisation de la carte SD!");

revenir; // l'initialisation a échoué

Serial.println ("SUCCESS – Carte SD initialisée.");

// vérifier le fichier index.htm

if (! SD.exists ("controle.htm"))

Serial.println ("ERREUR – Impossible de trouver le fichier index.htm!");

revenir; // impossible de trouver le fichier d'index

Serial.println ("SUCCESS – Fichier index.htm trouvé.");

boucle vide ()

{

Client EthernetClient = server.available (); // essaie d'obtenir un client

if (client) {// client obtenu?

boolean currentLineIsBlank = true;

while (client.connected ()) {

if (client.available ()) // données client disponibles à la lecture

char c = client.read (); // lit 1 octet (caractère) du client

// la dernière ligne de la demande du client est vide et se termine par n

// répond au client seulement après la dernière ligne reçue

if (c == ' n' && currentLineIsBlank)

// envoie un en-tête de réponse http standard

client.println ("HTTP / 1.1 200 OK");

client.println ("Content-Type: text / html");

client.println ("Connection: close");

client.println ();

// envoyer une page Web

webFile = SD.open ("controle.htm"); // ouvrir un fichier de page Web

si (fichier Web)

while (webFile.available ())

client.write (webFile.read ()); // envoyer une page Web au client

webFile.close ();

Pause;

// chaque ligne de texte reçue du client se termine par r n

si (c == ' n')

// dernier caractère sur la ligne du texte reçu

// commence une nouvelle ligne avec le caractère suivant lu

currentLineIsBlank = true;

sinon si (c! = ' r')

// un caractère de texte a été reçu du client

currentLineIsBlank = false;

// fin si (client.available ())

} // end while (client.connected ())

retarder (1); // donne le temps au navigateur Web pour recevoir les données

client.stop (); // ferme la connexion

} // fin si (client)

J'arrive à afficher cette page quand je tape l'adresse IP de mon Arduino dans mon navigateur:

Ce que je cherche c'est d'afficher les valeurs acquises par le capteur sur la page Web à coté de "Température"

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.