Raspberry PI Actualité

Programmation avec le microcontrôleur abordable

Par Thomas, le 21 février 2021 — 6 minutes de lecture
Programmation avec le microcontrôleur abordable

La Fondation Raspberry Pi a sorti un pur microcontrôleur à un prix très bas: le Raspberry Pi Pico. Cela diffère de ses «frères» mais est plus facile à programmer que rarement auparavant. Nous pouvons écrire notre première petite application en utilisant MicroPython et / ou C ++. De plus, le Pico est livré avec de nombreux GPIO à bord et même l’un ou l’autre capteur.

Dans cet article, nous allons d’abord examiner les différences entre les autres modèles de Raspberry Pi, puis créer notre premier petit programme pour le Pico.

Que peut faire le Raspberry Pi Pico?

Le nouvel appareil de la Fondation Raspberry Pi diffère de ses prédécesseurs. Le microcontrôleur minuscule se vend 4 $ hors taxes et hors expédition, ce qui le rend plus que compétitif. Ses «concurrents» directs sont d’autres microcontrôleurs tels qu’Arduino ou ESP8266.

Les spécifications officiellement publiées du Pico sont les suivantes:

  • Puce de microcontrôleur RP2040
  • Processeur Cortex M0 + à bras double cœur, vitesse d’horloge flexible jusqu’à 133 MHz
  • 264 Ko de SRAM et 2 Mo de mémoire flash intégrée
  • Le soudage direct sur la carte est possible
  • USB 1.1 avec prise en charge de l’appareil et de l’hôte
  • Mode d’économie d’énergie et veille prolongée
  • Programmation par glisser-déposer via USB
  • 26 broches GPIO (3,3 V)
  • 2 × SPI, 2 × I2C, 2 × UART, 3 × ADC 12 bits, 16 × canaux PWM contrôlables
  • RTC et minuterie sur la puce
  • Capteur de température
  • Bibliothèques à virgule flottante sur puce
  • 8 × automates à états d’E / S programmables (PIO) pour la prise en charge des périphériques définis par l’utilisateur

Tout cela semble très intéressant au début. Le prix bas en particulier est également un point culminant. Les 26 broches programmables se trouvent aux emplacements suivants. Certains ont plusieurs fonctions:

Brochage du Raspberry Pi Pico

Affectation des broches du Raspberry Pi Pico (aller au PDF)

Raspberry Pi Pico vs Model 4B vs Zero – Quelles sont les différences?

Les caractéristiques du Pico se lisent toutes très bien – mais quelles sont les différences techniques avec un Raspberry Pi 4 Model B ou un Raspi Zero?

Premièrement, la différence la plus importante: le Pico est un microcontrôleur et non un mini-ordinateur. Cela signifie que le Pico n’a pas de système d’exploitation car son domaine d’activité est quelque peu différent: un pur microcontrôleur a généralement des tâches plus simples qu’il doit effectuer rapidement. Un système d’exploitation nous permet d’exécuter de nombreux processus en parallèle, mais il est plus lent d’exécuter des tâches individuelles.

Donc, la première question que vous devez vous poser est: à quoi sert le Raspberry Pi? Pour des tâches simples (par exemple, collecter valeurs mesurées, commutation circuits, réception et envoi de signaux), le Pico est un bon choix. De plus, si vous souhaitez résoudre des problèmes plus complexes (par exemple l’apprentissage automatique) ou démarrer applications de bureau, alors vous devriez utiliser un Raspberry Pi normal. Et si vous ne voulez pas dépenser beaucoup d’argent, vous pouvez également prendre le modèle Zero, qui coûte la même chose (sans Wi-Fi).

Que votre projet nécessite une connexion Internet ou une connexion Bluetooth peut également être important. Le Pico n’apporte pas ces deux éléments hors de la boîte.

En d’autres termes, vous pourriez maintenant vous poser la question «pourquoi ai-je besoin d’un Raspberry Pi Pico»? Il y a plusieurs raisons à cela, la principale étant le très faible consommation d’énergie.

Selon le programme, le Pico peut se débrouiller avec une petite batterie Li-Po pour plusieurs jours voire des semaines. En mode veille / veille, le Pico a besoin de <0,2 mA (= 0,006 watts) et seulement environ 90 mA sous charge (rendu graphique).

