このエラーの時の変数の値が知りたいな~
プログラムがうまく動かないのか?
Raspberry Pi Pico Wでもデバック機能が使えると
いいのだが。。。
Raspberry Pi Pico / Wのデバッグができるぞ!
デバッグとは、プログラムした、ソースコード(スケッチ)のエラーや、バグ(意図しない動きなど)を見つけて、修正することです。
この記事紹介する、デバッグ機能は、プログラムを実行した際に、ソースコード(スケッチ)内の指定した行にあるプログラムで実行を止め、その時点の変数などの値を調べたり、停止したプログラムの次の処理を順々に実行(ステップ実行)させることができる機能のことを示します。
この機能があると、プログラムの各ステップにおける状態を確認できるため、デバッグ作業が非常にやりやすくなります。
Arduino IDE でRaspberry Pi Pico/Wをデバッグするには
まず、今回の記事の目標を確認しましょう。
次のような仕組みを作ることが目標です。
図でもわかるように、Picoprobe用の「Raspberry Pi Pico」を一つ用意します。
Raspberry Pi Picoは、安価で手に入るので、おすすめです。
Raspberry Pi Pico
Arduino、C/C++、MicroPythonに対応している組み込み開発キットです。
正確なタイマ機能、温度センサーなどを備えたモデルです。ディスプレイ等がないため、消費電力を抑えた構成をとることができます。いろいろ遊べますよ~
Click Me !!Amazonで確認 小さなマイコン!ここからはじめましょう! |
- Raspberry Pi Picoに「Picoprobe」を構成する
- プログラム実行用のRaspberry Pi Pico/WをArduino IDE で書き込めるようにする
- プログラム実行用のRaspberry Pi Pico/Wと「Picoprobe」を結線する
- Arduino IDE 2.1.0のデバッグ環境を整える
- 「Picoprobe」経由でプログラムを書き込む
- デバッグ機能を使う
Raspberry Pi Picoに「Picoprobe」を構成する
Raspberry Pi Picoに、「Picoprobe」を構成します。
所要時間:10分程度
The official documentation for Raspberry Pi computers and mi…
左のRaspberry Pi 公式サイトにアクセスします。

「Debugging using another Raspberry Pi Pico」
「Download the UF2 file」のリンクを
クリックします。

ダウンロードされる「picoprobe.uf2」を
コピーします。

Raspberry Pi Pico の「BootSel」ボタン
を押します。
※ボタンは押したまま

Raspberry Pi Pico をパソコンにUSBで
接続します。
※ボタンは押したまま

Raspberry Pi Pico がパソコンに
USBドライブとして認識されます。
※ボタンを離す

コピーした「picoprobe.uf2」を
Raspberry Pi Picoのドライブへ
ペーストします。
※読み込まれるとUSBドライブの
認識が外されます。

Windowsのデバイスマネージャを開きます。
「ユニバーサルシリアルバスデバイス」に
「Picoprobe CMSIS-DAP v2」として認識されます。※「libusb-win32」デバイスとして認識される
可能性があります。
その場合は「補足」にあるツールを使って、
「WinUSB(v6.1.7600.xx)」に
ドライバを変更します。
補足
Iibusb-win32」デバイスとして認識されている場合、次のツールを使ってドライバを変更します。
ツールは、インターネットで検索してダウンロードしてください。
ツール:zadig-2.8.exe(2023年6月時点)
変更内容
・[Options]から、[List All Devices]を選択します
・対象のインターフェイスを選択します
・Driverを「WinUSB」に変更します
・ Replace Driverボタンを押します
プログラム実行用のRaspberry Pi Pico/WをArduino IDE で書き込めるようにする
すけろく ついに、国内でもRaspberry Pi Pico Wを手に入れたぞ! げんろく Wi-Fiモジュールがついているので、 国内の技適取得が必要だったからな。 すけろ[…]
すけろく うぬぬ。 げんろく どうした? 何かあったのか? すけろく Raspberry Pi Pico W にArduinoから プログラムが書き込めないのだ・・・ […]
プログラム実行用のRaspberry Pi Pico/Wと「Picoprobe」を結線する
Raspberry Pi Pico Wにピンヘッダをはんだ付けする
「Raspberry Pi Pico W」には、ピンヘッダをつけるための穴(ランド)がついています。
ピンヘッダをつけることで、ブレッドボードや、ディスプレイのシールドなどと接続することができます。
ピンヘッダとは次のようなものです。
入手元:秋月電子
型番:PH-1x40S
片方のピンが長いものになります。
40ピンありますので、8ピン分を切って使うなどできます。
秋月電子さんの通販サイトURLはこちらです。
電子工作という言葉を聞くとまず思い浮かぶのは、中学校の技術家庭の授業でやったはんだ付け。 最近の学校は実習とかやっているのかなとふと思います。 子供の頃は何となく作業していたので、今思うと「よく部品壊さなかったな・・・」と思いま[…]
Raspberry Pi Picoのはんだ付け部分
Raspberry Pi Picoのはんだ付け部分は、次の通りになります。
周囲GPIOと今回デバッグに使うGPIOは上下逆に、ピンヘッダをはんだ付けします。
はんだ付けした結果は次のようになります。
デバッグに使うピンヘッダだけ、上向きにはんだ付けしています。
Raspberry Pi Pico Wのはんだ付け部分
Raspberry Pi Pico W のはんだ付け部分は、次の通りになります。
周囲GPIOと今回デバッグに使うGPIOは上下逆に、ピンヘッダをはんだ付けします。


