Lugar de encuentro de todas las personas entusiastas de Python a lo largo de Chile

Introducción a MicroPython

Python para micro-controladores

Micro Python es una re-implementación del lenguaje Python específicamente de la versión 3.4 para micro-controlares, fue desarrollado por el programador australiano Damien P George y fue lanzado el 2014 en Kickstarter para obtener financiación junto a una placa de desarrollo llamada PyBoard siendo un éxito en la recaudación de fondos.

Está implementado en el lenguaje C, para la arquitectura de procesador ARM, se debe de portar a versiones específicas de cada procesador ARM, sin embargo, ha sido portado a las placas de desarrollo mas populares y también cuenta con una versión para x86 para sistemas operativos tipo UNIX.

Se podría pensar en Micro Python como un microsistema operativo que se instala en el micro-controlador y te entrega una Shell (REPL) en la cual puede ejecutar comandos y scripts. La conexión es serial-USB a través de un cable conectado al computador, websokets u otro método.

Debido a que Micro Python es de código libre, cada versión portada por otros, puede variar en sus librerías causando una especie similitud a lo que pasa en el mundo de GNU/Linux con sus cientos de distribuciones.

Hay varias placas de desarrollo compatible con Micro Python, cada una tiene su mercado y cubre necesidades generales o especificas.

  1. PyBoard: Es la placa oficial, cuenta con ranura sd, y algunas versiones con acelerómetro.

  2. ESP: Dos modelos principales esp32 y esp8622, se venden en forma de módulos, Pero también hay disponibles placas que ya los tienen instalados, para distintos tipos de necesidades.

  3. Wipy: Especializado en el internet de las cosas, soporta 'wpa enterprise', y una construcción de calidad superior.

  4. Familia Stm32: Placas de desarrollos generales y específicos

  5. Espruino Pico: micro placa de desarrollo, que corre por defecto una implementación de JavaScript(espruino).

  6. Micro:bit: placa de desarrollo orientada a la educación, cuenta con todo un ecosistema,Editor de bloques y texto, firmware y hardware.

  7. Adafruit CircuitPython: Se basan en los esp y el Atmel SAMD51 y cuenta con su propia versión de micropython orientado al aprendizaje y principiantes.

Pros, Contras y Algo mas.

Pros: Unos de los puntos fuertes, es el rápido desarrollo de prototipos funcionales, y todos los beneficios que trae programar en Python.

Contras: El uso de recursos de memoria y procesamiento es alto, pero te permite trabajar cómodamente.( esto depende de la placa de desarrollo y la versión de MicroPython)

Algo más: Las diferentes placas de desarrollo compatibles en el mercado, pueden tener bibliotecas especificas, o versiones modificas adaptadas para sus propios propósitos, por lo cual, una solución creada puede que no funcione del todo o directamente no funcione en otra placa o fork de MicroPython, sin embargo, a nivel de algoritmo tendrán gran compatibilidad, y solo será necesario cambiar parte de la sintaxis correspondiente

Algunos Videos.

Ponencia de Jesus Cea, MicroPython PyconES.

ESP8622, luces led y botom.

Introducción Pycom.

Micro:bit Tutorial.

STM32F405RG Clon pyboard


Categoría: tutorial