Bonjour, je dois réaliser une station météo connecté avec une Arduino uno, un Shield Ethernet et un capteur BMP280; les valeurs de température, de pression et de hauteur doivent s'afficher sur une page http, en utilisant le Shield comme serveur. Le code permet bien de créer un serveur mais pas d'avoir les valeur du capteur, pourriez vous m'aider svp:
#include <SPI.h>
#include <Ethernet.h>
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP280.h>
Adafruit_BMP280 bmp280;
Adafruit_BMP280 bmp;
byte mac[] = { 0x54, 0x34, 0x41, 0x30, 0x30, 0x31 };
IPAddress ip(192, 168, 1, 111);
EthernetServer server(80);
void setup() {
// Open serial communications
Serial.begin(57600);
Ethernet.begin(mac, ip);
server.begin();
Serial.print("IP Address: ");
Serial.println(Ethernet.localIP());
if (!bmp280.begin()) {
Serial.println("Ca marche pas dsl!");
while (true)
;
}
}
void loop() {
// listen for incoming clients
EthernetClient client = server.available();
if (client) {
Serial.println("new client");
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
Serial.write(c);
if (c == '\n' && currentLineIsBlank) {
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connnection: close");
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.println("<meta http-equiv=\"refresh\" content=\"5\">");
client.println("<br />");
//bmp280 part
client.print("Pressure (Pa): ");
client.println((float)bmp280.readPressure(), 1);
client.println(" hPa");
client.println("<br />");
client.print("Temperature (C): ");
client.println((float)bmp280.readTemperature(), 1);
client.println(" °C");
client.println("<br />");
client.print("Altitude (m): ");
client.println((float)bmp280.readAltitude(121.24), 1);
client.println(" m");
client.println("<br />");
Serial.println();
client.println("</html>");
break;
}
if (c == '\n') {
currentLineIsBlank = true;
} else if (c != '\r') {
currentLineIsBlank = false;
}
}
}
delay(100);
// close the connection:
client.stop();
Serial.println("Disconnected\n");
}
}