Bonjour, je suis en projet de bac STI2D et je dois envoyer des données capter via un shield meteo vers internet ave une carte ethernet.
J'ai 2 programmes qui marchent bien chacun de leurs cotés :
PROGRAMMES DES CAPTEURS
C'est le deuxieme programmes en partant du haut de cette page:
Voici le code pour ethernet :
#include <SPI.h>
#include <EthernetV2_0.h>
#define W5200_CS 10
#define SDCARD_CS 4
byte mac[] = {0x90, 0xA2, 0xDA, 0x0D, 0x05, 0xEF};
byte ip[] = {192,168,1,103};
byte serv[] = {192, 168, 1,103} ; //Enter the IPv4 address
int val ;
float tempf;
EthernetClient cliente;
String readString;
EthernetServer server(80);
void setup()
{
Serial.begin(9600);
pinMode(SDCARD_CS, OUTPUT);
digitalWrite(SDCARD_CS, HIGH);
Ethernet.begin(mac, ip);
server.begin();
Serial.println(Ethernet.localIP());
}
void loop()
{
EthernetClient client = server.available();
if (client)
{
while (client.connected())
{
if (client.available())
{
char c = client.read();
if (readString.length() < 100)
{
readString += c;
}
if (c == '\n')
{
Serial.println(readString); //print to serial monitor for debuging
client.println("HTTP/1.1 200 OK"); //send new page
client.println("Content-Type: text/html");
client.println();
client.println("<HTML>");
client.println("<HEAD>");
client.println("<TITLE>Temperature</TITLE>");
client.println("<meta http-equiv=""refresh"" content=""5"">");
client.println("</HEAD>");
client.println("<BODY style=""background-color:#C0FFF7;"">");
client.println("<H1>Temperature</H1>");
client.println("<H1>");
client.println(tempf);
client.println("</H1>");
client.println("<hr />");
client.println("
");
client.println("</BODY>");
client.println("</HTML>");
client.stop();
readString = "";
}
}
delay(1);
Serial.println("client disonnected");
}
client.stop();
}
/* if (cliente.connect(serv, 80)) { //Connecting at the IP address and port we saved before
Serial.println("connected");
cliente.print("GET /ethernet/data.php?"); //Connecting and Sending values to database
cliente.print("temperature=");
cliente.print(tempf);
//Printing the values on the serial monitor
}*/
else {
// if you didn't get a connection to the server:
Serial.println("connection failed");
}
delay(5000);
if (Serial.available() > 0) {
val = Serial.read();
tempf = val;
tempf = tempf/10;
Serial.println(tempf);
delay(50);}
Serial.print("Temperature= ");
Serial.println(tempf);
}
Pouvez vous m'aider a les fusionner afin que je puisse envoyer les données sur internet.
Merci