マイクロコントローラー用の Python 言語のバリアントである PikaScript 1.8 が利用可能になりました

PikaScript 1.8 プロジェクトがリリースされ、Python でマイクロコントローラー用のアプリケーションを作成するためのコンパクトなエンジンを開発しました。 PikaScript は外部依存関係に関連付けられておらず、STM4G32C32 や STM030F8C32 など、103 KB RAM と 8 KB フラッシュを備えたマイクロコントローラ上で実行できます。 比較すると、MicroPython は 16 KB の RAM と 256 KB のフラッシュを必要とし、Snek は 2 KB の RAM と 32 KB のフラッシュを必要とします。 プロジェクト コードは C で書かれており、MIT ライセンスに基づいて配布されます。

PikaScript は、分岐およびループ ステートメント (if、while、for、else、elif、break、 continue)、基本演算子 (+ - * / < == >)、モジュールなどの構文要素をサポートする Python 3 言語のサブセットを提供します。カプセル化、継承、ポリモーフィズム、クラスとメソッド。 Python スクリプトは、予備コンパイル後にデバイス上で実行されます。PikaScript は、まず Python コードを内部 Pika Asm バイトコードに変換し、特別な Pika Runtime 仮想マシン内のエンド デバイス上で実行されます。 ハードウェア上での直接作業、または RT-Thread、VSF (Versaloon Software Framework)、および Linux 環境での作業をサポートします。

マイクロコントローラー用の Python 言語のバリアントである PikaScript 1.8 が利用可能になりました

これとは別に、PikaScript スクリプトと C 言語のコードの統合が容易であることも注目されています。C 言語で記述された関数をコードにリンクできるため、PikaScript の実装で C 言語で記述された古いプロジェクトの開発を使用できます。 Keil、IAR、RT-Thread Studio、Segger Embedded Studio などの既存の開発環境を C モジュールの開発に使用できます。 バインディングはコンパイル段階で自動的に生成されます。Python コードを含むファイルで API を定義するだけで十分であり、Pika プリコンパイラの起動時に C 関数の Python モジュールへのバインドが実行されます。

マイクロコントローラー用の Python 言語のバリアントである PikaScript 1.8 が利用可能になりました

PikaScript は、さまざまなモデル stm24g*、stm32f*、stm32h*、WCH ch32、ch582*、WinnerMicro w32*、Geehy apm80*、Bouffalo Lab bl-32、Raspberry Pico、ESP706C32、Infineon TC3D を含む 264 のマイクロコントローラーのサポートを主張しています。 機器を使わずに開発を迅速に開始できるように、シミュレータが提供されるか、32 KB フラッシュと 030 KB RAM を搭載した STM8G6C64T8 マイクロコントローラをベースとした Pika-Pi-Zero 開発ボードが提供され、一般的なペリフェラル インターフェイス (GPIO、TIME、IIC、RGB、KEY) をサポートします。 、LCD、RGB)。 開発者は、オンライン プロジェクト ジェネレーターとパッケージ マネージャー PikaPackage も用意しました。

新しいバージョンでは、参照カウントに基づいたメモリ管理が実装され、仮想コンストラクター (ファクトリ メソッド) のサポートが追加されました。 valgrind ツールキットを使用してメモリの問題を診断しました。 Python PC ファイルをバイトコードにコンパイルし、ファームウェアにパッケージ化するためのサポートが追加されました。 ファイル システムを使用せずにファームウェアで複数の Python ファイルを使用する機能が実装されました。

出所: オープンネット.ru

コメントを追加します