Ce qui est également pratique pour de nombreux capteurs: Le convertisseur analogique-numérique (ADC) intégré. Bien que nous ne puissions pas lire facilement les signaux analogiques avec les grands modèles, cela est facilement possible avec le Pico. Et ce n’est même pas tout: si vous avez peu d’accessoires et que vous voulez simplement commencer tout de suite, par exemple, vous pouvez inclure le capteur de température intégré dans votre code (comme nous le ferons dans un instant).

Comparaison de taille des versions Raspberry Pi

Comparaison de taille des versions Raspberry Pi Pico, Zero, 4B

Tailles Raspberry Pi (Pico, Zero, 4B)

Vue de dessus de divers modèles de Raspberry Pi

Aussi, un autre point convaincant est le très bon Documentation. Se familiariser avec les microcontrôleurs est plus difficile pour les débutants que pour les personnes expérimentées, c’est pourquoi la documentation est très importante.

Pièces matérielles requises pour notre premier test

Dans la version de base (sans câble ni en-tête à broches), le Pico ne coûte que 5 à 6 $. Pour un Arduino Nano (original), vous devez généralement poser au moins deux fois plus et l’Arduino est beaucoup plus lent pour cela. La situation est similaire avec l’ESP8266. L’ESP présente d’autres avantages, mais un modèle comparable (basé sur ESP32) serait également plus cher ici (mais avec WiFi).

Dans l’étape suivante, nous avons besoin des pièces suivantes pour programmer le Pico:

Vous avez également besoin d’un ordinateur Mac, Windows ou Linux. En passant, vous pouvez également programmer le Pico en utilisant un Raspberry Pi, ce que je recommande et que j’ai également fait.

Pour les jeunes adolescents qui ont peu ou pas d’expérience avec les microcontrôleurs ou la programmation en général, le Raspberry Pi Pico offre une introduction très agréable et facile. Divers kits et ensembles Raspberry avec d’autres pièces contiennent tout ce dont vous avez besoin pour commencer. Alors aussi un joli cadeau d’anniversaire!

Flasher le programme MicroPython sur le Raspi Pico

Retour Raspberry Pi Pico

Pico back avec affectation des broches

Vous vous demanderez maintenant comment nous programmons le Pico Pi. Nous pouvons utiliser soit MicroPython ou C ++ comme langage de programmation pour cela. Le programme compilé est simplement glissé et déposé sur le système de fichiers du Pico. Le Pico Pi se connecte automatiquement en tant que périphérique de stockage de masse.

Tout d’abord, nous terminons le Pico: pour ce faire, nous téléchargeons le Fichier MicroPython UF2 (alternative pour C ++) de la Fondation Raspberry Pi site Internet. Suivez ensuite ces étapes:

  1. Le Pi ne doit pas être alimenté (pas de connexion USB).
  2. Maintenez le bouton BOOTSEL enfoncé.
  3. Connectez le Pico Pi à votre Raspberry Pi / PC / Mac via USB.
  4. Relâchez le bouton BOOTSEL.
  5. Transférez le fichier MicroPython UF2 par glisser-déposer.

Sur notre Raspberry Pi Model B, nous ouvrons maintenant un terminal et entrons dans ce qui suit:

sudo apt install minicom

Ensuite, nous nous connectons simplement au Pico:

minicom -o -D /dev/ttyACM0

Appuyez plusieurs fois sur Entrée ou sur CTRL + D (ce qui redémarrera le Pico). Ensuite, nous sommes dans la console Python et pouvons entrer des commandes. Par exemple, vous pouvez y afficher un premier bonjour monde

print("Hello, Pico!")

ou laissez la LED embarquée clignoter pendant une minute:

from machine import Pin
import time
led = Pin(25, Pin.OUT)
for i in range(60):
  led.value(i % 2)
  time.sleep(1)

Pour en savoir plus, je recommande ce tutoriel pour apprendre à programmer avec Python.

Bien sûr, vous pouvez également faire beaucoup plus: vous pouvez également lire (et contrôler) les modules via SPI, I2C, UART ou analogique. Vous pouvez trouver des tonnes d’autres exemples dans la Fondation Dépôt Github.

Laisser le script Python s’exécuter en permanence sur le Pico Pi

Le problème avec le code précédent est qu’il ne s’exécute pas en permanence et est oublié après un redémarrage. Par conséquent, nous écrivons un script Python que nous chargeons sur le Pi. Nous ouvrons l’IDE Thonny Python pour cela:

Raspberry Pi Python IDE ThonnySous «Exécuter»> «Sélectionner l’interpréteur», vous pouvez sélectionner «MicroPython (Raspberry Pi Pico)». Sélectionnez ensuite «Carte en mode FS» (vous devrez peut-être redémarrer le Pico).

