スペアナプロジェクト用ですが、2インチのLCD(240*320 dots)を購入、SDカードのアクセスもできるようになってますが
https://learn.adafruit.com/2-0-inch-320-x-240-color-ips-tft-display/pinouts
動作確認はArduino IDE使って、ライブラリは、
をインストします
接続は以下のソースコードの通りですが、電源はピコの3.3V出力から取ろうとすると過電流(おそらくピコの電源電圧低下して動作不能状態になってる)でUF2ファイルのダウンロードできないので、USB電源であるVBUSから取らないと機能しなかった
電源電圧とバックライト制御信号(PWM)をまとめてVBUSに接続しています、従ってバックライトの輝度はmax状態ということ、GNDは一本なのでピコ – LCD間の接続は全部で8本です
<テスト用コード>
#include <adafruit_gfx.h>
#include <adafruit_st7789.h>
#include <spi.h>
// ピン定義(PicoのGPIO番号)
#define TFT_CS 17 // pin 22
#define TFT_RST 21 // pin 27
#define TFT_DC 20 // pin 26
#define TFT_SCK 18 // pin 24
#define TFT_MOSI 19 // pin 25
SPISettings settings(2000000, MSBFIRST, SPI_MODE3);
Adafruit_ST7789 tft = Adafruit_ST7789(&SPI, TFT_CS, TFT_DC, TFT_RST);
void setup() {
tft.init(240, 320, SPI_MODE3);
delay(100);
tft.fillScreen(ST77XX_WHITE); // 背景を白に設定
tft.setRotation(1); // 画面を90度回転
tft.setCursor(20, 100); // 文字の表示位置を設定
tft.setTextColor(ST77XX_BLUE);
tft.setTextSize(3); // 文字サイズを設定
tft.print("Hello Pico"); // 文字の表示
}
void loop() {
delay(1000);
}
ST7789は制御回路にフレームメモリを持っているので、ラズピコからのリフレッシュ動作は不要なので使いやすいと思う、まあラズピコでリフレッシュさせたら負荷も大変だろうから、こういう制御チップがあるということだろう
admin
“ラズピコでspiバス経由でLCD表示させる” への1件の返信