Skip to Content

Programmation du Pico W5 avec l’IDE Arduino

Programmation du Pico W5 avec l’IDE Arduino

Apprenez à programmer le Raspberry Pi Pico W5 avec l’IDE Arduino. Raspberry Pi RP2350 Pico W5La

Dans ce tutoriel, vous apprendrez à démarrer avec cette carte.

Pièces requises

Vous aurez besoin de la Raspberry Pi RP2350 Pico W5. Et si vous souhaitez connecter du matériel externe pour tester le port GPIO, quelques câbles, résistances, LED et une breadboard seront utiles.

Raspberry Pi RP2350 Pico W5

Câble USB C

Dupont wire set

Jeu de fils Dupont

Half_breadboard56a

Breadboard

Kit de résistances & LED

Makerguides is a participant in affiliate advertising programs designed to provide a means for sites to earn advertising fees by linking to Amazon, AliExpress, Elecrow, and other sites. As an Affiliate we may earn from qualifying purchases.

Caractéristiques de la carte Raspberry Pi Pico W5

Le Pico W5 est un microcontrôleur basé sur le design du Raspberry Pi Pico W. Il utilise la même puce microcontrôleur RP2350 avec une fréquence allant jusqu’à 150 MHz et un processeur ARM Cortex M0+ dual-core.

Cependant, il a été amélioré au niveau de l’interface USB, de la capacité de flash et des performances compatibles Bluetooth. Plus important encore, la carte supporte une opération double bande Wi-Fi 2.4 GHz et 5 GHzn, ainsi que le Bluetooth basse consommation et Bluetooth 5.0.

L’image suivante montre le dessus et le dessous de la carte. Le connecteur USB-C et les antennes 2.4 et 5 GHz sont facilement reconnaissables.

Top and Bottom of the Raspberry Pi Pico W5 Board
Dessus et dessous de la carte Raspberry Pi Pico W5

La carte dispose d’un bouton RESET, d’un bouton BOOT et d’une LED intégrée à côté du bouton BOOT.

Spécifications

Le tableau suivant liste les principales caractéristiques techniques de la carte :

Specification of the Elecrow RP2350 Pico W5 Board
Spécifications de la carte Pico W5 (source)

Brochage de la carte Pico W5

L’image ci-dessous montre le brochage de la carte Pico W5. Il y a 24 broches GPIO avec PWM, deux interfaces I2C, et quatre convertisseurs analogique-numérique (ADC). La LED intégrée est connectée au GPIO 25. Notez que la carte utilise un port USB type C pour l’alimentation et fonctionne en 3.3V.

Pinout of the Elecrow RP2350 Pico W5 Board
Brochage de la carte Pico W5 (source)

Installation du core RP2350

Avant de pouvoir programmer le Pico W5, vous devez d’abord installer le core RP2350. Allez dans Fichier -> Préférences et ouvrez la boîte de dialogue Préférences

File -> Preferences Menu
Menu Fichier -> Préférences

Dans la boîte de dialogue Préférences, allez à l’onglet Paramètres. En bas, vous verrez « URLs supplémentaires du gestionnaire de cartes : ». Cliquez sur le bouton à droite (marqué en jaune) pour ouvrir l’éditeur d’URL

Settings Tab in Preferences Dialog
Onglet Paramètres dans la boîte de dialogue Préférences

Dans l’éditeur d’URL, ajoutez l’URL suivante à la liste (marquée en jaune ci-dessous) :
« https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json »

Add package_rp2040_index URL to board manager
Ajout de l’URL package_rp2040_index au gestionnaire de cartes

Le package_rp2040_index supporte les puces RP2040 et RP2350. Comme vous pouvez le voir, j’ai aussi installé les cores ESP8266 et ESP32 mais vous n’avez besoin que du core RP2350 pour ce tutoriel.

Installation des cartes RP2350

Ensuite, nous devons installer les cartes RP2350. Allez dans Outils -> Carte -> Gestionnaire de cartes et cherchez RP2350 avec la barre de recherche. Installez les cartes Raspberry Pi Pico/RP2040/RP2350 par Earle F. Philhower. Après l’installation, cela devrait ressembler à ceci.

Install Raspberry Pi Pico/RP2040/RP2350 board
Installer la carte Raspberry Pi Pico/RP2040/RP2350

Sélectionnez la carte Raspberry Pi Pico 2

Une fois l’installation du core RP2350 terminée, connectez le Pico W5 au port USB de votre ordinateur. Ensuite, allez dans le gestionnaire de cartes et sélectionnez la carte « Raspberry Pi Pico 2 » comme montré ci-dessous :

Raspberry Pi Pico 2 in Bord Manager
Raspberry Pi Pico 2 dans le gestionnaire de cartes

La carte devrait être reconnue par l’IDE Arduino et vous devriez la voir connectée à un port COM via USB (voir capture d’écran ci-dessus). Nous sommes maintenant prêts à programmer le Pico W5.

Programme Blink pour le Pico W5

Commençons par le programme Blink typique. Il fera clignoter la LED intégrée de la carte toutes les secondes :

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);  
  delay(1000);                     
  digitalWrite(LED_BUILTIN, LOW);   
  delay(1000);                      
}

