2024年7月20日土曜日

MicroPythonでRaspberry Pi Picoのプログラミングに挑戦

前回の続きです。Raspberry Pi PicoシリーズのPicoとPico Wがあったので、いじってみることにしたというのが前回までの話。とりあえず、Lチカまでやってみましたが、もう少し簡単にできないものかと思って最近流行りの(?)のMicroPythonで動かす方法を試してみることにしました。実験環境は、いつものLinux Mintで動かしている自作PCです。
#今回もCQ出版社の「ラズベリー・パイPico/Pico W攻略本」を参考にしました。

〈MicroPython(Thonny)のセッティングとプログラミング〉
MicroPythonでプログラムするためにThonnyというツールをインストールして使うことにします。Ubuntu系のディストリビューションで「ソフトウェアマネージャ」を使っていれば簡単にインストールすることができます。それから、Pico側もMicroPythonでプログラムできるようにファームウェアを書き換えておきます。

PicoにはPicoの、Pico WにはPico WのMicroPython用ファームウェア(.uf2)があるので、それぞれ最新のものをダウンロードしてBOOTSETボタンを押しながらUSBケーブルで接続してコピーしました。

インストールしたThonnyを起動すると言語(Language)と初期設定(Initial Settings)を聞かれるので、日本語とRaspberry Piを選んでおきます。「Let’s go!」ボタンをクリックするとArduino IDEにも似た雰囲気の窓が開きます。ここでもう少し設定を変更すると使いやすくなります。(Simpleモードになっているとアイコン以外のメニューが表示されないので、右上の「通常モードに変更」をクリックします。設定を変更したらThonnyを一度終了してもう一度起動させます)「表示」メニューから「ファイル」にチェックを入れて「ファイル」の窓を表示させます。「実行」メニューから「インタプリタ設定…」を選択し、コードを実行するインタプリタを「MicroPython(Raspberry Pi Pico)」にしておきます。

後は、いつものようにLチカプログラムで動かしてみます。試したコードは以下の通りです。

from machine import Pin
import utime
led = Pin(25, Pin.OUT)
while True:
led.toggle()
utime.sleep_ms(400)

挙動として、Thonnyを起動する前にPico/Pico WをPCにつないでおくとThonnyを起動した後の作業がスムーズです。PC内にMicroPythonで書いたプログラムファイル(.py)を保存して実行することも可能ですが、Pico/Pico W自体に「main.py」ファイルとして保存することで、自立(Pico/Pico W単体に電源供給するだけ)してプログラムを動かすことができます。その場合、Thonnyを起動した状態のままだとThonnyからのコントロールが優先され、Thonnyを終了させてUSBケーブルをつなぎ直すと中に保存したmain.pyに従って動作するようです。
#Pico/Pico Wの中に保存された.pyファイルは、「BOOTSEL」ボタンを押しながらPico/Pico Wをつないでもドライブの中に入っていません。Thonnyからしか見ることができないのです。
ロジカラブログさんの「ラズパイPicoの使い方 MicroPython&開発環境Thonny、SSLエラーの対処方法も紹介」がとてもわかり易かったので参考として紹介しておきます。

ということで、Thonnyを使ってMicroPythonでPico/Pico Wのプログラムを作って動かすことができるようになりました。このThonnyは、micro:bitESP32などのプログラムもできるようなので、ツールごとに開発環境を変えずに同じ環境でプログラムしてみたい方は、Thonnyでやってしまうというのもありではないかと思いました。
#Arduino IDEでもライブラリの追加で使うことができるようになるかもしれませんが…。

〈参考資料〉
MicroPythonプログラミング・ガイドブック」CQ出版社

0 件のコメント: