RP2040-Plus【Waveshare】を購入してみました

Raspberry Pi/電子工作
スポンサーリンク

こんにちは、あろっちです。

当ブログでは、過去にArduino Nano RP2040 Connectを購入した体験記事を執筆しましたが、今回はRP2040-PlusというWaveshareのRP2040を搭載したボードを購入したのでご紹介したいと思います。

Waveshare製品ではRP2040-Zeroも記事にしていますのでぜひご覧ください。

2022年末にRP2040-Oneが発売されました。

参考サイト:

スポンサーリンク

RP2040-Plusについて

Raspberry Pi Picoと形状/ピン配置に互換性があるボードです。
名前の通り、Raspberry Pi Picoに以下の特徴を”プラス”したようなボードになります。

特徴

  • ほとんどのRaspberry Pi Picoアドオンモジュールと互換性がある
  • オンボードの4MBフラッシュメモリ (Raspberry Pi Picoは2MB)
  • USB Type-C
  • リセットボタン
  • モバイルデバイスに適したリチウム電池の再充電/放電ヘッダー搭載
  • 高効率DC-DC昇降圧チップ(TPS63000、1.8A電流スイッチ)搭載
MCURP2040 デュアルコア ARM Cortex M0+プロセッサ、最大動作周波数 133 MHz
フラッシュメモリ4MB
GPIO26(ピン配列はRaspberry Pi Picoと互換)
RP2040-Plus, A Low-Cost, High-Performance Pico-Like MCU Board Based On Raspberry Pi Microcontroller RP2040
RP2040-Plus, A Low-Cost, High-Performance Pico-Like MCU Board Based On Raspberry Pi Microcontroller RP2040

仕様

サイズ

搭載しているもの

  1. LED
    ユーザーLED
  2. USB Type-Cコネクタ
  3. TPS63000
    高効率DC-DC昇降圧チップ
  4. ETA6096
    高効率リチウム電池充電マネージャー
  5. BOOTボタン
  6. W25Q32JVSSIQ
    4MBフラッシュメモリ
  7. リセットボタン
  1. RP2040
    デュアルコア ARM Cortex M0+プロセッサ、最大動作周波数 133 MHz
  2. バッテリーヘッダー
    Molex 1.25ヘッダー(3.7Vリチウムバッテリー用)により、バッテリーの再充電とボードへの電力供給を同時に行うことができます
  3. ピン配
    Raspberry Pi Picoと互換性があります
  4. USBテストポイント
    USBインターフェースに接続可能
  5. BOOTテストポイント
    BOOTボタンに接続可能
  6. デバッグポイント

ピン配列

ギャラリー

こんな感じです。

ピンヘッダー装着後

Raspberry Pi Picoとの比較

形状、ピン配列は、ほぼ同じことが確認できますね。

USBマスストレージモード

BOOTボタンを押した状態で、リセットボタンを押すと、USBマスストレージモード(RPI-RP2)になります。

USBマスストレージモードの時に、PCからMicroPythonやCircuitPythonのファームウェアなどがインストールできます。

CircuitPython

CircuitPython - RP2040-Plus with 4MB Flash Download
Need more Flash for Raspberry Pi Pico? Dislike the outdated Micro USB connector? All these problems are solved by our RP...

MicroPythonはRaspberry Pi Picoのファームウェアを使用できます。

Arduino IDEの設定

  • Arduino IDEにボードを追加
    ※実施済みの場合、この手順は不要です。

事前にRaspberry Pi Pico/RP2040ボードを追加します。追加方法は、以下の記事をご参照ください。

  • Raspberry Pi Pico/RP2040ボードのインストール

[ツール] > [ボード] > [ボードマネージャ]をクリックし、検索ボックスに「rp2040」と入力し、[Raspberry Pi Pico/RP2040]ボードをインストールします。
※以下は、バージョン1.9.5をインストール済みの画像です。実際には最新バージョンをインストールすればよいでしょう。

  • ボードの選択

