Cette page fournit une simple interface de navigation pour trouver des entités décrites par une propriété et une valeur nommée. D’autres interfaces de recherche disponibles comprennent la page recherche de propriété, et le constructeur de requêtes ask.
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json| Connexion Wi-Fi de base | ||
| Avant le Setup | Importation de la bibliothèque | #include #include |
| Création de l’objet | ||
| Dans le Setup | Démarrage de la connexion | WiFi.begin(SSID, SecKey) ; // Où SSID est le nom du point d'accès Wi-Fi, et SecKey son mot de passe |
| Test de la connexion | if (WiFi.Status() == WL_CONNECTED) { (...) } | |
| Récupération de l'adresse IP | WiFi.localIP() ; | |
| Dans le Loop | Utilisation | Le test de la connexion, et la récupération de l'adresse IP peuvent aussi être utilisés dans le loop(). |
/* =========================================================================================================
*
* CODE MINIMAL RESEAU - ETAPE 1 : connexion basique au Wi-Fi
*
* ---------------------------------------------------------------------------------------------------------
* Les petits Débrouillards - décembre 2022 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
* ========================================================================================================= */
// Bibliothèques WiFi : UNE SEULE EST NECESSAIRE, choisir celle correspondant à votre matériel.
// ATTENTION AUX MAJUSCULES & MINUSCULES ! Sinon d'autres bibliothèques, plus ou moins valides, seraient utilisées.
#include // A utiliser pour le D1 Mini
//#include // A utiliser pour l'ESP32
// Définition du point d'accès Wi-Fi et de son mot de passe ("clé de sécurité")
// A REMPLACER PAR LES VERITABLES VALEURS CORRESPONDANT A VOTRE EMPLACEMENT
const char* mySSID = "MA_BOX_INTERNET";
const char* mySecKey = "MA_CLE_DE_SECURITE";
/* --------------------------------------------------------------------------------------------------------
* SETUP : Initialisation
* -------------------------------------------------------------------------------------------------------- */
void setup() {
// Initialisation de la liaison série, affichage 1er message
Serial.begin(115200);
delay(100) ;
Serial.println();
Serial.println("----------------------------------") ;
Serial.println("Exemple de connexion Wi-Fi basique") ;
Serial.println("----------------------------------") ;
// Démarrage de la tentative de connexion, avec le nom du point d'accès Wi-Fi et son mot de passe
WiFi.begin(mySSID, mySecKey) ;
// Attente de la connexion pendant 10 secondes (20 x 500 ms)
Serial.print("Connexion à "); Serial.print(mySSID) ; Serial.print(" ") ;
int tryNumber = 1 ;
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
if (++tryNumber > 20) {
Serial.println() ; Serial.println("Pas de connexion, abandon") ;
return ;
}
}
// La connexion a réussi ! On affiche l'adresse IP obtenue.
Serial.println(); Serial.print("Connecté ! Adresse IP : ");
Serial.println(WiFi.localIP());
}
/* --------------------------------------------------------------------------------------------------------------
* LOOP : fonction appelée régulièrement par le système
* ------------------------------------------------------------------------------------------------------------- */
void loop() {
/* On ne fait rien de particulier sur cet exemple */
} #include #include import network ; import ubinascii ;
ubinascii.hexlify(network.WLAN().config('mac'),':').decode()AsyncTCP
ESPAsyncWebServer
ArduinoJsonESPAsyncTCP
ESPAsyncWebServer
ArduinoJson| Site web | ||
| Avant le Setup | Importation de la bibliothèque | #include #include |
| Création du serveur web (sur le port 80) | ESP8266WebServer myWeb(80); // Pour le D1 Mini , ou ... // WebServer myWeb(80) ; // ... pour l'ESP32 | |
| Dans le Setup | Déclaration de la fonction qui s'occupera de la génération de la page web | myWeb.on ( "/", runPage01 ); |
| Démarrage du serveur web | myWeb.begin(); | |
| Dans le Loop | Traitement des requêtes web | myWeb.handleClient(); |
/* =========================================================================================================
*
* CODE MINIMAL RESEAU - ETAPE 4 : site WEB
*
* CAS A : Page HTML Basique, consultation d'une variable de la carte
*
* ---------------------------------------------------------------------------------------------------------
* Les petits Débrouillards - décembre 2022 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
* ========================================================================================================= */
// Bibliothèques WiFi et WebServer: ATTENTION, choisir celles correspondant à votre matériel.
// ATTENTION AUX MAJUSCULES & MINUSCULES ! Sinon d'autres bibliothèques, plus ou moins valides, seraient utilisées.
#include // A utiliser pour le D1 Mini
#include // A utiliser pour le D1 Mini
//#include // A utiliser pour l'ESP32
//#include // A utiliser pour l'ESP32
const char* mySSID = "AP_PetitDeb" ; // On va utiliser le mode "Access Point" pour cet exemple
const char* mySecKey = "PSWD1234" ;
// Déclaration de notre serveur web interne.
ESP8266WebServer myWeb(80); // A utiliser pour le D1 Mini
// WebServer myWeb(80) ; // A utiliser pour l'ESP32
/* --------------------------------------------------------------------------------------------------------
* webPage01 : formattage HTML de la page web.
* - En fait cette fonction doit rendre une chaîne (String) contenant l'intégralité du code HTML qui sera
* envoyé au navigateur de l'utilisateur.
* - On peut y insérer des informations de la carte, comme ici par exemple, le nom du Point d'accès (mySSID).
* Dans une véritable application, ça pourrait être la valeur d'un capteur de température.
* - Pour pouvoir débugger facilement le code HTML/Javascript sur un browser (par exemple Firefox / Outils
* supplémentaires / Outils de développement Web), il est préférable d'indenter le code à l'intérieur de la chaîne
* de caractère, et de mettre des sauts de ligne ("\n") à la fin de chaque ligne de code HTML.
* -------------------------------------------------------------------------------------------------------- */
String webPage01() {
String p;
p = "ETAPE 4 (Mini-Web) \n" ;
p += "\n" ;
p += "
\n" ;
p += " Bonjour, je suis " + String(mySSID) + "...\n" ; // C'est ici qu'on place l'information SSID.
p += "
... très heureux de te rencontrer !\n" ;
p += " \n" ;
p += "\n" ;
return p;
}
/* --------------------------------------------------------------------------------------------------------
* runPage01 : gestion de la page web
* -------------------------------------------------------------------------------------------------------- */
void runPage01() {
// Affichage de la page Web.
myWeb.send ( 200, "text/html", webPage01() );
}
/* --------------------------------------------------------------------------------------------------------
* SETUP : Initialisation
* -------------------------------------------------------------------------------------------------------- */
void setup() {
// Initialisation de la liaison série, affichage 1er message
Serial.begin(115200);
delay(100) ;
Serial.println();
Serial.println("----------------------") ;
Serial.println("Exemple de serveur WEB") ;
Serial.println("----------------------") ;
// Déclaration du mode "Point d'Accès". On s'arrête là si échec.
Serial.println("Déclaration Mode AP, SSID \"" + String(mySSID) + "\"") ;
if (!WiFi.softAP(mySSID,mySecKey)) {
Serial.println("Mode AP KO ... :-(") ;
return ;
}
// Affichage de l'adresse IP principale du Point d'Accès.
Serial.print("Mode AP OK, IP Address : ") ;
Serial.println(WiFi.softAPIP()) ;
// Définition des points d'entrée du serveur Web (un seul ici), et démarrage du serveur.
myWeb.on ( "/", runPage01 );
myWeb.begin();
}
/* --------------------------------------------------------------------------------------------------------------
* LOOP : fonction appelée régulièrement par le système
* ------------------------------------------------------------------------------------------------------------- */
void loop() {
// Traitement des requêtes web.
myWeb.handleClient();
} Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #