Comment démarrer avec Arduino Uno R4
Dans ce tutoriel, nous allons apprendre à démarrer avec Arduino Uno R4 Minima/WiFi. Nous apprendrons à travers les étapes suivantes :
- Installer le package pour Arduino Uno R4 Minima/WiFi sur Arduino IDE
- Programmation de l'Arduino Uno R4 Minima/WiFi pour afficher Hello World sur le moniteur série
- Programmation de l'Arduino Uno R4 WiFi pour créer un serveur web très simple.
Préparation du matériel
1 | × | Arduino UNO R4 Wifi | |
1 | × | Arduino UNO R4 Minima | |
1 | × | USB Cable Type-C | |
1 | × | (Recommended) Screw Terminal Block Shield for Arduino Uno | |
1 | × | (Optional) Transparent Acrylic Enclosure For Arduino Uno |
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.
Installation du package Arduino Uno R4
Contrairement à l'Arduino Uno R3, pour utiliser l'Arduino Uno R4 Minima/WiFi avec l'IDE Arduino, vous devez installer les cartes Arduino Uno R4 sur l'IDE Arduino. Par conséquent, commencez par suivre les étapes pour installer le package Arduino Uno R4 sur l'IDE Arduino :
- Ouvrez l'IDE Arduino
- Naviguez vers l'icône Gestionnaire de Cartes comme sur l'image ci-dessous :
- Tapez Arduino Uno R4 dans la zone de recherche comme sur l'image ci-dessous :
- Cliquez sur le bouton Install.
Ce processus s'applique à la fois à l'Arduino Uno R4 Minima et au WiFi.
Exécuter le programme Hello World
- Connectez l'Arduino Uno R4 Minima ou WiFi à votre PC via un câble USB Type-C
- Sur l'IDE Arduino, sélectionnez un port COM connecté à l'Arduino Uno R4 Minima ou WiFi comme sur l'image ci-dessous
- Copiez le code Hello World ci-dessous et collez-le dans l'IDE Arduino.
/*
* Ce code Arduino a été développé par newbiely.fr
* Ce code Arduino est mis à disposition du public sans aucune restriction.
* Pour des instructions complètes et des schémas de câblage, veuillez visiter:
* https://newbiely.fr/tutorials/arduino/how-to-get-started-with-arduino-uno-r4
*/
void setup() {
// mettez votre code de configuration ici, pour exécuter une fois :
Serial.begin(9600);
}
void loop() {
// mettez votre code principal ici, pour exécuter de manière répétée :
Serial.println("Hello World!");
delay(1000);
}
- Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code vers Arduino.
- Ouvrez le moniteur série en cliquant sur l'icône du moniteur série.
- Consultez le résultat sur le moniteur série, il ressemble à ce qui suit :
COM6
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Autoscroll
Clear output
9600 baud
Newline
Exemple de serveur Web en cours pour Arduino Uno R4 Wifi
/*
* Ce code Arduino a été développé par newbiely.fr
* Ce code Arduino est mis à disposition du public sans aucune restriction.
* Pour des instructions complètes et des schémas de câblage, veuillez visiter:
* https://newbiely.fr/tutorials/arduino/how-to-get-started-with-arduino-uno-r4
*/
#include "WiFiS3.h"
char ssid[] = "Your_WiFi"; // changez le SSID (nom) de votre réseau
char pass[] = "Your_WiFi_password"; // changez le mot de passe de votre réseau (utilisez pour WPA, ou utilisez comme clé pour WEP)
int keyIndex = 0; // l'indice de clé de votre réseau (nécessaire seulement pour WEP)
int status = WL_IDLE_STATUS;
WiFiServer server(80);
void setup() {
//Initialisez le port série et attendez que le port s'ouvre :
Serial.begin(9600);
while (!Serial) {
; // attendez que le port série se connecte. Nécessaire uniquement pour le port USB natif
}
// vérifiez le module WiFi :
if (WiFi.status() == WL_NO_MODULE) {
Serial.println("Communication avec le module WiFi échouée !");
// ne continuez pas
while (true)
;
}
String fv = WiFi.firmwareVersion();
if (fv < WIFI_FIRMWARE_LATEST_VERSION) {
Serial.println("Veuillez mettre à niveau le firmware");
}
// tentez de vous connecter au réseau WiFi :
while (status != WL_CONNECTED) {
Serial.print("Tentative de connexion au SSID : ");
Serial.println(ssid);
// Connectez-vous au réseau WPA/WPA2. Modifiez cette ligne si vous utilisez un réseau ouvert ou WEP :
status = WiFi.begin(ssid, pass);
// attendez 10 secondes pour la connexion :
delay(10000);
}
server.begin();
// vous êtes maintenant connecté, donc affichez le statut :
printWifiStatus();
}
void loop() {
// écoutez les clients entrants
WiFiClient client = server.available();
if (client) {
Serial.println("nouveau client");
// une requête HTTP se termine par une ligne vide
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
Serial.write(c);
// si vous êtes à la fin de la ligne (vous avez reçu un caractère de nouvelle ligne)
// et que la ligne est vide, la requête HTTP est terminée,
// vous pouvez donc envoyer une réponse
if (c == '\n' && currentLineIsBlank) {
// envoyez un en-tête de réponse HTTP standard
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: close"); // la connexion sera fermée après l'achèvement de la réponse
client.println("Refresh: 5"); // rafraîchissez la page automatiquement toutes les 5 secondes
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.print("Hello from Arduino Web Server");
client.println("</html>");
break;
}
if (c == '\n') {
// vous commencez une nouvelle ligne
currentLineIsBlank = true;
} else if (c != '\r') {
// vous avez reçu un caractère sur la ligne actuelle
currentLineIsBlank = false;
}
}
}
// donnez le temps au navigateur web de recevoir les données
delay(1);
// fermez la connexion :
client.stop();
Serial.println("client déconnecté");
}
}
void printWifiStatus() {
// affichez l'adresse IP de votre carte :
IPAddress ip = WiFi.localIP();
Serial.print("Adresse IP : ");
Serial.println(ip);
// affichez la puissance du signal reçu :
long rssi = WiFi.RSSI();
Serial.print("puissance du signal (RSSI) :");
Serial.print(rssi);
Serial.println(" dBm");
}
- Copiez le code ci-dessus et ouvrez-le avec l'IDE Arduino
- Modifiez les informations wifi (SSID et mot de passe) dans le code pour les vôtres
- Cliquez sur le bouton Upload sur l'IDE Arduino pour charger le code sur Arduino
- Ouvrez le moniteur série
- Voir le résultat sur le moniteur série.
COM6
Attempting to connect to SSID: Your_WiFi
IP Address: 192.168.0.2
signal strength (RSSI):-39 dBm
Autoscroll
Clear output
9600 baud
Newline
- Vous verrez une adresse IP. C'est l'adresse IP du serveur Web Arduino.
- Copiez l'adresse IP et collez-la dans la barre d'adresse d'un navigateur web.
- Vous verrez la page web de la carte Arduino sur le navigateur web comme ci-dessous.
- Vous verrez également la sortie ci-dessous sur le moniteur série.
COM6
Attempting to connect to SSID: Your_WiFi
IP Address: 192.168.0.2
signal strength (RSSI):-39 dBm
new client
GET /favicon.ico HTTP/1.1
Host: 192.168.0.2
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36
Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
Referer: http://192.168.0.2/
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
client disconnected
Autoscroll
Clear output
9600 baud
Newline