[ツール] > [ボード] > [Raspberry Pi RP2040 Boards(Ver)] > [Waveshare RP2040 Plus 4MB]を選択します。

Raspberry Pi Pico/RP2040ボード(Arduino-Pico) バージョン2.6.4より前の場合

[ツール] > [ボード] > [Raspberry Pi RP2040 Boards(Ver)] > [Generic RP2040]を選択します。

RP2040-Plusはフラッシュメモリの容量を4MBに設定できます。
[ツール] > [Flash Size:] > [4MB (no FS)]を選択します。

  • シリアルポートの選択

[ツール] > [シリアルポート]からRP2040-Plusが接続されているシリアルポートを選択します。

サンプルプログラム

タクトスイッチで内蔵LEDをON/OFFしてみる

タクトスイッチを押すと、内蔵LEDが点灯するArduinoスケッチです。

スケッチは、[スケッチ例] > [02.Digital] > [Button]のスケッチを修正したものです。

タクトスイッチ(buttonPin)をGPIO16に、LED(ledPin)を内蔵LED(LED_BUILTIN)に変更しました。

// constants won't change. They're used here to set pin numbers:
const int buttonPin = 16;     // the number of the pushbutton pin
const int ledPin =  LED_BUILTIN;      // the number of the LED pin

// variables will change:
int buttonState = 0;         // variable for reading the pushbutton status

void setup() {
  // initialize the LED pin as an output:
  pinMode(ledPin, OUTPUT);
  // initialize the pushbutton pin as an input:
  pinMode(buttonPin, INPUT_PULLUP);
}

void loop() {
  // read the state of the pushbutton value:
  buttonState = digitalRead(buttonPin);

  // check if the pushbutton is pressed. If it is, the buttonState is HIGH:
  if (buttonState == HIGH) {
    // turn LED off:
    digitalWrite(ledPin, LOW);
  } else {
    // turn LED on:
    digitalWrite(ledPin, HIGH);
  }
}

RP2040-PlusとRaspberry Pi Picoに同じスケッチを書き込んで試してみました。

2つとも同じように動作することを確認できますね。

アナログ入力を試してみました

今回は、CircuitPythonで、以下の記事のボリューム抵抗でLEDの光量が変化する回路基板を使って試してみました。

CircuitPythonは、Raspberry Pi Pico用のファームウェアを使いました。

こんな感じで、Raspberry Pi Picoと同じように動きました。

TFT(IPS) 1.3インチディスプレイ(SPI)を試してみました

TFT(IPS) 1.3インチディスプレイを試してみました。

Raspberry Pi Picoで以下のように表示されるArduinoスケッチ。

使用しているエキスパンダーは、Raspberry Pi Pico用のものです。

このエキスパンダーにRP2040-Plusをセットして、同じスケッチを試してみました。

Raspberry Pi Picoと同じように動きましたね。

バッテリーで動かしてみました

RP2040-Plusには、Molex 1.25mmのバッテリーコネクタが搭載されているので、バッテリーで動くか試してみました。

Raspberry Pi Pico用のGrove ShieldにGrove OLEDディスプレイモジュールとSPIのTFT(IPS) 1.54インチのディスプレイを取り付けて、同時に表示するスケッチを動かしてみました。

バッテリーで見事に動きました。Raspberry Pi PicoのGrove Shieldも使えるようですね。

まとめ

Raspberry Pi Picoにはなかったリセットボタンなどが追加され、Raspberry Pi Picoと同じ回路が使えるのが魅力的なボードですね。

当ブログのマイコン記事です。ぜひご覧ください。

この記事を書いた人
あろっち

元ITエンジニアです。

当ブログでは、興味があること、役に立ちそうなこと、気になったことを発信していきます。

記事についてのコメントや質問があれば、ぜひお寄せください。
また、ご依頼等は「お問い合わせ」よりお気軽にご連絡ください。

あろっちをフォローする
Raspberry Pi/電子工作IT
あろっちをフォローする

コメント

タイトルとURLをコピーしました