MicroPython ライブラリ - renesas/micropython GitHub Wiki
MicroPython ライブラリ
- MicroPython に組み込まれているモジュール(関数とクラスのライブラリ)は大きく2つあります
-
標準Pythonの機能のサブセットを実装したもの
- 標準Python(CPythonと呼んでいる)のモジュール名とモジュール名の先頭に’u’をつけたモジュール名(例. osとuos)
- ユーザーがPythonコードで拡張できるもの、できないもの
-
特定の MicroPython ポート に固有のモジュール
- MCU毎にモジュール名、使い方(API)が異なります。 - RA MCUでは、pybモジュールとrabモジュールは同じもの
- ターゲットボードに固有のモジュール(例 pyb, rab, esp32…)とターゲットボードに共通のモジュール(例. machine)
-
ボードで使用できるモジュールは、help(“module”)で確認できます。
-
RA4M1 ClickerボードとEK-RA6M2ボードでは使用できるモジュールが異なります。
- Flash容量の制限でRA4M1 Clickerボードに実装されているモジュールは制限されています。

-
MicroPython に組み込まれているモジュールの詳細は、以下のurlを参照ください
-
RA MCUに固有のモジュール ("rab"モジュールは、"pyb"のaliasになっています)
| Pybモジュールクラス | Rabモジュールクラス | 概要 |
|---|---|---|
| Accel | 未実装 | 加速度センサー |
| ADC | ADC | AD変換 |
| CAN | 未実装 | CAN(controller area network communication bus) |
| DAC | 未実装 | DA変換 |
| Extlnt | Extlnt | I/Oピンによる外部割込み |
| I2C | I2C | I2C (a two-wire serial protocol) |
| LCD | 未実装 | LCD制御 |
| LED | LED | LEDオブジェクト |
| Pin | Pin | I/Oピン |
| PinAF | 未実装 | ピン周辺機能 |
| RTC | RTC | リアルタイマー |
| Servo | 未実装 | サーボ(PWM) |
| SPI | SPI | SPI (a master-driven serial protocol) |
| Switch | Switch | スイッチ |
| Timer | Timer | タイマー |
| TimerChannel | 同等機能なし | タイマー向けチャネル設定 |
| UART | UART | シリアル通信 |
| USB_HID | 未実装 | USB Human Interface Device (HID) |
| USB_VCP | 未実装 | USB仮想COMポート |
MicroPython ライブラリの補足
-
ソフトウェアTimer: 定義は、1msのSystickをもとに1ms毎に登録したタスクを実行するかどうかを決定する機能
-
ハードウェアTimer: RA MCUのAGTの2チャンネルで、周期タイマーで登録したタスクを実行する機能
-
ソフトウェアI2C/SPI: 定義は、GPIOピンのbitbang機能で実装したI2C/SPI機能
-
ハードウェアI2C/SPI: MCUの周辺モジュール機能で実装したI2C/SPI機能
-
ソフトウェアI2C/SPI/Timer: machineモジュールから呼び出します
-
ハードウェアI2C/SPI/Timer: 一般にMCU固有のモジュール(例. pyb/rab)から呼び出します
-
RA4M1 Clickerでは、ソフトウェアTimerとソフトウェアI2Cのみ。SPIはソフトウェア、ハードウェアを利用できます。
-
EK-RA6M2では、ソフトウェアI2C/SPI/TimerとハードウェアI2C/SPI/Timerの両方が利用できます。
ファイル操作
- 別ファイルのPythonモジュールを利用する場合、あらかじめPythonモジュールファイルをターゲットボードにダウンロードが必要です。その場合は、ampyコマンドやVisial Studio CodeのPyMakrなどを利用します。
ampyコマンドの利用
-
ampyコマンドをホストにインストールする
pip install adafruit-ampy -
ホストPCのコマンドプロンプトからPC上のtest.pyをターゲットボードで実行する方法
echo print("test.py is running") > test.py ampy -p COM6 run test.py test.py is running. -
ホストPCのコマンドプロンプトからPC上のtest.pyをターゲットボードへダウンロードする方法
ampy -p COM6 put test.py ampy -p COM6 ls /flash /flash/boot.py /flash/main.py /flash/project.pymakr /flash/test.py -
ホストPCのコマンドプロンプトからボード上のファイルをgetする方法
ampy -p COM6 get main.py # main.py -- put your code hear!ファイルの内容は標準出力に表示されます。内容をファイルに保存したい場合にはリダイレクトしてください。
ampy -p COM6 get main.py > main.py
Visual Studio CodeのPymakrを利用
Visual Studio CodeのPymakrを利用するには、Nodejs, Visual Studio Code, Pymakr拡張機能をインストールして設定が必要です。以下の操作を試す前に、"プログラム編集、実行"ページのVisual Studio Code + Pymakrによるプログラム編集 を参照してインストールと設定を行ってください。
-
"Download"と"Upload"用のフォルダーをオープンします。Visual Studio Codeの左上にある"EXPLORER"をクリックします。"Open Folder"をクリックして、新しいフォルダとして例えば"C:\pymakr-sample"を作成します。
-
次のようなダイアログが表示されたら"Yes"ボタンをおします。
-
EXPLORERビューにPYMAKR-SAMPLEフォルダが表示されます。
-
ターゲットボードからホストPCへファイルをダウンロードするには、Pymakrメニューの"Download"をクリックします。"Do you want to download these files into your project..."と表示されたら、画面上部の確認ボックスの"Yes"を選択します。
-
すると、boot.pyとmain.py"がC:\pymakr-sample"フォルダにダウンロードされます。
-
Pythonプログラムを実行するには、Pythonプログラムを作成し(例えばtest.py)、Pymakrメニューの"Run"をクリックします。
-
ホストPCからターゲットボードにファイルをuploadするには、Pymakrメニューの"Upload"をクリックします。
-
MicroPythonのコンソールからosモジュールを使用する
import os os.listdir() os.listdir('/flash')