ブレッドボードを使って結線する
はんだ付けが終わったら、ブレッドボード上で、プログラム実行用のRaspberry Pi Pico/Wと、「Picoprobe」を結線します。
結線内容は次の通りです。


安心のサンハヤト。両端に「+」と「ー」のラインがあります。電圧の違う回路を扱う場合に便利なブレッドボードです。最初はこれが一枚あるとよいと思います。
Click Me !!Amazonで確認 電子工作には必須!はじめましょう! |
ジャンパーワイヤー、オス-メス・オス-オス・メス-メスピッチ2.54mm * 40Pin
ブレッドボードとM5Stackなどのコネクタを持つ部品をつなぐ配線材です。
オス(pin)ーオス(pin)、オス(pin)ーメス(コネクタ)、メス(コネクタ)ーメス(コネクタ)がセットになっています。100mmの線になります。いろいろな色があるので配線をわかりやすく分けられます。
Click Me !!Amazonで確認 電子工作には必須!オス/メスいろんな組み合わせは便利! |
ブレッドボードとM5Stackなどのコネクタを持つ部品をつなぐ配線材です。
オス(pin)ーオス(pin)の200mmの線になります。いろいろな色があるので配線をわかりやすく分けられます。
Click Me !!Amazonで確認 電子工作には必須!安心のサンハヤト! |
Arduino IDE 2.1.0のデバッグ環境を整える
前提条件
この手順は、Arduino IDEにボードマネージャとして「Raspberry Pi Pico/RP2040」がインストールされていることが必要です。
使用する情報 | 設定値 |
ボードマネージャURL | https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json |
ボードマネージャ名 | Raspberry Pi Pico/RP2040 |
ボードマネージャの追加手順については、次の記事をご覧ください。
ボードマネージャのインストール手順については、次の記事を参考にしてください!
今回は、「Arduino IDE 2.0」の「ボードマネージャ」と書き込み先のボードの指定について記載します。 Arduino IDEは、Arduinoに対応した各種ボード(Arduino uno、M5Stack、M5Stic[…]
所要時間:10分程度
Windowsのエクスプローラから、以下のフォルダにアクセスします。
C:\Users\{ユーザー名}\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\{Arduino-picoのバージョン}\lib

「picoprobe.tcl」をメモ帳で開きます。

「picoprobe.tcl」をメモ帳で開きます。
次のとおり変更し保存します。
【変更前】
source [find interface/picoprobe.cfg] 【変更後】
source [find interface/cmsis-dap.cfg]
Windowsのエクスプローラから、以下のフォルダにアクセスします。
C:\Users\{ユーザー名}\AppData\Local\Arduino15\packages\rp2040\tools\pqt-openocd\1.5.0-b-c7bab52\share\openocd\scripts\interface

「cmsis-dap.cfg」をメモ帳で開きます。

「picoprobe.tcl」をメモ帳で開きます。
次の内容を追加し保存します。
【変更前】
transport select swd
adapter_khz 500
「Picoprobe」経由でプログラムを書き込む
いよいよ、プログラムの書き込みを「Picoprobe」経由で行います。
所要時間:10分程度

パソコンと、「Picoprobe」を接続します。

Arduino IDEを起動します。
[ツール]-[ボード]から、下記を選択します。
[Raspberry Pi Pico/RP2040] – [Raspberry Pi Pico W]

3
[ツール]-[ボード]から、下記を選択します。
[Upload Method]から[Pocoplobe (CMSIS-DAP)]を
選択します。
void setup() { // put your setup code here, to run once: Serial.begin(); Serial.println("Picoprobe Test"); } void loop() { // put your main code here, to run repeatedly: Serial.println("Picoprobe Test loop"); }
新規にスケッチを開き、左のようなプログラムを
入力します。

[スケッチ]-[書き込み]を選択して書き込みます。

書き込みが終わるまでしばらく待ちます。
デバッグ機能を使う



編集後記
いかがだったでしょうか。
Raspberry Pi Pico/Wで開発する際に、便利なデバッグ機能をArduino IDEで使うことができました。
これで、効率的なプログラム開発ができますね!
Raspberry Pi Picoは、非常に安価な開発ボードなので、「Picoprobe」を手軽に手に入れることができます!
以下のリンクからRaspberry Pi PicoやRaspberry Pi Pico Wを、ぜひ手に入れてくださいね~
Raspberry Pi Pico
Arduino、C/C++、MicroPythonに対応している組み込み開発キットです。
正確なタイマ機能を搭載しています。ディスプレイ等がないため、消費電力を抑えた構成をとることができます。いろいろ遊べますよ~
Click Me !!Amazonで確認 小さなマイコン!ここからはじめましょう! |
Raspberry Pi Pico W
Arduino、C/C++、MicroPythonに対応している組み込み開発キットです。
正確なタイマ機能やWifi/Bluetoothを搭載しています。ディスプレイ等がないため、消費電力を抑えた構成をとることができます。いろいろ遊べますよ~
Click Me !!Amazonで確認 Wifi対応の小さなマイコン!ここからはじめましょう! |