20250306154049 vscode-circuitpython V2 でのcircuitpython開発手順 rp2040 + windowsでの場合
extensionのインストール
CircuitPython v2 - Visual Studio Marketplace
circuitpythonをrp2040に書きこむ
該当のuf2ファイルをrp2040の基板に書きこむ RP2040 Zero の場合: CircuitPython - Waveshare RP2040-Zero Download
ボードが一覧に無い場合などは通常のRP2040 Picoにすれば良いと思う。専用の.uf2を選ぶと、例えばRP2040 Zeroならreplに入った時に付属のneopixelが白く点灯するなど、ちょっとした便利機能がある。他にも使用できるライブラリが組み込まれていたりもしそう。
勝手に再起動して、 CIRCUITPY というディスクが見える。vscodeでこのディスクのルートを開く。

デバイスマネージャーでCOMポートの番号を確認する。

repl(というかSerial Monitor)の起動
この段階で、ターミナルに Circuit Python Serial Monitor ができているが、動いていない。
ここにエラーメッセージなども表示されるため、起動が必要。
Circuitpython: Open Serial Monitor をメニューから選び、その後表示されるメニューから上記で確認したポートを選ぶと、
[Open] Connection to COM37
press Ctrl-C to enter the REPL
こんな表示になる。 Ctrl+c を押すと、実行されているプログラムが停止される。 enter the REPL ではない気がする。
トレースバック(最新の呼び出しが末尾):
ファイル "code.py", 行 11<module> 内の
KeyboardInterrupt:
コード実行完了
REPLに入るため、エンターキーを押す。リーロードするため、Ctl-Dを入力する。
Ctrl+d を押すと元のプログラム実行モードに入る。
Enterを押すとプロンプトが表示される。
Adafruit CircuitPython 9.2.4 on 2025-01-29; Waveshare RP2040-Zero with rp2040
>>>
コードを書く
code.py に書けばよい。 たとえばGPIO0に付けたLEDをblinkさせるコードはこんなかんじ
import time
import board
import digitalio
# LED setup
led = digitalio.DigitalInOut(board.GP0)
led.direction = digitalio.Direction.OUTPUT
while True:
led.value = True
time.sleep(0.5)
led.value = False
time.sleep(0.5)修正して保存すると、即座に反映される。AutoSaveを時間で設定している場合は注意。実行してエラーになると、そこで止まる。修正して保存すると、また自動で実行される。
コードはRP2040内に保存されている。USBケーブルを挿抜したり、リセットしたりした場合、最後に保存した内容が自動的に実行される。