LEDを点滅させるための、基本的なMicroPythonスクリプトの書き方を学びます。
このチュートリアルでは、Arduinoボードで動作する最初のMicroPythonスクリプトを作成します。古典的なLEDの点滅プロジェクトという簡単なものから始めることで、MicroPythonのプログラミング環境に慣れていきます。
要件
始める前に、要件を確認します。
MicroPythonが利用できるArduinoボード
MicroPythonは、いくつかのArduinoボードで公式にサポートされています。互換性のあるボードの一覧を示します。
- Portenta C33
- Arduino GIGA R1 WiFi
- Portenta H7
- Portenta H7 Lite
- Portenta H7 Lite Connected
- Arduino Nano RP2040 Connect
- Nicla Vision
- Arduino Nano 33 BLE
- Arduino Nano 33 BLE Rev2
- Arduino Nano 33 BLE Sense Rev2
- Arduino Nano ESP32
ソフトウェア要件
- Arduino Lab for MicroPython: Arduino Lab for MicroPythonは、Arduinoボードで、MicroPythonスクリプトの作成・実行が可能なエディタです。
ボードとエディタの設定
- Arduino Lab for MicroPythonを開きます。
- ArduinoボードとPCを、USBケーブルで接続します。

ボードとPCを接続します
- ウインドウの左上の接続ボタンをクリックします。接続したボード(のポート名)が現れます

エディタとボードを接続します
最初のスクリプト(LEDの点滅)
ボードを接続すると、コードを書き始めることができます。以下は、ボード上のLEDを1秒ごとに点滅させる基本的なスクリプトです。
- まず、ボード上の
main.pyを開いてください。一度セーブすると、ボードをリセットしてもコードが実行されるので、このファイルに書きます。

main.pyファイルを開きます
- 以下のコードをエディタにコピー・ペーストします。
|
|
25番ピンです。- エディタのRunボタンをクリックして、スクリプトをボードに転送します。

スクリプトを実行します
スクリプトが実行されると、ボード上のLEDが1秒ごとに点滅し始めるはずです。これで、MicroPythonスクリプトのロードが成功したことがわかります。
コードの詳細
コードを1行ずつ見ていき、何が起こっているかを理解しましょう。
- モジュールのインポート
|
|
ハードウェア関数の利用と時間の遅延を行うために、machineとtimeというモジュールをインポートします。
- LEDピンの初期化
|
|
ledという名前のPinオブジェクトを生成し、ピン番号を25に設定し、出力に設定します。
- 無限ループ
|
|
ループ内では、以下を実行します。
- 値を
1に設定して、LEDを点灯します。 - 1秒待ちます。
- 値を
0に設定して、LEDを消灯します。 - 1秒待ちます。
- このサイクルを繰り返します。
プログラム概念の理解
このスクリプトで使われている、主なプログラミングの概念を詳細に見ていきましょう。
machineモジュール
machineモジュールは、内蔵MicroPythonライブラリで、ボードのハードウェア構成要素に直接アクセスする手段を提供します。以下のような、マイクロコントローラーの機能の制御・操作を行います。
- ピン: デジタルピンとアナログピンの設定や制御
- タイマー: タスクをスケジュールするためのタイマー設定
- 通信インターフェイス: I2CやSPI、UARTといったプロトコルの利用
- ハードウェア固有の機能: マイクロコントローラ固有機能の制御
今回のスクリプトでは、machine.Pinクラスをボードの特定のピンを制御するのに使います。Pinオブジェクトを生成すると、ピンの電圧レベルを制御でき、LEDの制御ができます。
timeモジュール
timeモジュールは、時間に関連するタスクを管理する機能を提供します。遅延や時間間隔の測定、イベントのスケジュールなどができます。主要な機能には以下があります。
time.sleep(seconds): 指定した時間の秒数だけスクリプトの実行を停止します。1秒以下の遅延のために、浮動小数点数も指定できます。
while Trueループ
while Trueループは、無限ループを生成します。この中のコードを繰り返し実行します。LEDを点滅させるような、連続して実行するタスクには必須です。
修正: LEDをより早く点滅させる
LEDをより早く点滅させるように、修正してみましょう。遅延時間を1秒から0.2秒に変更します。
修正版コード
|
|
ステップ
すばらしい。Ardinoボードで、最初のMicroPythonスクリプトを書いて修正しました。この演習では、以下を紹介しました。
- モジュールのインポート(
machine、time) - ハードウェア構成要素(LED)の初期化
- ループの利用(
while) - 時間遅延の制御(
time.sleep())
これらの概念は、MicroPythonのプログラムを書く上で、多くの操作にとって重要なものです。
オリジナルのページ
https://docs.arduino.cc/micropython/first-steps/first-script/
最終更新日
August 16, 2026