MicroPython
MicroPython[3](マイクロパイソン)は、C言語で記述されマイクロコントローラ上での動作に最適化された、Python 3と…
|
MicroPython の公式ロゴマーク。 | |||
| 作者 | Damien P. George | ||
|---|---|---|---|
| 初版 | 2014年5月3日 | ||
| 最新版 |
| ||
| リポジトリ | |||
| プログラミング 言語 | C言語 | ||
| プラットフォーム | |||
| サポート状況 | サポート中 | ||
| 種別 | Python 処理系、IoT | ||
| ライセンス | MITライセンス[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ライセンスで公開されている[14]。
MicroPythonが使えるIDE
主に教育用で作られたthonny IDEなどがあるが、拡張機能を使えばvisal stadio codeでも使える
脚注
- ^ “Release 1.28.0” (2026年4月6日). 2026年4月7日閲覧。
- ^ George, Damien P. (2014年5月4日). “micropython/LICENSE at master · micropython/micropython”. GitHub. 2017年2月11日閲覧。
- ^ a b “MicroPython - Python for microcontrollers”. micropython.org. 2017年8月12日閲覧。
- ^ Venkataramanan, Madhumita (6 December 2013). “Micro Python: more powerful than Arduino, simpler than the Raspberry Pi”. Wired. 2016年12月15日閲覧.
- ^ Yegulalp, Serdar (5 July 2014). “Micro Python's tiny circuits: Python variant targets microcontrollers”. InfoWorld. 2016年12月15日閲覧.
- ^ “Micro Python: Python for microcontrollers”. Kickstarter. Kickstarter. 2016年12月15日閲覧。
- ^ Beningo, Jacob (11 July 2016). “Prototype to production: MicroPython under the hood”. EDN Network. 2016年12月15日閲覧.
- ^ “micropython/ports at master · micropython/micropython”. GitHub. 2019年10月22日閲覧。
- ^ “Awesome MicroPython”. GitHub. 2019年10月22日閲覧。
- ^ “Hands on with the BBC Micro-Bit user interface”. ElectronicsWeekly.com. 2015年7月8日閲覧。
- ^ “CircuitPython 4.0.1 released!”. Adafruit Blog. Adafruit Industries. 2019年6月11日閲覧。
- ^ “RISC-V Poster Preview — 7th RISC-V Workshop” (2017年11月28日). 2018年12月17日閲覧。
- ^ “Meet Raspberry Silicon: Raspberry Pi Pico now on sale at $4”. www.raspberrypi.org. 2021年1月21日閲覧。
- ^ “MicroPython on GitHub”. 2017年10月24日閲覧。
外部リンク
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.