LoginSignup
8
8

Raspberry Pi Pico W の LED を VS Code を使って、点滅させてみた。(RP-Pico チュートリアル)

Last updated at Posted at 2023-09-12

今回は Raspberry Pi Pico W を使って、本体の LED を点滅させるところまでやってみました。
チュートリアル的な内容となります。

環境

今回の環境は下記のとおりです。

開発端末

  • OS: Windows 11 Pro
  • CPU: Intel Core i7-9750H
  • メモリ: 64GB
  • GPU: NVIDIA GeForce RTX 2070 Max-Q

Python 環境

  • Python: 3.11.0

Raspberry Pi

事前準備

まずは Raspberry Pi Pico を動作させるための環境を用意します。

PySerial のインストール

Python でシリアル通信を行うためのライブラリをインストールします。

pip install pyserial

VS Code の拡張機能のインストール

VS Code に Raspberry Pi Pico 用の拡張機能をインストールします。

MicroPico のインストール

VS Code の拡張機能である MicroPico をインストールします。

MicroPico について
MicroPico は Pico-Go からフォークされた拡張機能です。
Pico-Go は既にメンテナンスがされなくなり、 VS Code Marketplace からも削除されています。
元々は Pico-W-Go という名前でしたが MicroPico にリネームされました。

VS Code の 拡張機能 をクリックし、 micropico と入力して検索します。
インストール をクリックして、拡張機能をインストールします。
pico_vscode_01.png

MicroPico の初期設定

VS Code の 表示(V)コマンドパレット をクリックします。
pico_vscode_02.png

>MicroPico: Configure project と入力して Enter キー を押下します。
pico_vscode_03.png

Raspberry Pi Pico の準備

Raspberry Pi Pico にファームウェアを書き込んで Python (MicroPython) を動かせるようにします。

ファームウェアのダウンロード

Raspberry Pi 財団のサイトからファームウェアをダウンロードします。
利用する Raspberry Pi Pico にあわせてファームウェアを選んでください。

pico_firmware_01.png

ファームウェアの書き込み

Raspberry Pi Pico の BOOTSET ボタンを押しながら、 USB ケーブルで PC に接続します。
pico_firmware_02.png

ダウンロードしたファームウェアを RPI-RP2 にドロップします。
pico_firmware_03.png

ファームウェアの転送が完了すると、 Raspberry Pi Pico が自動的に再起動します。
以上で、ファームウェアの書き込みは完了です。

以降は USB シリアル通信経由で REPL にアクセスできます。

ファームウェアについて
今回は Python を利用するため MicroPython のインタプリタが含まれるファームウェアを書き込みました。

ファームウェアが提供されている場合は、他の言語で記述することもできます。

なお、 MicroPython は実行の都度、ソースコードから機械語に変換しながら実行するため、オーバーヘッドが大きくなります。
超音波距離センサーなどの一部のパーツは、このオーバーヘッドの影響を受け、誤差が生じるため注意が必要です。

オーバーヘッドを抑えるには、事前に機械語にコンパイルする必要があります。
C言語などで記述を行い、 UF2 ファイルにビルドします。
ビルドされた UF2 ファイルは、ファームウェアの書き込みと同様の手順で Raspberry Pi Pico に書き込みができます。
当然ですが、ビルドされた UF2 ファイルを利用する場合は、 Raspberry Pi Pico 用のファームウェアが不要になります。

Python コードの作成

サンプルコードを作成して、 Raspberry Pi Pico を動かしてみます。

サンプルコード

今回は下記のサンプルコードを使い、 Raspberry Pi Pico の LED を点滅させます。
ファイル名は main.py にしてください。

main.py
from machine import Pin
import time

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

while True:
    led.on()
    time.sleep(1)
    led.off()
    time.sleep(1)

Python コードの実行

Raspberry Pi Pico を USB ケーブルで PC に接続します。(※ BOOTSET ボタンは押しません)

VS Code のステータスバーの Toggle board connection ボタンが Pico Connected になっていることを確認します。
Pico Disconnected になっている場合はクリックして Raspberry Pi Pico に接続します。
pico_led_01.png

VS Code のステータスバーの Run current file ボタンをクリックして、実行します。
ボタンの表記が Run から Stop に変わります。
pico_led_02.png

Raspberry Pi Pico 本体の LED が点滅することを確認します。
pico_led_03.jpg

Python コードの書き込み

VS Code の 表示(V) をクリックします。
pico_upload_01.png

コマンドパレット をクリックします。
pico_upload_02.png

>MicroPico: Upload current file to Pico と入力して、 Enter キー を押下します。
pico_upload_03.png

Python コードの実行(スタンドアローン)

Raspberry Pi Pico の USB ケーブルを PC から外し、 USB 充電器やモバイルバッテリーなどに接続します。
LED が点滅すれば OK です。

参考文献

下記の書籍とサイトを参考にさせて頂きました。

  • 福田 和宏 . 最新Pico W対応! ラズパイPico完全ガイド . 株式会社日経BP , 2023

8
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8