開発環境構築・書き込みガイド
本ゼミでは,模擬衛星のソフトウェアをゼロから構築する.まず開発環境を整え,プログラムを書き込める状態にすること.
1. 開発環境の構築
Section titled “1. 開発環境の構築”本プロジェクトでは VS Code を推奨する.Raspberry Pi 公式の拡張機能をインストールするだけで,SDK やツールチェーンのセットアップが自動で行われる.
推奨:VS Code と公式拡張機能
Section titled “推奨:VS Code と公式拡張機能”- VS Code をインストールする.
- 以下の拡張機能をインストールする.
- 拡張機能の案内に従って,Pico SDK や必要なビルドツールをインストールする.
sateliteディレクトリを VS Code で開くと,プロジェクトが自動的に認識される.
より詳細な情報や OS ごとの個別設定については,公式ガイド「Getting started with Raspberry Pi Pico-series」を参照すること.
2. プログラムの書き込み方法
Section titled “2. プログラムの書き込み方法”プログラムの書き込みには以下の 2 通りの方法がある.手軽に動作確認を行いたい場合は A,頻繁にビルドとデバッグを繰り返す開発フェーズでは B を推奨する.
A. UF2 による書き込み(シンプル・手軽)
Section titled “A. UF2 による書き込み(シンプル・手軽)”特別なデバッガ機器を使わず,Micro USB ケーブルのみで直接プログラムを書き込む最もシンプルな方法である.
- BOOTSEL ボタンを長押し しながら,PC と MAIN基板上の Pico W を USB ケーブルで接続する.
- PC 上で
RPI-RP2という名前の USB マスストレージドライブとして認識される(ボタンから手を離してよい). - ビルドによって生成された
.uf2ファイルを,そのRPI-RP2ドライブへドラッグ&ドロップ(またはコピー)する. - コピーが完了すると自動的にドライブがアンマウントされ,Pico W が再起動してプログラムが実行される.
B. SWD 端子による書き込みとデバッグ(推奨:高速・効率的)
Section titled “B. SWD 端子による書き込みとデバッグ(推奨:高速・効率的)”基板上に露出している SWD (Debug) 端子 と,もう一台の別の Raspberry Pi Pico(以下,Debug Pico) をデバッガとして使用し,プログラムの書き込みおよびステップ実行等のデバッグを行う.
[!NOTE] 本ゼミでは,市販の Raspberry Pi Debug Probe を購入する代わりに,安価な標準の Raspberry Pi Pico にデバッガ用ファームウェアを書き込んでデバッガ(Debug Pico)として使用する.
1. Debug Pico(デバッガ)の準備
Section titled “1. Debug Pico(デバッガ)の準備”もう一台のデバッグ用 Pico をデバッガとして動作させるため,以下の手順で専用ファームウェアを書き込む.
- ファームウェアのダウンロード:
- Raspberry Pi Debug Probe 公式リポジトリ (GitHub) の Releases ページ から,Pico 用のバイナリである
debugprobe_on_pico.uf2をダウンロードする.
- Raspberry Pi Debug Probe 公式リポジトリ (GitHub) の Releases ページ から,Pico 用のバイナリである
- ファームウェアの書き込み:
- Debug Pico の BOOTSEL ボタンを長押ししながら,PC と USB ケーブルで接続する.
- PC 上にマウントされた
RPI-RP2ドライブのルートディレクトリに,ダウンロードしたdebugprobe_on_pico.uf2をドラッグ&ドロップする. - コピー完了後,Debug Pico が再起動し,CMSIS-DAP デバッガとして認識されるようになる.
2. Debug Pico と MAIN基板(Debug1コネクタ)の接続ピンアサイン
Section titled “2. Debug Pico と MAIN基板(Debug1コネクタ)の接続ピンアサイン”MAIN基板のデバッグ・通信ポートは Debug1(1x6 ピンヘッダ) として配置されており,Debug Pico とジャンパ線を用いて接続する.
接続配線対応表
Section titled “接続配線対応表”MAIN基板 Debug1 ピン |
信号名 | Debug Pico の接続ピン | 説明 |
|---|---|---|---|
| 1 | VBAT |
VBUS (40番ピン) または VSYS (39番ピン) |
Debug Pico から MAIN 基板へ電源を供給する場合に接続する. ⚠️警告: 電池を使用する場合は絶対に接続しないこと. |
| 2 | GND |
GND (任意のGNDピン.例: 3, 8, 38番ピン等) |
グランド(電位の基準)を共通にする(接続必須). |
| 3 | TX |
GP5 (7番ピン / UART RX) |
OBC からのシリアルログ出力を Debug Pico で受信する. |
| 4 | RX |
GP4 (6番ピン / UART TX) |
Debug Pico から OBC への入力を送信する. |
| 5 | SWDIO |
GP3 (5番ピン / SWDIO) |
SWD デバッグデータ線(双方向データ通信). |
| 6 | SWCLK |
GP2 (4番ピン / SWCLK) |
SWD デバッグクロック線(デバッグ同期用クロック). |
[!WARNING]
- 必ず両方の機器の電源を切った状態で配線を行うこと.
- 電池等の外部電源から MAIN 基板に電力を供給する場合は,1番ピン (
VBAT) と Debug Pico のVBUS/VSYSを絶対に接続しないこと.電源の衝突により Pico や PC が破損する恐れがある.
3. デバッグ実行の手順
Section titled “3. デバッグ実行の手順”- 上記の接続配線表に従い,Debug Pico と MAIN 基板の
Debug1コネクタを接続する. - PC と Debug Pico を Micro USB ケーブルで接続する.
- MAIN 基板に電源を供給する(バッテリーを接続するか,電池を使用しない場合は
VBATに VBUS 等から給電する). - VS Code で
sateliteディレクトリを開く. - F5 キー を押すと,プログラムのビルド,Debug Pico 経由での書き込み,およびデバッガ(GDB)によるデバッグ実行が自動で開始される.
- デバッグ中は,VS Code 上でコードにブレークポイントを設定したり,変数の値をリアルタイムに監視したりできる.