1.54インチIPS液晶(240×240,ST7789,SPI)をArduinoに繋いで動かしてみた。
この間 1.3インチ液晶が動かすのに失敗してしまったのだけど、そのリベンジみたいな感じだ。
というか、先にAliexpressで1.54インチ液晶を注文していたのに、全然届かなくて仕方なく代わりにAmazonで1.3インチ液晶を買って試したのだった。
基板の裏側には少し部品が載っているが、これはバックライトの電源をOn/OffするためのFETかトランジスタの回路だ。BLKという信号ピンで制御できる。BLKピンはプルアップされているので、未接続ならバックライトが常時Onとなる。
信号接続はSPIとGPIOで、ピン配置は他の品物と一緒なので、前に0.96インチ液晶モジュール用に作った変換基板のコネクタにそのまま繋ぐことができる。
Arduinoは、Arduino Uno互換機で3.3V動作のものを使用した。
写真右側は前回の1.3インチ液晶モジュールだ。
液晶の大きさを比較すると、こんな感じ。
ソフトについても、特に問題なく動作した。
ピンの設定は、CS信号(SS信号,Slave select)とD/C信号(RS信号)と、RESET信号のピンをArduinoの8番ピン~10番ピンに繋いだ。以下のような接続でソフトの設定をした。
#define TFT_CS 10
#define TFT_RST 9 // Or set to -1 and connect to Arduino RESET pin
#define TFT_DC 8
SDA信号(MOSI信号)は、11番ピンに接続。
SCL信号(SCLK信号)は、13番ピンに接続。
こちらはハードウェアのSPI機能を使うので、特に定義をソフトに書かなくても大丈夫だ。
初期化を次のように書かれた部分のコメントアウトを外して有効化して、使う。
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);
無事動作させることができた。というか、これが普通だ。
この液晶をRaspberry Pi Zeroに繋ぐのを試してみたい。
既製の液晶HATとかは存在するので、そのクローンっぽいものを自作する感じで。
ちょっと1.54インチ液晶モジュールだと大きさが少しだけ大きすぎるのが難点だ。
—
1.3インチの液晶については、Aliexpressでまた注文してので届いたら再度動かすのを試してみる予定だ。