PikaScript 1.8 可用,這是用於微控制器的 Python 語言的變體

PikaScript 1.8 專案已經發布,開發了一個緊湊的引擎,用於用 Python 編寫微控制器應用程式。 PikaScript 不依賴外部依賴項,可以在具有 4 KB RAM 和 32 KB 快閃記憶體的微控制器上運行,例如 STM32G030C8 和 STM32F103C8。 相比之下,MicroPython 需要 16 KB RAM 和 256 KB 閃存,而 Snek 需要 2 KB RAM 和 32 KB 閃存。 該專案代碼是用 C 語言編寫的,並根據 MIT 許可證分發。

PikaScript 提供了Python 3 語言的子集,支援語法元素,例如分支和循環語句(if、while、for、else、elif、break、 continue)、基本運算子(+ - * / < == >)、模組、封裝、繼承、多型、類別和方法。 Python 腳本在初步編譯後在裝置上執行 - PikaScript 首先將 Python 程式碼轉換為內部 Pika Asm 字節碼,該字節碼在特殊的 Pika Runtime 虛擬機器中的終端裝置上執行。 它支援直接在硬體之上或在 RT-Thread、VSF(Versaloon 軟體框架)和 Linux 環境中運作。

PikaScript 1.8 可用,這是用於微控制器的 Python 語言的變體

另外,值得注意的是 PikaScript 腳本與 C 語言程式碼整合的便利性 - 用 C 語言編寫的函數可以連結到程式碼,這允許 PikaScript 的實現使用用 C 語言編寫的舊專案的開發。 現有的開發環境如Keil、IAR、RT-Thread Studio和Segger Embedded Studio可用於開發C模組。 綁定在編譯階段自動產生;用 Python 程式碼在檔案中定義 API 就足夠了,C 函數到 Python 模組的綁定將在 Pika 預編譯器啟動時執行。

PikaScript 1.8 可用,這是用於微控制器的 Python 語言的變體

PikaScript 聲稱支援 24 種微控制器,包括各種型號 stm32g*、stm32f*、stm32h*、WCH ch582、ch32*、WinnerMicro w80*、Geehy apm32*、Bouffalo Lab bl-706、Raspberry Pico、ESP32*、Bouffalo Lab bl-3、Raspberry Pico、ESP264 為了無需設備即可快速開始開發,提供模擬器或基於STM32G030C8T6 微控制器的Pika-Pi-Zero 開發板,具有64 KB Flash 和8 KB RAM,支援典型週邊介面(GPIO、TIME、IIC、RGB、 KEY) 、LCD、RGB)。 開發人員也準備了線上專案產生器和套件管理器 PikaPackage。

新版本實現了基於引用計數的記憶體管理,並增加了對虛擬建構函數(工廠方法)的支援。 使用 valgrind 工具包診斷記憶體問題。 新增了將 Python pc 檔案編譯為字節碼並將其打包到韌體中的支援。 已經實現了在韌體中使用多個Python檔案而無需使用檔案系統的能力。

來源: opennet.ru

添加評論