作者 | Damien P. George |
---|---|
初版 | 2014年5月3日 |
最新版 |
1.19[1]
/ 2022年1月17日 |
リポジトリ | |
プログラミング 言語 | C言語 |
プラットフォーム |
ARM Cortex-M, ESP8266, ESP32, 16bit PIC, Unix, Microsoft Windows, Zephyr, JavaScript |
種別 | Python 処理系 |
ライセンス | MIT license[2] |
公式サイト |
micropython |
MicroPython[3](マイクロパイソン)は、C言語で記述されマイクロコントローラ上での動作に最適化された、Python 3と高い互換性を持つプログラミング言語処理系である[4][5]。
MicroPythonはマイコン上で動作する完全なPythonコンパイラおよびランタイムである。サポートされたコマンドを即時実行するための対話型プロンプト (REPL) も用意されている。MicroPythonにはPythonのコア・ライブラリのみならず、低レイヤへのアクセスを提供するモジュール群も含まれる[3]。
MicroPythonはもともと、2013年にKickstarterでの資金集めに成功した後、オーストラリアのプログラマ・物理学者のダミアン・ジョージ(英: Damien George)により開発されたものである[6]。元のKickstarterプロジェクトではpyboardというSTM32F4を搭載したマイコンボードと共にリリースされたものの、MicroPythonは多くのARMベースのアーキテクチャをサポートしている[7]。メインラインでサポートされているのは ARM Cortex-M(STM32を使用した様々なボード、TI CC3200/WiPy、Teensy ボード、Nordic nRF シリーズ、SAMD21、SAMD51)、ESP8266、ESP32、16bit PIC、Unix、Windows、Zephyr、JavaScriptである[8]。このほか、メインラインでサポートされていない様々なシステムやハードウェア向けに数多くのフォークがある[9]。
2016年にはBBC Micro:bit 向けバージョンのMicroPythonが、BBCとのMicro Bitパートナーシップの一環としてPythonソフトウェア財団により開発された[10]。
2017年7月には、MicroPythonのフォークとして、教育用途および簡単に使えることを主眼にしたCircuitPythonが作成された。MicroPythonとCircuitPythonでは、サポートするハードウェアが若干異なる(例えば、CircuitPythonは Atmel SAM D21とD51をサポートするが、ESP8266はサポートしない)。現在のCircuitPython version 4.0はMicroPython version 1.9.4に基づいている[11]。
2017年、MicrosemiはMicroPythonをRISC-V(RV32およびRV64)アーキテクチャへ移植している[12]。
2021年1月、MicroPythonのRP2040(ARM Cortex-M0+アーキテクチャー、Raspberry Pi Picoその他で採用)への移植版が作成された。[13]
ソースコードはGitHub上でMIT Licenseで公開されている[14]。