Thonny IDE Pico PiSi vous ne voyez pas une telle entrée ici, vous devez probablement mettre à jour l’IDE Thonny:

sudo apt-get update && sudo apt-get upgrade python3-thonny --yes

Pour enregistrer le fichier sur le Pico, sélectionnez «Fichier»> «Enregistrer sous»> «Raspberry Pi Pico» et entrez un nom (par exemple «pico-blink.py»). Si vous voulez que le fichier démarrer automatiquement au redémarrage, vous devrez le nommer main.py.

Au fait: si vous préférez utiliser C ++ pour la programmation, ce n’est pas non plus un problème. Pour cela, vous pouvez suivre ceci guider.

Plus d’idées de projets pour le Pico

Bien sûr, beaucoup plus est possible avec le RPi Pico. Voici quelques idées spontanées:

  • Rénovation du W-LAN avec ESP-01: Le Pico Pi n’a pas de Wi-Fi, mais il présente de nombreux autres avantages. Étant donné que l’ESP8266 peut être adressé via l’interface série, nous pouvons laisser le transfert de données s’exécuter dessus.
  • W2812 NeoPixel: Les bandes LED populaires peuvent également être contrôlées avec un pico. On peut l’utiliser pour éclairer des pièces ou présenter des effets de couleurs, par exemple. Comme nous n’avons besoin que de quelques GPIO, nous pouvons en construire beaucoup plus sur le côté.
  • Lisez tous les capteurs: à peu près tous les capteurs que nous pouvons lire avec un Raspberry Pi, un Arduino ou un ESP peuvent également être utilisés avec le Pico Pi. La même chose s’applique à de nombreux modules.

Conclusion

Le Pico Pi est le premier Raspberry Pi qui n’est pas un ordinateur monocarte, mais un pur microcontrôleur. Ainsi, il est très efficace en termes de consommation d’énergie et est livré avec de nombreuses autres fonctionnalités que des microcontrôleurs similaires n’ont pas – ou seulement moyennant des frais supplémentaires. Pour très peu d’argent, il existe une alternative plus que appropriée aux cartes Arduino avec le Pico Pi.

Ce que j’ai aussi aimé: contrairement au Raspberry Pi à carte unique, le Pico a étiqueté toutes les broches. Cela aide lors de la recherche d’erreurs et lorsque vous ne souhaitez plus rechercher l’affectation des broches. J’aurais mieux aimé que le haut soit également étiqueté, mais peut-être que cela viendra avec la prochaine version.

Enfin, je suis bien sûr intéressé par quel projet vous prévoyez ou avez déjà construit avec le Raspberry Pi Pico et sur quels sujets les tutoriels sont-ils souhaités?

  • Programmer avec Arduino pour les Nuls en s'amusant mégapoche
  • PICKit3 Emulateur de Programme Microchip avec câble USB, Fil Dupond Pic Kit 3
    PICKit 3 est un nouveau clone de programmateur. L'appareil est identique à l'unité Microchip, et coûte moins cher! Il peut être utilisé avec l'outil de programmation PIC gratuit populaire, MPLABX. PICkit3 In-Circuit Debugger / Programmer Clone utilise la logique de débogage en circuit intégrée dans chaque puce avec mémoire flash pour fournir un débogueur matériel et un programmeur peu coûteux. MPLAB PICkit3 permet le débogage et la programmation des microcontrôleurs PIC et dsPIC Flash à un prix abordable grâce à la puissante interface graphique de l'environnement de développement intégré (IDE) MPLAB. Le MPLAB PICkit3 est connecté au PC du concepteur en utilisant une interface USB pleine vitesse.
  • DollaTek Pickit3 PICKIT 3 Programmeur Programmation Offline Simulation microcontrôleur PIC Chip
    USB (pleine vitesse 12 Mbits/S interface à l'hôte PC) Real-temps d'exécution MPLAB IDE compatible (exemplaire gratuit inclus) Intégré dans plus de tension/court-circuit moniteur Micrologiciel évolutif de PC/web télécharger
Thomas

Thomas

Fan de Raspberry Pi de la première heure, je suis l'évolution de ces micro-pc depuis maintenant 5 ans. En plus de l'actualité je propose de nombreux tutoriels pour vous aider à exploiter pleinement votre nano-ordinateur côté domotique ou retro-gaming.