Raspberry Pi Pico 2開発環境（WIndows, MicroPython）

Raspberry Pi Pico 2が入手可能になったので早速購入しました。
雑に扱うことが多いので上下にカバーをつけてみました。

![458945056_974064437857010_2438280962999893343_n.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/105e3182-e375-01b2-b8fa-3da1c8e95c8a.jpeg)

カバーは千石通商にて１つ300円で購入しましたが、Amazonでも購入できるようです。

https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-5V4E

今回は、手っ取り早く動作確認するためにMicroPythonを使っていこうと思います。

## Raspberry Pi Pico 2用MicroPythonのファームウェア

Raspberry Pi Pico 2用のものは以下のページからダウンロードできます。

https://micropython.org/download/RPI_PICO2/

ファームウェア自体はCPUのアーキテクチャに合わせたものが２つあります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/5a0ea8c8-57db-f57c-8961-9ab4ead5ffbd.png)

今回は2台かったので、１つずつ焼いてみようと思います。
まずファームウェアをダウンロードしてきます。

### Firmware

https://micropython.org/resources/firmware/RPI_PICO2-20240809-v1.24.0-preview.201.g269a0e0e1.uf2

### Firmware (RISC-V CPU mode)

https://micropython.org/resources/firmware/RPI_PICO2-RISCV-20240809-v1.24.0-preview.201.g269a0e0e1.uf2

### ファームウェアを焼く

ダウンロードしてきました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/6f3cba7f-8e0e-5100-c7fc-6e74db19e16a.png)

ファームウェアを焼くときは、赤枠のボタンを押しながらPCにUSB接続します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/129bffb3-9c6a-b291-876b-1415c4d9d7f0.png)

PCでは、ストレージとして認識されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/a694f21c-e34d-32bd-cb84-2c1b13f2202a.png)

先ほどダウンロードしたファームウェアの利用する方をコピーします。
コピーが終わったらRP2350と表示されていたストレージは切断されます。

## IDE Thonny

今回はIDEとしてThonyを使っていきます。

https://thonny.org/

### ダウンロード
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/9950402b-da8a-2d7f-6ebd-0b745a4319b7.png)

ダウンロードのWindowsのところをクリックすると以下のような表示なりますので、今回は64bitのインストーラー付きのものを使うことにします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/06436845-0c64-0a0b-4b33-2a6dd46044cf.png)

インストーラーを実行するとまずは利用するユーザを聞いてきますのでデフォルトのまま進みます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/164d7803-06a7-18d5-7c98-0e7e501274b6.png)

### インストール

以下はインストール画面
今回は全部デフォルトのままでインストールしました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/7956fca9-767e-1d76-3001-6f91c578d282.png)

ライセンスの確認
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/a6cba719-61dc-5f63-cad0-1bbc48103ddb.png)

インストール先の指定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/795dea5b-b88e-196b-de5e-0305af36de3a.png)

スタートメニューのフォルダ指定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/bede54e8-ef19-af97-13a9-0c3e6e4cde52.png)

ディストップにアイコンを作るか？
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/8d096266-5c8b-46d7-bdc3-3d78eaac922a.png)

インストールの開始
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/ceb0d699-5c63-73de-73b0-2578e81d8fc3.png)

インストール完了
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/99729d2d-d813-989f-c064-ef73dc991bde.png)

### 起動

初回起動時に言語と設定を聞かれるので、
Language：日本語
Install settings：Raspberry Pi (Simple)
としました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/f65593d7-fad6-16cc-51dd-87d266f33699.png)

起動するとこんな画面になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/2a9420e5-edca-b327-40e8-d5822c69ac1f.png)

右下に使用するPython環境が表示されています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/28d7314b-2eb7-be04-a36e-8ddff6ec7294.png)

クリックすると以下のように表示されますので「インタプリタ設定」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/60ae389b-3da9-1bd9-3543-c015e9c0f863.png)

まずMicroPythonをインストールします。
どのインタプリタを使用してコードを実行しますか？のところを **MicroPython (Raspberry Pi Pico)** にして、ポートまたはWebREPLのところをCOMポート指定されているものにする。
自分のPCでは、 **Board CDC @ COM3** でした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/e6665c15-6543-1930-db44-67afe8b11671.png)

OKを押下して設定が完了すると以下のように表示が変わりました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/f7914674-4712-b0f4-3ec7-dc43d4e65fb4.png)

### Lチカ

LEDを１秒おきに顛末させてみます。

```Python:Lチカ
from machine import Pin
from time import sleep

led = Pin('LED', Pin.OUT)

while True:
    led.on()
    sleep(1)
    led.off()
    sleep(1)
```
上記のプログラムを打って実行ボタンを押すと１秒おきにRaspberry Pi Pico 2のLEDが点滅します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/6b81f23d-c7dd-b26d-bb92-c7a1552a946e.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28184/750cbe1c-74b4-c971-8588-6d3639a9090d.png)

RISC-Vの方も同じプログラムを実行できました。
MicroPythonを使っている分には、違いはないって感じなんですかね。