Accueil > MICROPYTHON > Environnement de développement MicroPython sur esp8266 &esp32

Environnement de développement MicroPython sur esp8266 &esp32

lundi 20 avril 2020, par thebault

PNG - 562.7 ko

Le firmware Micropython permet de programmer des microcontrôleurs en python dont les cartes de développement à base d’esp8266 (Wemos D1 mini et NodeMCU) et esp32 DevKit.

PNG - 228.1 ko

Installer esptool (nécessite python 2 ou 3)

page du projet : https://github.com/espressif/esptool
Depuis un terminal

pip install esptool
      OU
pip3 install esptool
JPEG - 90.5 ko

Installer le firmware sur les cartes de développement

Configuration et installation du firmware pour cartes esp82266 D1 mini / NodeMCU : http://micropython.org/download/esp8266/
Configuration et installation du firmware pour cartes esp32 DevKit : http://micropython.org/download/esp32/


Installer l’IDE Thonny

lien : https://thonny.org/
Pour l’installer sous linux, taper dans un terminal :

pip3 install thonny

Pour Windows, il suffit de télécharger le logiciel depuis le site.


Configurer l’IDE Thonny

Le firmware Micropython permet d’avoir accès, via la liaison série sur USB à la console python de la carte de développement (REPL).

Exécuter Thonny :

  • choisir la langue
  • Exécuter → Select Interpreter  : choisir Micropython (generic)
PNG - 5.4 ko
  • Affichage puis sélectionner Fichiers, shell, variable (ou plus si nécessaire)
PNG - 29.3 ko

On se retrouve avec la disposition suivante :

JPEG - 75.4 ko

Travailler avec la console python

la console affiche par défaut la version du firmware installé. L’affichage de cette console se fait via liaison série entre la carte de développement et le PC (d’ailleurs, il n’est pas possible d’utiliser la liaison série de la carte esp8266 pour autre chose, si on laisse le prompt python actif (mais il y a possibilité de le désactiver via le fichier boot.py présent sur la carte))

MicroPython v1.12 on 2019-12-20; ESP module with ESP8266
Type "help()" for more information.
>>>

Nous allons tester quelques instructions pour vérifier le fonctionnement et constater que le microprocesseur a une fréquence de 80Mhz pour une carte esp8266

  1. >>> A=12
  2. >>> B=3
  3. >>> A+B
  4. 15
  5. >>> String = "Ceci est du texte"
  6. >>> print(String)
  7. Ceci est du texte
  8. >>> import math
  9. >>> math.sqrt(A)
  10. 3.4641
  11. >>> import machine
  12. >>> machine.freq()
  13. 80000000

Télécharger

La liste des modules présents nativement dans Micropython est accessible via la commande help(’modules’).

PNG - 46.4 ko

Exécuter un programme enregistré sur le PC

L’avantage de l’IDE Thonny c’est que l’on n’a pas besoin d’installer le fichier de notre programme sur la carte pour l’exécuter. Si on exécute un programme enregistré sur notre PC, les instructions seront transmises au REPL via la liaison série.

Cette méthode est à privilégier lors du développement. C’est seulement en phase final de réalisation d’un projet que les fichiers seront installés sur la carte

L’exemple suivant permet de tester un programme de type "hello world". Il doit être édité dans la fenêtre prévue à cet effet et enregistré sur le PC sous le nom helloWorld.py par exemple.

  1. i=1
  2. while i<4:
  3. print('hello World, numéro ',i)
  4. i = i +1

Télécharger

Après exécution (F5), on a bien l’affichage des 3 messages.


Installer le programme sur la carte

ATTENTION : pour les manipulations suivantes, il ne faut jamais supprimer le fichier boot.py

Solution 1 :

  • l’enregistrer sur la carte (Save as OU Save copy → MicroPythonDevice) sous le nom main.py . main.py est le programme qui est lancé par défaut par micropython.
  • Pour tester le programme avec un redémarrage de la carte : Exécuter → Send EOF / Soft reboot
  • pour remettre la carte à son état d’origine, il faut supprimer le fichier main.py depuis la fenêtre de gestion de fichiers de l’IDE Thonny

Solution 2  :

  • l’enregistrer sur la carte (Save as OU Save copy → MicroPythonDevice) sous le nom helloworld.py puis éditer le fichier boot.py en ajoutant à la fin :
    1. ...
    2. import helloworld

    Télécharger

  • Pour tester le programme avec un redémarrage de la carte : Exécuter → Send EOF / Soft reboot
  • Pour remettre la carte à son état d’origine, il faut supprimer la ligne import helloworld dans le fichier main.py, l’enregistrer et supprimer le fichier helloworld.py depuis la fenêtre de gestion de fichiers de l’IDE Thonny
SPIP | | Plan du site | Suivre la vie du site RSS 2.0
Habillage visuel © digitalnature sous Licence GPL