【Raspberry Pi Pico入門 – 応用編】リセットボタンを追加する

Raspberry Pi Pico入門,応用編Arduino,Raspberry Pi Pico

概要

Raspberry Pi PicoはUSBケーブルでPCや充電器に接続するとプログラムをスタートする仕組みになっていますが、もう一度プログラムの最初から再スタートしたいときはUSBを抜き差しする必要があります。ただ、基板上のコネクタはそれなりに固いですしコネクタの強度も高いとは言えないので、何度も抜き差しするのは不安があります。そういう時のためにプログラムをリセットするボタンを追加します。

めちゃくちゃ便利なので基板上に実装してほしいんですが、なぜかサードパーティ製にはあるのに公式のボードにはありません。

実行環境

MCU:Raspberry Pi Pico、Raspberry Pi Pico W

回路

以下のようにスイッチを配線してください。スイッチを押すとRaspberry Pi Picoが再起動します。
※厳密に言うと、スイッチを押している間はマイコンへの電源供給がストップします。なのでスイッチを押すとマイコンが停止し、離すと再起動します。

回路図は以下のようになります。

コーディング

コードの変更は不要です。今動かしているプログラムをそのまま使えます。

解説

Raspberry Pi Picoの電源周りの回路は以下のようになっています。RT6150BはUSBの5Vを3.3Vに変換する電源ICです。このICにはON/OFFスイッチ機能があって、ENをHighにするとONとなりVOUTから3.3Vを出力、LowにするとOFFとなりVOUTは0Vとなります。何もしなければ100kΩの抵抗(R2)がUSB電源に繋がっているのでプルアップ抵抗となり、ENは常にHighとなります。
つまり3V3_ENをスイッチを介してGNDに接続することで、ENをLowにしてVOUTの出力をOFFにしてマイコンを停止させています。

Raspberry Pi Pico Wの電源周りは以下のような回路になっており、無印と同じく電源ICのENが3V3_ENに繋がっています。なので無印と同じ回路で問題ありません。