MicroPython es una versión ligera del lenguaje de programación Python desarrollado para programar microcontroladores, SOC y otros dispositivos de sistema integrados. Fue creado para permitir a los desarrolladores aprovechar el " fácil de aprender y usar" naturaleza de Python para el desarrollo de sistemas integrados. Con Python ahora el principal lenguaje introductorio en la mayoría de las escuelas y siendo uno de los lenguajes de programación más populares y ampliamente utilizados en todo el mundo, a través de micro-python, decenas de usuarios de Python pueden sortear la estresante curva de aprendizaje empinada asociada con el uso de C y C ++ para programar microcontroladores. Pueden comenzar a utilizar inmediatamente los conocimientos adquiridos a lo largo de los años para acceder al hardware de bajo nivel al igual que con los otros lenguajes. Micro-python es específicamente una implementación ajustada de Python 3 y, como tal, es compatible con la sintaxis de Python 3.
Si bien MicroPython aún no está en el mismo nivel de popularidad que C y C ++ para el desarrollo de sistemas integrados, su popularidad ha ido en aumento con más y más microcontroladores, IDE y placas de desarrollo que respaldan su uso. Para el tutorial de hoy, veremos una de esas placas para las que se puede desarrollar firmware usando MicroPython.
Para el tutorial de hoy, veremos cómo desarrollar el código para ESP32 usando MicroPython.
Comenzaremos por ver por qué MicroPython es bueno para ESP32 y trabajaremos en la configuración de ESP32 para MicroPython y cargando el boceto de parpadeo con MicroPython en ESP32.
¿Por qué MicroPython? (MicroPython frente a Arduino C)
Una de las formas más fáciles y probadas de programar el ESP32 es mediante el uso del IDE de Arduino, lo que significa el uso de la versión Arduino de C o C ++. C y C ++, durante décadas, han sido los dos lenguajes más populares para el desarrollo de sistemas embebidos, y la versión Arduino del lenguaje lo hizo aún más simple, lo que explica su popularidad entre los creadores y aficionados debido a la facilidad con la que se pueden desarrollar códigos. Además de esto, Arduino tiene una de las comunidades tecnológicas más grandes del mundo con nuevas bibliotecas, correcciones de software, soporte para nuevas placas, etc., que la comunidad publica a diario. Todo esto lo convierte en una herramienta formidable para programar placas de sistema integradas. La única limitación real que se podría agregar al Arduino C es el hecho de que solo funciona dentro del IDE de Arduino.Dado que el IDE es limitado y carece de algunas características que podrían ser realmente útiles al desarrollar una gran base de código, Arduino C no es el más eficiente.
MicroPython, por otro lado, es relativamente nuevo. Si bien su comunidad de usuarios está creciendo, con el soporte para más plataformas que se lanzan, su fuerza no se puede comparar con la de Arduino. Por el lado positivo, MicroPython es esencialmente una versión ajustada de Python, que es uno de los lenguajes de programación más populares del mundo y, como tal, cualquier problema que no pueda ser resuelto por la comunidad de MicroPython puede tomar información de la comunidad de Python en general.
Aparte del soporte de la comunidad, MicroPython también tiene ciertas características que lo colocan muy por encima de la clase de Arduino. Una de esas características es REPL. REPL significa Leer-Evaluar-Imprimir. Esta característica le permite conectarse a una placa y ejecutar código rápidamente sin la necesidad de compilar o cargar el código completo. Como tal, puede probar cada parte de su código a medida que los desarrolla.
Independientemente de cuál de estos dos elijas para tu proyecto, asegúrate de cuál te sirve mejor. Con eso fuera del camino, comencemos a construir el ejemplo de parpadeo usando ESP32 con MicroPython.
Componentes requeridos
Para construir el ejemplo de blink, necesitaremos los siguientes componentes;
- DOIT ESP32 DevKit v1 (1)
- Un LED (1)
- Resistencia de 100 ohmios (1)
- Cables de puente
- Protoboard (1)
Puede usar cualquiera de las otras placas basadas en ESP32 en lugar del DOIT ESP32 DevKit V1 y puede elegir trabajar con el LED integrado, lo que significa que solo necesita la placa ESP32 para este tutorial. Previamente hicimos parpadear el LED ESP32 programándolo usando Arduino IDE.
Aparte de los componentes de hardware, también necesitaremos software como Thonny IDE