Raspberry Pi Zero 2WでWebラジオを作っているのだが、手持ちの2インチLCDでは画面が小さくて見にくいい。
そこで、Ali-Expressで2.8インチLCDを購入。
2インチ版LCDと同じST7789を使ったLCDパネルなのである。
他にもまとめて買ったので割引と送料無料で576円で買えた。
表面
裏面
で、いつものように2インチLCDと並べて表示してみる。
以前に2.4インチLCDの時に試した↓ 同じ回路、スケッチで動作させてみる。
すると、2.8インチ版LCDの表示色が反転している。
色も、なんだかおかしい。
え~、どうしよう。困った。
ぬぁ~~にぃ~、やっちまったなぁ~
男は黙って、ネット検索!
ネットで調べると、液晶の種類によって、色反転設定が必要らしい。
液晶は、主にTN方式と、IPS方式のパネルが有るようで、今回購入したものは、おそらくTN方式のものと思われる。(視野角が狭めで斜めから見た時に色の変化が大きい。Ali-Expressの商品説明ではTFT(IPS)と書いてあるのに・・・)
TN方式は無電圧では透過だが、IPS方式では遮蔽(黒)となる。つまりIPS方式と論理が逆になるので、色が反転してしまうようなのだ。
で、具体的にどうすれば良いかわからなかったので、ChatGPTに訊いてみた。
すると、
Adafruit_GFX/Adafruit_ST7789 ライブラリには反転制御関数が用意されている。
tft.invertDisplay(true); //←反転制御
または tft.invertDisplay(false);
初期化後にこのコードを入れて試してみろというので試した。
結果的には、tft.invertDisplay(false); を入れることで、ちゃんと動いた。
ST7789のLCDの初期値は反転onになっているみたい。
ようやく正常な色になった
文字が大きくて読みやすい
ああ、やはり画面が大きいのは、とても良いのである。
次にRaspberry Pi のPythonではどうするかも訊いた。
結論は、LCD初期化後に、直接コマンドを叩くのが正解。
device.command(0x20) # INVOFF
修正前 色が反転。でも背景が白も悪くないかも・・・
修正後
画面が大きくなって文字がすごく大きい
老眼のおじさんが、詳細表示モードでも文字が大きくて問題なく読むことが出来る。
大型パネルにして良かった。
ああ、最初はどうなるかと思った。
おじさんは、何かあるとすぐ凹んでしまうのである。
でも、まぁ、今回も何とかなって良かった~。
「そんなことより、ご飯をくれニャ~」













