MicroPython est une version légère du langage de programmation Python développé pour la programmation de microcontrôleurs, de SOC et d'autres périphériques système embarqués. Il a été créé pour permettre aux développeurs de tirer parti de la fonctionnalité « facile à apprendre et à utiliser» nature de python pour le développement de systèmes embarqués. Avec Python désormais le principal langage d'introduction dans la plupart des écoles et étant l'un des langages de programmation les plus populaires et les plus utilisés dans le monde, grâce au micro-python, de nombreux utilisateurs de Python sont en mesure de contourner la courbe d'apprentissage abrupte et stressante associée à l'utilisation de C et C ++ pour programmer des microcontrôleurs. Ils peuvent immédiatement commencer à utiliser les connaissances acquises au fil des ans pour accéder au matériel de bas niveau comme avec les autres langages. Micro-python est spécifiquement une implémentation allégée de Python 3 et, en tant que telle, est compatible avec la syntaxe de python 3.
Bien que MicroPython ne soit pas encore au même niveau de popularité que C et C ++ pour le développement de systèmes embarqués, sa popularité est en augmentation avec de plus en plus de microcontrôleurs, IDE et cartes de développement prenant en charge son utilisation. Pour le didacticiel d'aujourd'hui, nous examinerons l'une de ces cartes pour lesquelles un micrologiciel peut être développé à l'aide de MicroPython.
Pour le didacticiel d'aujourd'hui, nous examinerons le développement du code pour l'ESP32 à l'aide de MicroPython.
Nous allons commencer par examiner pourquoi MicroPython est bon pour ESP32 et travailler notre chemin à travers la configuration de l'ESP32 pour MicroPython et le téléchargement de l'esquisse clignotante avec MicroPython sur l'ESP32.
Pourquoi MicroPython? (MicroPython contre Arduino C)
L'un des moyens les plus simples et les plus éprouvés de programmer l'ESP32 consiste à utiliser l'IDE Arduino, ce qui signifie l'utilisation de la version Arduino de C ou C ++. C et C ++, depuis des décennies, sont les deux langages les plus populaires pour le développement de systèmes embarqués, et la version Arduino du langage l'a rendu encore plus simple, ce qui explique sa popularité parmi les fabricants et les amateurs en raison de la facilité avec laquelle les codes peuvent être développés. En plus de cela, Arduino possède l'une des plus grandes communautés technologiques au monde avec de nouvelles bibliothèques, des correctifs logiciels, un nouveau support de carte, etc. étant publiés quotidiennement par la communauté. Tout cela en fait un formidable outil de programmation de cartes système embarquées. La seule vraie limitation que l'on pourrait attacher à l'Arduino C est le fait qu'il ne fonctionne que dans l'IDE Arduino.L'IDE étant limité et dépourvu de certaines fonctionnalités qui pourraient vraiment être utiles lors du développement d'une grande base de code, l'Arduino C n'est pas le plus efficace.
MicroPython, en revanche, est relativement nouveau. Alors que la communauté de ses utilisateurs se développe, avec la prise en charge de plus de plates-formes, sa force ne peut être comparée à celle de l'Arduino. Sur le plan positif, MicroPython est essentiellement une version allégée de python qui est l'un des langages de programmation les plus populaires au monde et, en tant que tel, tout problème qui ne peut pas être résolu par la communauté MicroPython peut prendre des informations de la communauté python en général.
Outre le support de la communauté, MicroPython a également certaines fonctionnalités qui le placent bien au-dessus de la classe de l'Arduino. L'une de ces fonctionnalités est le REPL. REPL signifie Read-Evaluate-Print. Cette fonctionnalité vous permet de vous connecter à une carte et d'exécuter du code rapidement sans avoir besoin de compiler ou de télécharger l'intégralité du code. En tant que tel, vous pouvez tester chaque partie de votre code au fur et à mesure que vous les développez.
Indépendamment de celui que vous choisissez pour votre projet, assurez-vous de ce qui vous sert le mieux. Avec cela à l'écart, passons à la création de l'exemple blink en utilisant ESP32 avec MicroPython.
Composants requis
Pour créer l'exemple de clignotement, nous aurons besoin des composants suivants;
- DOIT ESP32 DevKit v1 (1)
- Une LED (1)
- Résistance 100 Ohm (1)
- Fils de cavalier
- Planche à pain (1)
Vous pouvez utiliser l'une des autres cartes basées sur ESP32 à la place du DOIT ESP32 DevKit V1 et vous pouvez choisir de travailler avec la LED intégrée, ce qui signifie que vous n'avez besoin que de la carte ESP32 pour ce tutoriel. Auparavant, nous faisions clignoter la LED ESP32 en la programmant à l'aide de l'IDE Arduino.
Outre les composants matériels, nous aurons également besoin de logiciels tels que Thonny IDE