PikaScript: una implementación ligera de Python que se ejecuta en STM32 y otras MCU de gama baja

PikaScript es un motor Python ultraligero que puede ejecutarse en microcontroladores con tan solo 4 KB de RAM y 32 KB de Flash, mientras que el más popular MicroPython requiere al menos 256kB de espacio de código y 16kB de RAM.

PikaScript se desarrolló inicialmente para ejecutarse en MCU STM32G030C8 y STM32F103C8, lo que significa que, por ejemplo, funciona en placa BluePill, pero también se ha portado a otras plataformas como WCH CH582 RISC-V MCU, WinnerMicro W806 Microcontrolador C-Sky, así como otros similares Raspberry Pi RP2040, ESP32-C3, etc… pero no son tan compatibles y faltan algunas funciones.

PikaScript Python STM32 MCU

PikaScript también permite vincular la función C a un módulo de Python a través del precompilador de Pika. PikaScript puede ejecutarse completamente en el microcontrolador, pero también admite sistemas operativos en tiempo real como RT-Thread y VSF (Versaloon Software Framework ), así como Linux. Al igual que MicroPython, usa un subconjunto de Python 3, pero supongo que tiene incluso menos funciones debido a que ocupa menos espacio.

Pika-Pi-Zero es la placa oficial del proyecto, pero solo puedo encontrarla en Taobao en este momento. Se basa en STM32G030C8T6/STM32G070CBT6 MCU. Es posible generar un proyecto predeterminado para su objetivo de hardware y sistema operativo a través de una herramienta en línea.

Generador de proyectos PikaScript

También encontrará la fuente directamente en Github junto con documentación sobre algunas muestras (GPIO, USART, ADC, salida PWM, pantalla RGB , y la demostración del juego Snake). Se nos dice que el uso máximo de RAM de estas demostraciones es de solo 3,56 KB o 4,56 KB si se incluye la pila de 1 KB, mientras que el uso máximo de almacenamiento es de 30,4 KB. Si tomamos como referencia el microcontrolador STM32F103C8T6 con 20 KB de RAM y 64 KB de flash, eso significa que el firmware PikaScript y el código de muestra utilizan menos del 25 % de RAM y menos del 50 % de Flash.

Si desea más detalles y/o hacer preguntas, Lyon, uno de los desarrolladores de PikaScript, también dará una charla titulada «PikaScript: un motor de Python ultraligero bajo RT-Thread» en 2022 RT-Thread IoT OS Global Tech Conference tendrá lugar del 1 al 3 de junio en línea.

Traducido del artículo en inglés «PikaScript – A lightweight Python implementation that runs on STM32 and other low-end MCUs«.

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
StarFive RISC-V SBC