🛠 Premier Blink sur la UNO R4 WiFi : la première UNO 32 bits
Objectifs
Découvrir la première UNO 32 bits : la UNO R4 WiFi (référence Arduino ABX00082) repose sur le microcontrôleur Renesas RA4M1 — un Cortex-M4 cadencé à 48 MHz avec 256 Ko de flash et 32 Ko de SRAM, contre 16 MHz, 32 Ko de flash et 2 Ko de SRAM pour l'ATmega328P de l'UNO R3. Vous téléversez votre premier programme, faites clignoter la LED « L » et découvrez l'USB-C ainsi que la nouvelle plateforme IDE.
Matériel
- 1 carte Arduino UNO R4 WiFi (la R4 Minima, sans matrice ni WiFi, fonctionne aussi pour ce tuto)
- 1 câble USB-C data (les câbles de chargeur bas de gamme ne transportent que le 5 V : aucun port n'apparaît)
- PC avec Arduino IDE 2.x ou arduino-cli, plateforme « Arduino Renesas UNO Boards » installée
Code complet
// Blink — LED intégrée « L » sur la pin 13.
const uint8_t LED = 13;
void setup {
pinMode(LED, OUTPUT);
Serial.begin(115200); // le port série passe par le pont embarqué (HIC)
}
void loop {
digitalWrite(LED, HIGH);
delay(500);
digitalWrite(LED, LOW);
delay(500);
Serial.println(millis);
}
Dans l'IDE : installez la plateforme Renesas UNO, sélectionnez Arduino UNO R4 WiFi, choisissez le port affiché, Téléverser. En ligne de commande : arduino-cli compile -b arduino:renesas_uno:unoR4WiFi puis arduino-cli upload -b arduino:renesas_uno:unoR4WiFi -p <port>.
Vérification attendue
La LED « L » clignote toutes les 500 ms et le Moniteur série défile. Le programme continue de tourner une fois l'USB débranché et la carte alimentée par le jack (6–24 V acceptés) : le croquis est gravé en flash. À noter, contrairement à l'R3 : pas de reset DTR à chaque ouverture du port, le sketch ne repart pas quand on ouvre le Moniteur.
Erreurs fréquentes
- Mauvais type de carte : R4 WiFi et R4 Minima sont deux cibles distinctes ; la Minima n'a pas d'ESP32-S3 et les exemples WiFi y échouent.
- Câble USB-C de charge seul : pas de données, pas de port série.
- Oublier la limite de 8 mA par broche : pas de LED sans résistance, jamais de moteur ou de relais branché directement.
- Raisonner en spécifications AVR : l'ADC monte jusqu'à 14 bits (0–16383) et la SRAM fait 32 Ko — les vieux réflexes F et plages 0–1023 sont à revoir.
- Téléversement qui timeout sur un hub USB capricieux : le flashage passe par le pont embarqué (CMSIS-DAP) ; branchez en direct sur un port du PC.
Autres tutoriels pour cette carte
- Apprivoiser la matrice LED 12x8 intégrée
- Toucher capacitif : touchRead sans composant
- Se connecter au WiFi et lire l'heure NTP (WiFiS3)
- Inclinomètre sur la matrice : l'IMU LSM6DSV16X en I²C
- Serveur web embarqué : piloter la matrice depuis le navigateur
- Horloge persistante : RTC à pile + resynchronisation NTP
Exemples de code pour cette carte
clignotante.inoArduinobouton-poussoir.inoArduinodac-analogique.inoArduinoentree-analogique.inoArduinopwm-respiration.inoArduinoservo-balayage.inoArduino