Raspberry Pi Picoの上位互換にWaveshareからLCDモニタ搭載モデルがあります。
Raspberry Pi Picoとの比較と、SPIの配線なしで扱えるLCDを使ってみます。
特徴
RP2040-LCD-0.96の特徴
Waveshareからは、互換モデルのRP2040-Pulseが発売されています。
こちらはさらにLCDが搭載されたモデルになります。
差分項目 | RP2040-LCD-0.96 | Raspberry Pi Pico |
---|---|---|
接続 | Type C | Micro B |
フラッシュMemory | 2MB | 2MB |
ADC | 3 | 3 |
GPIO | 26 | 26 |
ボタン | BOOT RESET | BOOT |
LED | 青(GP25) | 緑(GP25) |
その他 | IPS LCD 0.96inch ST7735 ピン配置は表を参照 Lipo PH1.27(1000mA充電) | – |
Raspberry Pi Pico 互換基板のまとめ
ピン配置
Raspberry Pi Picoとピン配置は同じですが、LCDを使用すると「LCD used pins(SPI1)」が使用されます。

メーカーのものは背面からのピン配置表ですが、モディファイでは上面からのピン配置表です。
外観


Raspberry Pi Picoと同じWaveShareから販売されているRP2040-Plusと比べます。
左からRP2040-LCD-0.96、RP2040-Plus、Raspberry Pi Picoです。
基板サイズは3枚とも同じで、USBコネクタの突き出し量も差異は感じられない程度です。
Raspberry Pi Pico では基板後方にSWDのスルーホールがありますが、RP2040-LCD-0.96ではどう位置にバッテリーコネクタがあるため、デバッグ用のパターンは裏面にパッドとして用意してあります。

Raspberry Pi Picoの記事
RP2040-Pluseの記事
使ってみて
電子部品専門店やショッピングサイト、AliExpressなど取り扱いは多いですが少し割高と感じます。LCDは0.96inchと小さいですが、LCDを使うための煩わしいSPI配線がないので助かります。
普段Adafruit製のライブラリを利用していますが、色が反転するなどいくつかの難あり品ですが
[2023/5/6 スケッチの修正により解消]
バッテリーコネクタがあることにより単体駆動が可能であり、リセットボタンがあることでワンプッシュで再起動ができるなどユーティリティも豊富で評価には申し分ありません。
LCDの使い方については、別途LCDモジュールで詳しく行います。
その他のRP2040搭載基板について
準備
使い方はRaspberrp Pi Picoと同じですので、こちらのリンクを参照してください。
ライブラリ
Arduino IDEのボードマネージャからRaspberry Pi Pico用のライブラリのインストールとボードの選択をします。
検索 | RP2040 |
---|---|
ボードライブラリ | Raspberry Pi RP2040 Boards(x.x.x)※1 |
選択するボード | Raspberry Pi RP2040 Boards(x.x.x) > Generic RP2040 |
変更する設定 | Tools > Flash Size > 2MB(no FS) |
LCDを制御するためのライブラリにはAdafruit製ライブラリを使用します。
ライブラリマネージャから以下のライブラリをインストールしてください。
ライブラリ名 | 検索 |
---|---|
Adafruit GFX Library | Adafruit GFX |
Adafruit ST7735 and ST7789 Library | Adafruit ST7735 |
基本スケッチ
RP2040-LCD-0.96 のペリフェラルの使い方についてサンプルを記載します。
LCDの詳しい使い方はLCDモジュールで紹介します。
LCDの表示
サンプルスケッチ
/**********************************************************************
【ライセンスについて】
Copyright(c) 2022 by たまねぎ
Released under the MIT license
![]()
About Licence当サイトで掲載しているスケッチのライセンスについて OSSの利用について 当サイトで掲載しているスケッチおよびプログラム(以下プログラム)は、Open Source Software(以下OSS)を利用しています。誰でも当サイトに掲載されて...
【スケッチの説明】
RP2040 LCD 0.96 で使用できます。
ビルトインLCDの表示制御を行います。
画面に "TAMANEGI"と表示時ます。
【準備】
配線は不要。
【バージョン情報】
2022/7/9 : 新規
2023/5/6 : 初期化パラメータの修正(INITR_MINI160x80 -> INITR_MINI160x80_PLUGIN)
修正により、指定した色での描画ができる。
**********************************************************************/
#include <Adafruit_GFX.h>
#include <Adafruit_ST7735.h>
#include <SPI.h>
//ピン番号設定
#define TFT_DC 8 // DC
#define TFT_CS 9 // CS
#define TFT_SCLK 10 // Clock
#define TFT_MOSI 11 // MOSI
#define TFT_RST 12 // Reset
//Waveshare RP2040-LCD0.96では、SPI1にモニタが配線されているので、SPI1をコンストラクタに指定する
Adafruit_ST7735 tft = Adafruit_ST7735(&SPI1, TFT_CS, TFT_DC, TFT_RST);
void setup(void)
{
SPI1.setTX(TFT_MOSI); //H/W SPI 設定
SPI1.setSCK(TFT_SCLK);
tft.initR(INITR_MINI160x80_PLUGIN); //ST7735S初期化 [2023/5/6] INITR_MINI160x80 -> INITR_MINI160x80_PLUGIN
tft.fillScreen(ST77XX_BLACK); //背景の塗りつぶし
//テキスト表示
tft.setCursor(40, 30); //カーソル位置
tft.setTextSize(2); //サイズ
tft.setRotation(3); //画面回転
tft.setTextColor(ST77XX_YELLOW); //表示色
tft.print("TAMANEGI");
}
void loop()
{
}
スケッチの説明
LCDはSPI1に配線されているので、ピン配置表に従いSPI1のピン番号をマクロ定義します。
Adafruit製のライブラリでは、コンストラクタにSPIオブジェクトを設定することでハードウエアSPIで動作します。
コンストラクタにピン番号を設定するとソフトウエアSPI制御となり描画速度は遅くなります。
結果
背景を黒、文字を黄色で指定していますが、指定した色で表示されません。
また、画素数があっていないのか、画面の端に砂嵐が確認できます。
[2023/5/6] LCDの初期化パラメータを変更することで解消しました。

IPS方式なだけに、視野角が広いです。
角度をつけてみても色変化はあまり感じられません。

コメント