serveur web arduino DHT11
Hors ligneProjetvmc Le 16/04/2014 à 16:00 Profil de Projetvmc Configuration de Projetvmc

bonjour a tous j'ai un petit problème , j'ai fait mon programme mais il ya un programme avec l'adresse mac et ip et je comprend pas parce que avec un autre capteur sa marche très bien ... 


#include <SPI.h>
#include <Ethernet.h>
#include <Wire.h>
#include <dht.h>

#define dht_dpin A0 //no ; here. Set equal to channel sensor is on
#define dht_dpin1 A1


// Entrez une adresse MAC et l'adresse IP de votre commande ci-dessous.
// L'adresse IP sera fonction de votre réseau local:
byte mac [] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(172,17,50,147);

// Initialize the Ethernet server library
// with the IP address and port you want to use
// (port 80 is default for HTTP):
EthernetServer server(80);

void setup() {
/***********************************/
Serial.begin(9600);
delay(300);//Let system settle
Serial.println("Humidity and temperature\n\n");
delay(700);//Wait rest of 1000ms recommended delay before
//accessing sensor
}//end "setup()"


// démarrer la connexion Ethernet et le serveur:
Ethernet.begin(mac , ip);
server.begin();
Serial.print("server is at ");
Serial.println(Ethernet.localIP());
}


void loop() {
/*********lecture du capteur********************************/
//This is the "heart" of the program.
DHT.read11(dht_dpin);




Serial.print("humidity = ");
Serial.print(DHT.humidity);
Serial.print("% ");
Serial.print("temperature = ");
Serial.print(DHT.temperature);
Serial.println("C ");
delay(800);//Don't try to access too frequently... in theory
//should be once per two seconds, fastest,
//but seems to work after 0.8 second.

DHT.read11(dht_dpin1);


Serial.print("humidity 1= ");
Serial.print(DHT.humidity);
Serial.print("% ");
Serial.print("temperature 1= ");
Serial.print(DHT.temperature);
Serial.println("°C ");
delay(800);






}// end loop()

blinkWait();

/****************Serveur ****************************/
// écouter pour les clients entrants
EthernetClient client = server.available();
if (client) {
Serial.println("new client");
// une requête http se termine par une ligne vide
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
Serial.write(c);
// si vous avez obtenu à la fin de la ligne (reçu une nouvelle ligne
// caractère) et la ligne est vide, la requête HTTP est terminée,
// de sorte que vous pouvez envoyer une réponse
if (c == '\n' && currentLineIsBlank) {
//envoyer 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"); // la connexion est fermée après l'achèvement de la réaction
client.println("Refresh: 5"); // actualise la page automatiquement toutes les 5 sec
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
// sortie la valeur de chaque broche d'entrée analogique
for (int analogChannel = 0; analogChannel < 1; analogChannel++) {
int sensorReading = analogRead(analogChannel);
client.print("Humidité : ");
client.print(DHT.humidity);
client.print(" %");
client.print("<br />");
client.print(" Température : ");
client.print(DHT.temperature);
client.print(" °C");
client.print("<br />");
}
client.println("</html>");
break;
}
if (c == '\n') {
// vous commencez une nouvelle ligne
currentLineIsBlank = true;
}
else if (c != '\r') {
// vous avez obtenu un caractère sur la ligne courante
currentLineIsBlank = false;
}
}
}
// laisser le temps au navigateur Web pour recevoir les données
delay(1);
// fin de la communication:
client.stop();
Serial.println("client disconnected");
}}

void blinkWait() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels