「Raspberry Pi Pico WH(以下 Raspbery Pi PicoW)」は、基本ソフト(OS)をインストールして使う「Raspberry Pi 5(以下 Raspberry Pi5)」のようなコンピュータではありませんが、Raspberry Pi5と同じようにGPIOピンがあり、センサ等の電子機器の制御を行うことができます。
Rasoberry Pi5にVisual Studio Codeをインストールして、プログラミング言語、C/C++を使って、Raspbery Pi PicoWボード上にあるLEDを点滅させます。
Raspbery Pi PicoWには、Debug Probeを接続していますので、簡単なデバック(ブレークポイント)を行います。
ハードウェアの準備
Raspbery Pi PicoWをプログラミング言語、C/C++で制御するための部品や機器を準備します。
Raspberry Pi PicoW
Raspberry Pi PicoWを起動、デバッグするための機器と部品を用意します。
部 品 名 | 規 格 | 数 量 | 備 考 |
---|---|---|---|
Raspberry Pi Pico WH | ピンヘッダー実装済み | 1 | Amazon |
マイクロUSBケーブル | USB2.0 (USB A オス to microB オス) | 2 | Amazon |
デバッグプローブ | Raspberry Pi Pico 用 | 1 | Amazon |
ブレークアウト ボード | Raspberry Pi Pico/Pico H/Pico W 用 | 1 | Amazon |
Raspberry Pi Pico WHはピンヘッダーとデバッグ用コネクタが取り付けられたタイプです。
ご自身でピンヘッダを準備し半田付けをする場合は、ピンヘッダがないRaspberry Pi Pico Wを用意して下さい。
デバッグプローブは、デバッグ用コネクタとピンヘッダの両方に対応する接続ケーブルが同梱されています。
Raspberry Pi PicoWの他にWi-Fi接続のできないタイプ(Raspberry Pi Pico)がありますので注意して下さい。
ブレークアウト ボードは必要に応じて用意して下さい。
▶️Raspberry Pi Pico Wの主な仕様
項 目 | 説 明 |
---|---|
SOC | RP2040 |
CPU | Cortex M0+、デュアルコア (クロック 133MHz) |
メモリー | 264KB(SRAM)、2MB(フラッシュメモリ) |
USB | USB 1.1 |
汎用入出力 | 多機能 GPIO x 26 |
※→ 同期式シリアル通信 | I2C x 2 |
※→ 同期式シリアル通信 | SPI x 2 |
※→ 調歩同期式シリアル通信 | UART x 2 |
※→ アナログ・ディジタル変換 | A-Dコンバータ x 3 (内部温度センサは除く) |
※→ パルス幅変調 | PWM x 12 |
Bluetooth | Bluetooth 5.2 |
Wi-Fi | 2.4GHz IEEE 802.11b/g/n |
プログラマブルIO | PIO x 2 |
リアルタイム・クロック | RTC (バッテリバックアップなし) |
電源定格 | DC 1.8 ~ 5.5V |
消費電流 | USBポート、GPIO使用の場合は3A |
動作温度範囲 | -20 ~ 70℃ |
▶️Raspberry Pi Pico Wのピン配置
Raspberry Pi5
コンピュータとしてセットアップしたRaspberry Pi5にモニター、キーボード、マウス等の周辺機器を接続するか、もしくはVNC接続して、プログラミング言語、C/C++でプログラミングするための準備をします。
本稿はWindows11パソコンからVNC接続して、進めていきます。
接続
準備したハードウェアを接続します。
Rasoberry Pi PicoWのUSBの接続は、電源の供給が目的ですので、他の供給源あれば、Raspberry Pi5のUSBポートに接続する必要はありません。
デバッグプローブの接続
Visual Studio Codeのインストール
Visual Studio Code(以下 VSCode)は、Microsoft社の提供する無償のコードエディタで、macOS、Windows、Linux等の主要なプラットフォームをサポートしています。
VSCodeをRaspberry Pi5(raspios-bookworm)にインストールして、Rasoberry Pi PicoWをC/C++で実行、デバッグできるようにします。
ソフトウェアの更新
Rasoberry Pi5を起動します。
LXTerminalに、sudo apt updateとsudo apt full-upgrade -yをそれぞれ入力後、「Enter」キーを押して、ソフトウェアを更新します。
PICO用のセットアップスクリプト のインストール
Raspberry Piのドキュメントにセットアップについての案内がありますので、それを参考にインストールを行います。
For a full walk-through of how to get going with the C/C++ SDK, you should read our 'getting started' documentation. However, if you are intending to develop for Pico on a Raspberry Pi, then you can set up the C/C++ toolchain quickly by running our setup script from the command line.
(Raspberry Pi Documentation:The C/C++ SDK:SDK Setupより)
翻訳:
C/C++ SDKを使用する方法については、「getting started 」ドキュメントをお読みください。しかし、Raspberry Pi上でPico向けの開発を行うのであれば、コマンドラインからセットアップスクリプトを実行することで、C/C++ツールチェーンを素早くセットアップすることができます。
▶️スクリプトをダウンロード
LXTerminalに、wget https://raw.githubusercontent.com/raspberrypi/pico-setup/master/pico_setup.shを入力後、「Enter」キーを押して、スクリプトをダウンロードします。
▶️実行権限の変更
LXTerminalに、chmod +x pico_setup.shを入力後、「Enter」キーを押して、ダウンロードしたスクリプトを実行できるようにします。
▶️スクリプトの実行
LXTerminalに、./pico_setup.shを入力後、「Enter」キーを押して、ダウンロードしたスクリプトを実行します。
終了するまでに、数分~数十分かかる場合があります。
シリアルからシェルへのログインを問われますので、「いいえ」を選択します。
シリアルポートの有効を問われますので、「はい」を選択します。
確認メッセージが表示されますので、「了解」を選択します。
▶️再起動
LXTerminalに、sudo rebootを入力後、「Enter」キーを押して、再起動します。
VSCodeのインストール
VSCode本体をインストールします。
LXTerminalを起動し、sudo apt updateとsudo apt install codeをそれぞれ入力後、「Enter」キーを押して、VSCodeをインストールします。
▶️再起動
LXTerminalに、sudo rebootを入力後、「Enter」キーを押して、再起動します。
VSCodeの起動と設定
メニューから「Visual Studio Code(VSCode)」を選択します。
VSCodeが起動し、初期画面が表示されます。
日本語化拡張機能のインストール
日本語化を行います。
VSCodeの左側のサイドバーから、「Extensions」アイコンをクリックします。
検索窓に「Japanese Language Pack」を入力し、検索します。
「Japanese Language Pack for Visual Studio Code」が表示されますので、「install」 をクリックします。
インストール完了後に、画面右下に「Change Language and Restart」と表示されますので、クリックします。
VSCodeが再起動すると、日本語でメニューなどが表示されます。
Raspberry Pi Pico VS Code Extensionのインストール
Raspberry Pi Pico VS Code拡張機能は、Visual Studio Codeでのプロジェクトの作成、開発、実行、デバッグを支援します。
多くのテンプレートオプション、自動ツールチェーン管理、ワンクリックでのプロジェクトコンパイル、Pico SDKのオフラインドキュメントを備えたプロジェクトジェネレータが含まれています。
VS Code拡張機能は、すべてのRaspberry Pi Picoシリーズデバイスをサポートしています。
VSCodeの左側のサイドバーから、「Extensions」アイコンをクリックします。
検索窓に「Raspberry Pi Pico」を入力し、検索します。
「Raspberry Pi Pico」の画面が表示されますので、「インストール」 をクリックします。
インストールは数分かかる場合があります。
インストールが完了すると、「アンインストール」ができる状態になります。
右上の「X」をクリックしてVSCodeを終了します。
VSCodeを起動し、「起動時にウェルカム ページを表示」の✔を外し、「ようこそ」の「X」をクリックしてタブを閉じます。
終了後、右上の「X」をクリックしてVSCodeを終了します。
VSCodeを起動すると、ウェルカムページが非表示なっています。
プロジェクトの読み込みと実行
VSCode 拡張機能は 「Pico Examples」が提供するサンプルを元にプロジェクトを作成することができます。
ここでは、PicoシリーズデバイスのLEDを点滅させるプロジェクトの作成方法を説明します。
VSCodeの左側のサイドバーから、「Raspberry Pi Pico Project 」と書かれたRaspberry Pi Picoアイコンを選択します。
「C/C++拡張機能のプレリリース版が利用が可能です。切替えますか?」ダイアログが表示されますので、「はい」をクリックします。
インストールは数分かかる場合があります。
サンプルプロジェクトの実行
VSCodeの左側のエクスプローラー・サイドバーから、「New Project From Example」を選択します。
「Raspberry Pi Pico」の「Basic Settings」が表示されますので、次のように設定、実行します。
- Name:blinkを選択します。
- Bord Type:Pico Wを選択します。
- Location:拡張モジュールがファイルを生成できるフォルダを「Change」をクリックして指定します。
VSCodeは、選択したフォルダのサブフォルダに新しいプロジェクトを作成します。 - Debugger:DebugProbeを選択します。
- Create をクリックしてプロジェクトを作成します。
拡張機能はSDKとツールチェーンをダウンロード後、ローカルにインストールし、新しいプロジェクトを生成します。
最初のプロジェクトでは、ツールチェーンのインストールに5~20分かかる場合があります。
VSCodeが自動的に生成したフォルダの作成者について、「親フォルダーxxx内のすべてのファイルの作成者を信頼します」の✔を入れた後、「はい、作成者を信頼します」をクリックします。
この間、次の2つのメッセージが表示されますが、しばらく待っていると非表示になります。
非表示にならない場合は、「今すぐ構成」、「今後表示しない」をクリックします。
VSCodeの左側のサイドバーから、「実行とデバッグ」アイコンをクリックします。
VSCodeの左側のエクスプローラー・サイドバーに、デバッグの情報の項目が表示されます。
実行とデバッグのプルダウンメニューから「Pico Debug (Cortex-Dubug)」を選択し、「▶」(デバッグの開始)をクリックします。
ターミナルに実行状況が表示されます。
DebugProbeの緑(DAP_CONNECTED)と黄(DAP_TARGET_RUNNING)のLEDが点灯します。
ソースコード(blink.c)が表示され、一時停止しているので、「続行アイコン」をクリックして、続行します。
Raspberry Pi PicoW上のLEDが250ms間隔で点滅します。
点滅間隔の変更
点滅間隔を250msから、1000ms(1秒)変更します。
「停止アイコン」をクリックして、プログラムを停止します。
16行目の「#define LED_DELAY_MS 250」を、「#define LED_DELAY_MS 1000」に変更します。
「F5」キー(デバッグの開始)を押します。
一時停止しているので、「続行アイコン」をクリックして、続行します。
Raspberry Pi Pico上のLEDが1000ms(1秒)間隔で点滅します。
「停止アイコン」をクリックして、プログラムを停止します。
確認後、「#define LED_DELAY_MS 250」に戻します。
簡単なデバッグ(ブレークポイントの確認)
ブレークポイントを設定し、設定した位置でプログラムが停止することを確認します。
49行目と51行目の左側をクリックすると、ブレークポイントの設定マーク(赤丸)が表示されます。
「F5キー」(デバッグの開始)を押します。
一時停止しているので、「続行アイコン」をクリックして、続行すると、ブレークポイントを設定した49行目でプログラムが停止します。
LEDは点滅しないで、点灯状態になります。
「F5キー」(続行)を押すと、次のブレークポイントを設定した51行目でプログラムが停止します。
LEDは消灯状態になります。
49行目と51行目の左側をクリックします。
ブレークポイントの設定マーク(赤丸)が非表示になり、ブレークポイントが解除されます。(停止マークは表示されたままです。)
「F5キー」(続行)を押すと、Raspberry Pi Pico上のLEDが250ms毎に点滅します。
「停止アイコン」をクリックして、プログラムを停止します。
VSCodeの終了
メニューの「ファイル」⇒「終了」をクリックします。
まとめ
64bit版のOS(Bookworm)をインストールしたRaspberry Pi5に、VSCodeをインストールして、プログラミング言語、C/C++で開発する環境を構築しました。
Raspberry Pi Pico VS Code Extensionをインストールして、Debug Probeを接続したRaspberry Pi Pico(W)をC/C++で開発できるようにしました。
Raspberry Pi Pico VS Code Extensionに付属しているサンプルプロジェクト(blink)の実行をとおして、簡単なデバッグ(ブレークポイント)方法を学習しました。