Micro
Pythonは、
C言語で記述され、
マイクロコントローラ上での活用に最適化されたプログラミング言語の処理系です。本言語は
Python 3と高い互換性を持ち、特にマイコン上で実行される完全な
Pythonコンパイラとランタイムを提供しています。また、ユーザーがコマンドを即座に実行できる対話型プロンプト(
REPL)が用意されており、開発の効率を高めています。
この言語は、
Pythonのコアライブラリをはじめ、低レベルへのアクセスを可能にするさまざまなモジュールを含んでいます。Micro
Pythonが開発された背景には、2013年に行われた
Kickstarterプロジェクトがあり、オーストラリアのプログラマで物理学者のダミアン・ジョージによって推進されました。このプロジェクトでは、STM32F4を搭載したマイコンボードpyboardとともにMicro
Pythonがリリースされ、その後の発展に繋がりました。
Micro
Pythonは多くのARMベースアーキテクチャをサポートしており、特にARM Cortex-Mファミリー、ESP8266、ESP32、さらには
UnixやWindows環境での利用も可能です。また、
RISC-V(RV32およびRV64)アーキテクチャへの移植も行われており、Microsemi社によって進められています。2021年1月には、Raspberry Pi Picoなどに使用されるRP2040への移植も実現しました。
Micro
Pythonは教育の場でも多く利用されており、例えばBBC Micro:bit向けのバージョンが
Pythonソフトウェア財団とBBCの協力により開発されたことが挙げられます。このバージョンは、特に子供たちにプログラミングの楽しさを提供することを目的としています。
また、2017年には、Micro
PythonのフォークとしてCircuit
Pythonが登場しました。Circuit
Pythonは、教育用途に特化し、使いやすさを重視して設計されています。両者はサポートするハードウェアにいくつかの違いがあります。たとえば、Circuit
PythonはAtmel SAM D21およびD51をサポートしていますが、ESP8266はサポートしていません。現在のCircuit
Python version 4.0は特にMicro
Python version 1.9.4に基づいて構築されています。
開発環境とリソース
Micro
Pythonを使用するための統合開発環境(IDE)としては、教育用に設計されたThonny IDEが広く利用されています。また、拡張機能を用いることでVisual Studio CodeでもMicro
Pythonの開発が可能です。これらのIDEは、初心者から上級者まで幅広いユーザーにとって使いやすい環境を提供しています。
ソースコードの公開
Micro
Pythonのソースコードは
GitHub上で公開されており、MIT
ライセンスの下で利用可能です。これにより、開発者は自由にソースコードを利用し、改良を加えることができます。これは、オープンソースの理念に基づいており、コミュニティの活発な参加を促進しています。
現在、Micro
Pythonは高い柔軟性と拡張性を持つプログラミング言語として、多くの分野での応用が期待されています。その強力な機能と扱いやすさから、マイコン関連のプロジェクトにおいて非常に人気のある選択肢となっています。