Arduino webserver wlan
Dans ce tutoriel ESP32, nous allons vérifier comment obtenir à distance le tas libre du dispositif et comment le réinitialiser. Les tests de ce tutoriel ESP32 ont été réalisés en utilisant un dispositif ESP-WROOM-32 de DFRobot intégré dans une carte ESP32 FireBeetle.
Dans ce tutoriel ESP32, nous allons vérifier comment obtenir à distance le tas libre du dispositif et comment le réinitialiser. Ceci sera fait sur le noyau Arduino et en utilisant les bibliothèques de serveur web HTTP asynchrone, qui ont été introduites dans ce tutoriel.
L’objectif de ce guide est de montrer comment nous pouvons exploiter les bibliothèques de serveur HTTP pour créer une API qui peut être utilisée, par exemple, par un utilisateur technique pour diagnostiquer à distance les problèmes de l’ESP32. Naturellement, il s’agit d’un exemple très simple qui peut être amélioré dans ce but.
Au début du code, nous incluons toutes les bibliothèques nécessaires à la mise en place du serveur. Nous n’avons pas besoin d’inclure d’autres bibliothèques pour obtenir le tas libre ou réinitialiser le dispositif, car ces fonctionnalités sont disponibles par défaut dans le noyau Arduino.
Arduino wifi http request
Ensuite, écrivons une courte fonction prepareHtmlPage(), qui retournera une variable de classe String contenant le contenu de la page web. Nous passerons ensuite cette variable au serveur pour qu’il la transmette à un client.
Dans notre exemple, le type de contenu est text/html, la connexion sera fermée après le service et le contenu devra être redemandé par le client toutes les 5 secondes. L’en-tête se termine par une ligne vide. Cela permet de distinguer l’en-tête du contenu à suivre.
Le contenu contient deux balises HTML de base, une pour indiquer le type de document HTML <!DOCTYPE HTML> et une autre pour marquer le début <html> et la fin </html> du document. À l’intérieur se trouve une valeur brute lue à partir de l’entrée analogique de l’ESP, analogRead(A0), convertie en type String.
Mettez à jour le ssid et le mot de passe dans le sketch pour correspondre aux informations d’identification de votre point d’accès. Chargez le sketch sur le module ESP et ouvrez un moniteur série. Vous devriez d’abord voir la confirmation que le module s’est connecté au point d’accès et que le serveur Web a démarré.
L’exemple ci-dessus montre qu’un serveur web sur ESP8266 peut être configuré en un rien de temps. Un tel serveur peut facilement répondre aux demandes de matériels et de logiciels beaucoup plus puissants comme un PC avec un navigateur Web. Consultez d’autres classes comme ESP8266WebServer qui vous permettent de programmer des applications plus avancées.
Arduino webserver esp32
ptr +=”.button {display : block;width : 80px;background-color : #3498db;border : none;color : white;padding : 13px 30px;text-decoration : none;font-size : 25px;margin : 0px auto 35px;cursor : pointer;border-radius : 4px;}\n” ;
#include <WebServer.h>Comme nous configurons l’ESP32 en mode Point d’accès (AP), il va créer un réseau WiFi. Par conséquent, nous devons définir son SSID, son mot de passe, son adresse IP, son masque de sous-réseau et sa passerelle IP./* Mettez votre SSID et votre mot de passe */
IPAddress subnet(255,255,255,0);Ensuite, nous déclarons un objet de la bibliothèque WebServer, afin de pouvoir accéder à ses fonctions. Le constructeur de cet objet prend le port (où le serveur va écouter) comme paramètre. Comme 80 est le port par défaut pour HTTP, nous utiliserons cette valeur. Maintenant vous pouvez accéder au serveur sans avoir besoin de spécifier le port dans l’URL.// déclarer un objet de la bibliothèque WebServer
bool LED2status = LOW;Inside Setup() FunctionNous configurons notre serveur HTTP avant de l’exécuter réellement. Tout d’abord, nous ouvrons une connexion série à des fins de débogage et définissons les ports GPIO sur OUTPUT.Serial.begin(115200) ;
Serveur web Arduino
Pour pouvoir compiler, exécuter et détecter et afficher automatiquement BOARD_NAME sur les cartes nRF52840/nRF52832, vous devez copier tout le répertoire nRF52 Packages_Patches dans le répertoire Adafruit nRF52 (~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0).
Pour pouvoir compiler, exécuter et détecter et afficher automatiquement BOARD_NAME sur les cartes Arduino SAMD (Nano-33-IoT, etc), vous devez copier l’ensemble du répertoire Arduino SAMD Packages_Patches dans le répertoire Arduino SAMD (~/.arduino15/packages/arduino/hardware/samd/1.8.13).
Pour pouvoir compiler, exécuter et détecter et afficher automatiquement BOARD_NAME sur les cartes Adafruit SAMD (Itsy-Bitsy M4, etc), vous devez copier l’ensemble du répertoire Adafruit SAMD Packages_Patches dans le répertoire Adafruit samd (~/.arduino15/packages/adafruit/hardware/samd/1.7.9).
Pour pouvoir compiler, exécuter et détecter et afficher automatiquement BOARD_NAME sur les cartes Seeeduino SAMD (XIAO M0, Wio Terminal, etc), vous devez copier tout le répertoire Seeeduino SAMD Packages_Patches dans le répertoire Seeeduino samd (~/.arduino15/packages/Seeeduino/hardware/samd/1.8.2).