8
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【ちょいネタ】Raspberry Pi PicoのBOOTSELボタンでリセットする方法とクロップアップダウン時の消費電流

Last updated at Posted at 2022-07-24

Raspberry Pi Picoのプログラミング環境として、オススメなのはArduino IDEです。
昨年、その扱い方を解説する本をKindle書籍として出版しましたが、その中で紹介しているボード定義よりも使いやすいarduino-picoというものがあるため、新たに書き直したものを出版しました。

2022年版マイコンはじめの一歩! Arduino IDEではじめるRaspberry Pi Pico: 1st

紹介しているボード定義は、すでにRaspberry Pi Pico Wにも対応していて、Wi-Fiも手軽に扱えるようになっています。
この記事では、書籍には書かなかった小ネタを紹介します。

Raspberry Pi PicoのBOOTSELボタンでリセットする方法

Raspberry Pi Picoにはリセットボタンがありません。Arduino IDEで書き込む際は、自動的にリセットかけてくれるので、特に問題はありませんが、それでもスケッチを頭から動かしたいときにリセットしたくなるタイミングがあります。その際には、以下のように書くとBOOTSELボタンでリセットできるようになります。

void setup()
{

{

void loop()
{
  if(BOOTSEL){
    delay(10);
    while(BOOTSEL);
    delay(10);
    rp2040.reboot();
  }
}

arduino-picoでは、BOOTSELにBOOTSELボタンの状態が入ります。それを読み込んで、BOOTSELボタンを押して、離した際にリセットがかかるようにしたスケッチです。
BOOTSELボタンを押したときにリセットをかけるとBOOTモードが切り替わってしまうため、離したときにリセットがかかるようにしています。delayはチャタリングを防止するためのものです。
(2023/04/09 編集 いつの間にか、リセット用の関数が用意されていたため、それを使用するように上記スケッチを書き換えました。arduino-pico 3.1.0では確認済み)

クロップアップダウン時の消費電流

arduino-picoでは、Raspberry Pi Picoのクロックを簡単に切り替えられるようになっています。

image.png

高速な処理が必要な場合は、オーバークロックすることも可能ですが、Raspberry Pi Picoとしてはクロックダウンして消費電流を押さえられる方が魅力だと思います。
通常の133MHzではRaspberry Pi Pico単体の消費電流は20mA程度ですが、クロックが50MHz、250MHzのときに次のようになりました。

  • 50MHz
    11mA程度
    image.png

  • 250MHz
    37mA程度
    image.png

Raspberry Pi Picoの電源回路は、アップダウンコンバータを積んでいるので単3電池2本でも動くようになっています。バッテリー駆動の場合は、50MHzにダウンすれば電池寿命は倍程度になる様です。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?