Programmation avec l' IDE ARDUINO

II - Programmation avec l' IDE ARDUINO

Installation sous Windows

Télécharger et installer, si ce n'est déjà fait, l'éditeur IDE Arduino ici: www.arduino.cc

Version 2.0.4: https://downloads.arduino.cc/arduino-ide/arduino-ide_2.0.4_Windows_64bit.exe

le module utilisé dans cette activité est celui-ci: 

Connecter le module ESP32-WROOM à l'ordinateur avec un câble micro-USB

Windows doit détecter automatiquement la carte ESP32-WROOM

Clic droit sur le "PC" / Gérer

Gestionnaire de périphériques

Ports (COM et LPT)

Silicom Labs CP210x USB to UART Bridge (COM10) 

  • COM10 est le port utilisé sur mon ordinateur, sur votre ordinateur le port COM utilisé sera peut-être différent, mais vous pouvez le renommer sans aucun problème.

Configuration De L'IDE Arduino

Configuration IDE Arduino

Fichier / Préférences

Dans <URL de gestionnaire de carte supplémentaires> 
Cliquer sur l’icône et ajouter https://dl.espressif.com/dl/package_esp32_index.json

Puis cliquer sur le bouton "OK" de la fenêtre <URL de gestionnaire de carte supplémentaires>
Enfin cliquer sur le bouton "OK" de la fenêtre <Préférences>


Sélection et configuration de la Carte ESP32

Une fois la bibliothèque esp32 by Espressif System installée, sélectionner la carte EPS32 Dev Module




Vérifier et/ou modifier les paramètres de la carte Esp32 comme indiqué ci-dessous


Carte: "ESP32 Dev Module"


Port "COM10"   ! Votre n° de port COM 


CPU Frequency: "240MHz (WIFI/BT)"

Core Debug Level: "None"

. . . .

Flash Frequency: "80MHz"    ! Fréquence

Flash Mode: "QIO"

Flash Sizes "4MB (32Mb)"

. . . .

Partition scheme: "Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)"

PSRAM: "Disabled"

Upload Speed: "115200"   ! Vitesse de transfert



Vérifier avec le code Blink

Pour vérifier le bon fonctionnement du ESP32-WROOM, nous pouvons utiliser le code Blink

Fichier / Exemples / 01.Basics / Blink

Nous voulons faire clignoter la DEL présente sur le Module ESP32 (Led interne = pin1)

/*

  Blink

  Turns an LED on for one second, then off for one second, repeatedly.

*/

int Led=1;     // Ajouter Led sur la broche 1


void setup() {

  // initialize digital pin LED_BUILTIN as an output.

  pinMode(Led, OUTPUT);

}

// the loop function runs over and over again forever

void loop() {

  digitalWrite(Led, HIGH);  // turn the LED on (HIGH is the voltage level)

  delay(1000);                      // wait for a second

  digitalWrite(Led, LOW);   // turn the LED off by making the voltage LOW

  delay(1000);                      // wait for a second

}

Enregistrer le code (Blink_Esp32.ino) et cliquer sur "Vérifier"


Code WiFi-Scan

Vérification du WiFi de la carte ESP32-WROOM

Fichier / Exemples (Exemples pour ESP32 Dev Modules) / WiFi / WiFiScan (WiFiScan_ESP32.ino)

/*

 *  This sketch demonstrates how to scan WiFi networks.

 *  The API is based on the Arduino WiFi Shield library, but has significant changes as newer WiFi functions are supported.

 *  E.g. the return value of `encryptionType()` different because more modern encryption is supported.

 */

#include "WiFi.h"


void setup()

{

    Serial.begin(115200);

    // Set WiFi to station mode and disconnect from an AP if it was previously connected.

    WiFi.mode(WIFI_STA);

    WiFi.disconnect();

    delay(100);

    Serial.println("Setup done");

}


void loop()

{

    Serial.println("Scan start");

    // WiFi.scanNetworks will return the number of networks found.

    int n = WiFi.scanNetworks();

    Serial.println("Scan done");

    if (n == 0) {

        Serial.println("no networks found");

    } else {

        Serial.print(n);

        Serial.println(" networks found");

        Serial.println("Nr | SSID                             | RSSI | CH | Encryption");

        for (int i = 0; i < n; ++i) {

            // Print SSID and RSSI for each network found

            Serial.printf("%2d",i + 1);

            Serial.print(" | ");

            Serial.printf("%-32.32s", WiFi.SSID(i).c_str());

            Serial.print(" | ");

            Serial.printf("%4d", WiFi.RSSI(i));

            Serial.print(" | ");

            Serial.printf("%2d", WiFi.channel(i));

            Serial.print(" | ");

            switch (WiFi.encryptionType(i))

            {

            case WIFI_AUTH_OPEN:

                Serial.print("open");

                break;

            case WIFI_AUTH_WEP:

                Serial.print("WEP");

                break;

            case WIFI_AUTH_WPA_PSK:

                Serial.print("WPA");

                break;

            case WIFI_AUTH_WPA2_PSK:

                Serial.print("WPA2");

                break;

            case WIFI_AUTH_WPA_WPA2_PSK:

                Serial.print("WPA+WPA2");

                break;

            case WIFI_AUTH_WPA2_ENTERPRISE:

                Serial.print("WPA2-EAP");

                break;

            case WIFI_AUTH_WPA3_PSK:

                Serial.print("WPA3");

                break;

            case WIFI_AUTH_WPA2_WPA3_PSK:

                Serial.print("WPA2+WPA3");

                break;

            case WIFI_AUTH_WAPI_PSK:

                Serial.print("WAPI");

                break;

            default:

                Serial.print("unknown");

            }

            Serial.println();

            delay(10);

        }

    }

    Serial.println("");

    // Delete the scan result to free memory for code below.

    WiFi.scanDelete();

    // Wait a bit before scanning again.

    delay(5000);

}

Enregistrer le code, vérifier et téléverser

Ouvrir le Moniteur Série

La vitesse du moniteur série doit être à la même valeur que la vitesse de la carte EPS32 DEV Module

Si la vitesse du moniteur série est à 9600 bauds = Affichage incorrect

Si la vitesse du moniteur série est à 115200 bauds = Affichage correct


Le moniteur série affiche les réseaux Wi-Fi détectés. ( SSID, RSSI, Canal et Clé )

Scan start

Scan done

6 networks found

Nr | SSID                             | RSSI | CH | Encryption

 1 | MaBox-1A2B3C                     | -56  |  1 | WPA2

 2 | Mon_WiFi_Secure                  | -67  | 11 | WPA2-EAP

 3 | NVR083a2xxxxxxx                  | -68  | 13 | WPAI

 4 | Livebox-xxxx                     | -82  |  7 | WPA+WPA2

 5 | Bbox-DCxxxxxx                    | -84  |  9 | WPA+WPA2

 6 | SFR-xxxxxx                       | -84  |  3 | WPA+WPA2

Créé avec HelpNDoc Personal Edition: Générateur d'aides CHM gratuit