WikiElectronique

Wiki sur l'électronique et l'informatique

Outils pour utilisateurs

Outils du site


esp32

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révisionLes deux révisions suivantes
esp32 [2018/01/02 22:12] – [Installation de l'environnement de développement] 88.164.131.165esp32 [2018/01/02 22:38] – [1er sketch de test - clignotement LED] 88.164.131.165
Ligne 99: Ligne 99:
 </code> </code>
  
 +==== Sketch exemples ====
 +
 +<note>De nombreux exemples sont fournis dans le répertoire : Documents\Arduino\hardware\espressif\esp32\libraries</note>
 +
 +==== Sketch transmission wifi ====
 +
 +Le sketch ci dessous va transmettre une trame toutes les secondes vers un serveur UDP.
 +Remplacer par **your-ssid** par le nom de votre réseau WIFI, **your-password** par le mot de passe de votre réseau WIFI et 192.168.1.10 par l'adresse IP de votre PC. 
 +
 +<code>
 +/*
 +  This sketch sends random data over UDP on a ESP32 device
 + *
 + */
 +#include <WiFi.h>
 +#include <WiFiUdp.h>
 +
 +// WiFi network name and password:
 +const char * networkName = "**your-ssid**";
 +const char * networkPswd = "**your-password**";
 +
 +//IP address to send UDP data to:
 +// either use the ip address of the server or 
 +// a network broadcast address
 +const char * udpAddress = "**192.168.1.10**";
 +const int udpPort = 2205;
 +
 +//Are we currently connected?
 +boolean connected = false;
 +
 +//The udp library class
 +WiFiUDP udp;
 +
 +void setup(){
 +  // Initilize hardware serial:
 +  Serial.begin(115200);
 +  
 +  //Connect to the WiFi network
 +  connectToWiFi(networkName, networkPswd);
 +}
 +
 +void loop(){
 +  //only send data when connected
 +  if(connected){
 +    //Send a packet
 +    udp.beginPacket(udpAddress,udpPort);
 +    udp.printf("Seconds since boot: %u", millis()/1000);
 +    udp.endPacket();
 +  }
 +  //Wait for 1 second
 +  delay(1000);
 +}
 +
 +void connectToWiFi(const char * ssid, const char * pwd){
 +  Serial.println("Connecting to WiFi network: " + String(ssid));
 +
 +  // delete old config
 +  WiFi.disconnect(true);
 +  //register event handler
 +  WiFi.onEvent(WiFiEvent);
 +  
 +  //Initiate connection
 +  WiFi.begin(ssid, pwd);
 +
 +  Serial.println("Waiting for WIFI connection...");
 +}
 +
 +//wifi event handler
 +void WiFiEvent(WiFiEvent_t event){
 +    switch(event) {
 +      case SYSTEM_EVENT_STA_GOT_IP:
 +          //When connected set 
 +          Serial.print("WiFi connected! IP address: ");
 +          Serial.println(WiFi.localIP());  
 +          //initializes the UDP state
 +          //This initializes the transfer buffer
 +          udp.begin(WiFi.localIP(),udpPort);
 +          connected = true;
 +          break;
 +      case SYSTEM_EVENT_STA_DISCONNECTED:
 +          Serial.println("WiFi lost connection");
 +          connected = false;
 +          break;
 +    }
 +}
 +</code>
 +
 +L'ESP32 va transmettre toutes les secondes une trame vers le port 3333 de votre PC. 
 +Pour visualiser les trames envoyées, il suffit d'utiliser un serveur UDP comme [[https://www.hw-group.com/products/hercules/index_en.html|HERCULE]] 
 +
 +Démarrer HERCULE et dans l'onglet UDP mettre 3333 dans le port à utiliser puis cliquer sur "Listen"
 +
 +{{::hercule_esp32.png?400|}}
 ===== Liens utiles ===== ===== Liens utiles =====
  
esp32.txt · Dernière modification : 2024/06/09 18:09 de jp

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki