Aller au contenu

Installer Python sur un microcontrôleur

Pourquoi Python?

Tout simplement parce que mes besoins sont simples et aussi parce que depuis quelques années les microcontrôleurs à notre disposition sont puissants.

Par exemple un Raspberry Pi Pico intègre

  • un ARM 2 coeurs Cortex M0
  • 264 Ko de RAM
  • 2 Mo de mémoire Flash

Mais aussi parce que l'implémentaion de l'interpréteur Micro-python ou de son fork Circuitpython permets à celui-ci de jouer le role de "micro-OS" et de simplifier l'accés à de tel matériel. Vous trouverez ici de belles explications de l'intéret de ce portage.

Qui vous permets un large choix de microcontrôleurs. MicroPhython

illustration de MicroPhython.fr

Il y a un débat autour des deux portages de l'interpréteur python sur les micro-controleurs.

Mais globalement le passage par un interpréteur Python raccourci bougrement le travail dans un environnement de maquetage. ainsi que la somme de compétence à acquérir pour aborder la programmation des Microcontrôleurs.

C'est une évolution majeure, puisque par le passé on réalisé un programme en language de haut niveau puis le programme réalisé dans le langage de haut niveau était compilé dans le langage assembleur conçu par le constructeur du microcontroleur.

Puis ce programme ainsi compilé était injecté du PC dans la mémoire programmable du microcontroleur.

Loin du 'edit-save-run' actuel avec python.

Micro-python ou Circuitpython

Personnellement je préfère CircuitPython mais n'étant pas un utilisateur avancé, je vous recommande de lire cet avis

L'installation

Concernant l'installation sur un Raspberry Pi Pico la procédure est la même pour les deux interpréteurs.

  1. Télécharger le fichier UF2 de l'interpréteur que vous voulez utiliser.

  2. Redémarrer votre Pico en maintenant le bouton BOOTSEL enfoncé.

  3. copier le fichier UF2 sur le montage USB RPI-RP2

    une fois la copie finie le micorcontroleur redémarre.

Là réside un différence en MicroPython et CircuitPython. L'un monte un drive USB (Circuitython), pas l'autre ....

Nous verrons que d'autres différences existent

Choisir un IDE

Dans les IDE en français Environnement de Développement informatique, pour Python il y a

  • le poids lourd spécialisé Pycharm
  • les poids généralistes Visual Studio Code , Atom
  • les éditeurs de texte comme geany, vim.
  • les poids plumes spécialisés ( thony, Mu-editor)

Je vais parler de ces deux là.

thony thony

Mu-editor mu-editor

Comme vous pouvez le voir ils n'ont pas une interface très complexe. :-)

L'Installation

Elles sont très semblables sur Debian Buster, utilisant toutes les deux APT.

Mais on peut aussi choisir l'installation au travers du gestionnaire de paquet de Python. ( pip )

Je dirais que mu-editor est plus convivial et plus tourné vers Circuitpython.

Voici les deux fenêtres de choix de l'interpréteur.

Dans mu-editor elle est proposé lors du premier lancement choix-interp

Alors que ce même choix est bien caché dans les options Thonny. Option-thony

Il en est de même pour plusieurs situations.