Partez directement avec un processeur qui embarque le wifi comme un wemos D1 par exemple. Sinon vous pouvez rajouter un esp01 à votre uno pour créer une interface wifi, ce sera dans doute moins cher que le shield wifi arduino si le prix est un soucis. Sinon le shield wifi fait le job
Vous pouvez en lire un peu plus sur le ESP-01 dans un de mes tutos (mais pas exactement ce que vous voulez car là je l’utilise en serveur web, pas client. Mais le principe est assez similaire)
(Attention les Wemos et autres solutions à base d’ESP sont en 3.3V, pas 5V)
Utilisez les balises et indentez le code, c’est illisible.. votre image montre une ERROR...
——
corrigez votre post ci dessus et rajoutez les code tags autour du code: [code]`` [color=blue]// votre code ici[/color] ``[/code].
ça doit ressembler à cela:// votre code ici
(faites aussi ctrl-T (PC) or cmd-T (Mac) dans l’IDE avant de copier le code pour qu’il soit indenté correctement)
Tu as moins d'une heure pour aller faire un tour dans les messages épinglés en haut du forum, bien les lire et remettre tes messages en ordre.... sinon >>>> poubelle.
Bonjour désolé je ne connaissais pas les réglés du forum .
j'ai remis l'image de l'affichage de mon moniteur série et de ma page web.
#include <SoftwareSerial.h>
#define DEBUG true
#define rxPin 10
#define txPin 11
#include<math.h>
int analogValue;
int pression;
int temerature;
// broche 10 de l'arduino en RX et broche 11 en TX : vous pouvez choisir d'autres broches
// connectez votre ESP8266 en mode croisé RX<=>TX
SoftwareSerial esp8266(10, 11);
void setup()
{
Serial.begin(9600); // com serie de l' ARDUINO a 9600 bauds
esp8266.begin(9600); // ESP8266 a 9600 bauds
sendData("AT+RST\r\n", 2000, DEBUG); // reinitialise le module ESP8266
sendData("AT+CWMODE=2\r\n", 1000, DEBUG); // configure en TCP
sendData("AT+CWSAP?\r\n", 2000, DEBUG); // recupere nom et mot de passe de l' ESP
sendData("AT+CIFSR\r\n", 1000, DEBUG); // recupere l'adresse IP de l' ESP
sendData("AT+CIPMUX=1\r\n", 1000, DEBUG); // configure en connexion multiple
sendData("AT+CIPSERVER=1,80\r\n", 1000, DEBUG); // ouvre le serveur sur le port 80
}
void loop()
{
if (esp8266.available()) // teste si l'ESP envoi un message
{
if (esp8266.find("+IPD,")) // avance jusqu'a trouver +IPD
{
delay(1000);
// read the analog input on pin 0:
int analogValue = analogRead(0);
// print it out in many formats:
esp8266.println(pression); // print as an ASCII-encoded decimal
int connectionId = esp8266.read() - 48;
// soustrait 48 parceque la fonction read() retourne la valeur ASCII decimale , zero (0) par exemple vaut 48 en ASCII decimal
// ci dessous serie de commande qui renvoie du texte sur le port serie (page web)
String webpage = "<h1>HAMET</h1><h2>PRESSION: bars ";
String cipSend = "AT+CIPSEND=";
cipSend += connectionId;
cipSend += ",";
cipSend += webpage.length();
cipSend += "\r\n";
sendData(cipSend, 100, DEBUG);
sendData(webpage, 100, DEBUG);
float analogV = map (analogValue, 0, 1024, 0, 16);
webpage = Serial.print(analogV);
cipSend = "AT+CIPSEND=";
cipSend += connectionId;
cipSend += ",";
cipSend += webpage.length();
cipSend += "\r,\n";
sendData(cipSend, 100, DEBUG);
sendData(webpage, 100, DEBUG);
String closeCommand = "AT+CIPCLOSE=0";
closeCommand += connectionId; // fermer la connexion
closeCommand += "\r,\n";
sendData(closeCommand, 100, DEBUG);
}
}
}
// fonction sendData utilisee pour initialiser l' ESP
String sendData(String command, const int timeout, boolean debug)
{
String response = "";
esp8266.print(command); // envoi le caractere a l' esp8266
long int time = millis();
while ( (time + timeout) > millis())
{
while (esp8266.available())
{
char c = esp8266.read(); // lit le caracter suivant
response += c;
}
}
if (debug)
{
Serial.print(response);
}
return response;
// delay 10 milliseconds before the next reading:
delay(10);
}