Pico (Raspberry-Pi)

Promotions

Fabricants

Déjà vus

Pico (RP2040) - Microcontrôleur 2 coeurs Raspberry-Pi

RASPBERRY-PICO

Microcontrôleur Raspberry-Pi Pico

  • RP2040 Cortex M0+ @ 133 MHz, 2 coeurs
  • 2 Mio Flash
  • 265 Kio SRAM
  • 30x GPIO @ 3.3V (26 entièrements disponibles)
  • 6x ADC 12bits (3 entièrements disponibles)
  • 16x PWM
  • 2x UART, 2x I2C, 2x SPI
  • SD IO, VGA IO
  • SWD debug port (Open OCD)

Plus de détails

En stock

Achat en volume (remises)

Quantité Remise Économie
5 0,15 € Au moins 0,75 €
10 0,40 € Au moins 4,00 €

4,50 € TTC

Description

Le microcontrôleur Raspberry-Pi Pico, un double coeur surpuissant pour vos développements C++ ou MicroPython

Voici le tout premier microcontrôleur créé par le fondation Raspberry-Pi, le RP2040. Il s'agit d'un Cortex-M0+ double coeurs à 133 Mhz épaulé par une mémoire flash de 2 Mio (QSPI). Le RP2040 dispose aussi d'une mémoire RAM dépassant les 256 Kio (~265Kio), ce qui fait quand même un mastodonte dans son domaine.

Sous MicroPython, le RP2040 dispose également d'un espace Flash (~ 128Kio) réservé au système de fichiers MicroPython.

Les 26 GPIOs de la carte offrent des caractéristiques biens intéressantes: il y a 6 bus (2x I2C, 2x SPI, 2x UART) qu'il est possible de localiser à de très nombreux emplacements sur les GPIOs. Rassurez-vous, les amateurs MicroPython disposent d'une configuration matérielle par défaut.  L'autre point digne d'intérêt c'est la disponibilité de 16 canaux PWM, tous les GPIOs disponibles disposent de fonctionnalité PWM. Enfin, la carte dispose également de 3 entrées analogiques en résolution 12 bits (500.000 échantillons par seconde).

Si la carte ne dispose pas de lecteur pour carte SD, le RP2040 dispose d'une interface SDIO. Les plus téméraire pourrons explorer l'interface VGA décrite dans le manuel de conception matériel pour RP2040 (voir détails sur pico.raspberrypi.org).

Finalement, le connecteur microUSB permet au RP2040 d'offrir un support USB Client/Hôte 1.1.

Brochage du RaspberryPi-Pico

C/C++ ou MicroPython

Le Pico se programme en MicroPython ou en C++. Pour MicroPython, la fondation offre un firmware pré-compilé (fichier U2F) qu'il ne reste plus qu'a le téléverser sur le microcontrôleur. MicroPython peut fonctionner indépendamment sur les deux coeurs (module _thread) sans mécanisme de d'inter-blocage Python entre les threads. Il s'agit donc d'une vraie exécution concurrente, attention a bien protéger la mémoire partagée.

Pour les développements C/C++, la fondation s'appuie sur une chaîne de compilation open-source qui produit un fichier U2F à téléverser sur le Pico. Le support du débogage sur le Pico est assuré via OpenOCD.

Toute l'information nécessaire est disponible sur pico.raspberrypi.org

Mode DFU & fichier U2F

Le Pico se programme simplement grâce au mode DFU. Presser le bouton "Bootsel" lors de la mise sous tension fais passer le microcontrôleur en mode DFU (Device Firmware Upgrade). Dans ce mode, le microcontrôleur expose la mémoire Flash comme un disque USB sur lequel il suffit de glisser le fichier U2F fournit par le compilateur sur le disque pour reprogrammer la plateforme. Une fois le fichier U2F complètement téléverser sur la carte, celle-ci redémarre pour exécuter le nouveau programme.

Pour mettre MicroPython sur votre Pico, passer en mode DFU puis glisser le firmware MicroPython (U2F) dans le lecteur. Après le redémarrage, MicroPython est actif sur la carte. Après plus besoin du mode DFU.

Programmation sous MicroPython

Bien que le RP2040 dispose des ressources nécessaires (USB 1.1 Hôte et client), ce support n'est pas activé dans le firmware MicroPython. En conséquence, le système de fichier MicroPython n'est pas exposé via le connecteur USB. Par conséquent, seul des outils comme RShell ou Ampy permettent de manipuler le système de fichier présent sur le Pico.

REPL est actif sur la port USB (Serial-over-USB) et sur UART0 (GP0 & GP1).

PIO - programmation des IO

PIO (Programmable IO) est un langage de bas-niveau offre de vrais avantages concernant le traitement de données et manipulations des entrées/sorties en bas niveau. PIO offre des machines à état fini (StateMachine) associé à un GPIO et à une programme PIO (qui manipule le GPIO). Le programme sera exécuter à une fréquence entre 2000 Hz et 125.000.000 Hz (125 MHz). PIO permet d'envisager la réalisation d'application "time-critical" comme, par exemple, une sortie VGA.

CMS Ready

Le Pico est prévu est prêt pour le breadboard et pour la soudure en CMS. Soudez y des connecteurs et il peut être branché sur une platine de prototypage/breadboard.

Les utilisateurs avancés pourrons aussi l'intégrer directement sur leur propre carte comme un composant CMS. Les contacts découpés en demi-lune permettent de souder plus facilement le Pico sur une plaque disposant de l'empreinte Adéquate.

Composant Fritzing

Fritzing est un excellent outil permettant aux néophytes de dessiner des schémas avec composants électroniques directement sur des platines d'essais. Ces schémas/graphiques restent très facile à lire et permettent une communication optimal du savoir dans un monde des makers/apprentissage/Neophytes (un outil de reve pour l'éducation).
Nous aimons beaucoup Fritzing pour cette approche DIY... les plus aguerri opterons pour un outil comme Kicad.
Le composant Fritzing est directement disponible sur pico.raspberrypi.org .

Contenu

Pour chaque commande, vous recevrez un carte RaspberryPi-Pico seule.

Si vous voulez utiliser votre Pico sur un breadboard, il sera nécessaire d'y souder des connecteur (pinHeader), les pinHeader ne sont pas inclus... mais vous pourrez facilement vous en procurer ici.
La fondation recommande de souder les connecteurs pointant vers le bas pour les GPIO (et pointant vers le haut pour les 3 broches de débogage)

Ressources

Commentaires