Cliquez sur le bouton Upload de l’IDE Arduino et le code devrait être téléversé. Si c’est réussi, la LED intégrée commencera à clignoter.

Si le téléversement échoue, vous devrez peut-être appuyer (et/ou maintenir) le bouton BOOT avant ou pendant le téléversement. Cela ne devrait être nécessaire qu’une seule fois car le core arduino-pico dispose de auto-reset support. En général, je n’ai eu aucun problème pour flasher la carte.

Test du GPIO du Pico W5

Pour tester le GPIO et le PWM du Pico W5, j’ai connecté une LED avec une résistance de 220Ω au GPIO 9 et à la masse. Voir le circuit ci-dessous :

LED connected to GPIO 9
LED connectée au GPIO 9

Le petit programme de test suivant fait varier la luminosité de la LED, et fonctionnait parfaitement :

#define LED  9

void setup() {
  pinMode(LED , OUTPUT);
}

void loop() {
  for (int b = 0; b <= 255; b++) {
    analogWrite(LED , b);
    delay(5);
  }
  for (int b = 255; b >= 0; b--) {
    analogWrite(LED , b);
    delay(5);
  }
}

Test du Wi-Fi 5 GHz du Pico W5

Une des principales caractéristiques de la carte Pico W5 est le support du Wi-Fi 5 GHz. J’ai essayé le code Wi-Fi habituel mais je n’ai pas réussi à le faire fonctionner. C’est probablement parce que la carte Pico W5 d’Elecrow n’est pas encore sur la liste des cartes supportées de Raspberry Pi Pico Arduino core.

Cependant, j’ai trouvé un exemple dans le demo code pour la carte Pico W5, et cela a fonctionné. Voici une version légèrement modifiée de ce code de démonstration.

#define Serial2_RX 5
#define Serial2_TX 4
#define SET_WIFI_MODE "AT+WMODE=3,1"
#define SET_WIFI_SSID_PASSWORD "AT+WJAP=\"SSID\",\"PWD\""

void setup() {
  Serial.begin(115200);
  Serial2.setRX(Serial2_RX);
  Serial2.setTX(Serial2_TX);
  Serial2.begin(115200);
  delay(1000);
  UART2_test();
}

void UART2_test() {
  clear_serial();
  bool ok_flag = false;
  Serial2.println(SET_WIFI_MODE);
  while (!ok_flag) {
    if (Serial2.find("OK")) {
      delay(1000);
      ok_flag = true;
      Serial.println("Set WIFI Mode Ok!");
    }
  }
  clear_serial();
  ok_flag = 0;
  Serial2.println(SET_WIFI_SSID_PASSWORD);
  while (!ok_flag) {
    if (Serial2.find("OK")) {
      delay(1000);
      ok_flag = true;
      Serial.println("WIFI Connected!");
    }
  }
}

void clear_serial() {
  while (Serial2.read() >= 0);
  while (Serial.read() >= 0);
}

void loop() {
}

Vous devrez remplacer les valeurs SSID et PWD par le ssid et le mot de passe de votre réseau Wi-Fi.

Conclusions

J’espère que ce tutoriel vous a été utile pour démarrer avec la carte Pico W5 d’Elecrow. Le processeur RP2350 du Pico W5 est une amélioration significative du RP2040 mais pour l’instant (mars 2025) le support logiciel est un peu limité.

Plus précisément, la carte Pico W5 n’est pas encore sur la liste des cartes supportées de Raspberry Pi Pico Arduino core. Des applications simples comme le GPIO fonctionnent mais je n’ai pas réussi à faire fonctionner les bibliothèques Wi-Fi ou Bluetooth avec le Pico W5.

Notez aussi que le demo code pour le Pico W5 contient des erreurs ou semble viser une version plus ancienne/différente de la carte Pico W5 qui utilise le RP2040 au lieu du RP2350. Par exemple, le programme blink dans le code de démonstration utilise GPIO 12 (ou 16) pour la LED intégrée alors que c’est en réalité le 25. De plus, le guide d’installation montre la carte Raspberry Pi Pico/RP2040 mais pour moi seule la carte Raspberry Pi Pico 2 a fonctionné.

Enfin, il existe plusieurs cartes Pico différentes ce qui peut prêter à confusion. Par exemple, il y a la Pico W5 and the Pico 2W, et le Pico W5 peut être équipé d’une puce microcontrôleur RP2350 or a RP2040.

Au fait, si vous souhaitez utiliser un Pico avec un écran, jetez un œil à notre tutoriel Scribble on CrowPanel Pico 4.3″ Display.

Bon bricolage ; )

Liens

Voici quelques liens que j’ai trouvés utiles lors de la rédaction de cet article :

Schémas

Les images ci-dessous sont des extraits du schéma de la carte Pico W5 avec le microcontrôleur RP2350 provenant du lien suivant : Schematic & PCB.

Microcontrôleur

RP2350 microcontroller
Microcontrôleur RP2350

Wi-Fi et Bluetooth

BW16 chip for Wi-Fi and Bluetooth
Puces BW16 pour Wi-Fi et Bluetooth

LED intégrée

Built-in LED
LED intégrée

Alimentation

Power Supply
Alimentation