2022年5月13日金曜日

1.69 inch IPS LCD 240x 280 (ST7789V2)

1.69 Inch LCDをRaspberry Piと接続してRetroPieで使用してみました。


[関連記事]

1.69 inch IPS LCD Display Module





1.69 inch IPS LCD Display Module
1.69 inch IPS LCD Display Module


この液晶の特徴は、最近のスマートフォンのように角が丸くなっていることです。
恐らくスマートウォッチのLCDだと思われます。





1.69 inch IPS LCD (裏)
1.69 inch IPS LCD (裏)



用意したLCD


テスト機材
Raspberry Pi 4 [retropie-buster-4.7.1-rpi4_400.img.gz]




1.3インチLCDとは違いCSがあります。
1.14インチLCD1.54インチLCDと同じ配置で使用できます。



GND → PIN20(GND)
VCC → PIN17(3V3:power)
SCL → PIN23(GPIO11:SPI_SCLK)
SDA → PIN19(GPIO10:SPI_MOSI)
RES → PIN13(GPIO27)
DC → PIN22(GPIO25)
CS →  PIN24(GPIO8:SPI_CE0)
BLK → PIN18(GPIO24)



fbcp-ili9341をダウンロード
sudo apt-get install cmake cd ~ git clone https://github.com/juj/fbcp-ili9341.git cd fbcp-ili9341


st7735r.hを変更
sudo vi st7735r.h #if defined(ST7789) || defined(ST7789VW) #define DISPLAY_NATIVE_WIDTH 240 #define DISPLAY_NATIVE_HEIGHT 280

st7735r.cppを変更
sudo vi st7735r.cpp #ifdef ST7789 // // // // if ((madctl & MADCTL_ROW_ADDRESS_ORDER_SWAP)) SPI_TRANSFER(0x37, 0, 20); #endif



ビルド
mkdir build cd build cmake -DSTATISTICS=0 -DST7789VW=ON -DSPI_BUS_CLOCK_DIVISOR=10 -DGPIO_TFT_DATA_CONTROL=25 -DGPIO_TFT_RESET_PIN=27 -DGPIO_TFT_BACKLIGHT=24 .. make -j
180°回転が必要な場合は"-DDISPLAY_ROTATE_180_DEGREES=ON"をビルドオプションに追記すればいいかと思います。



/etc/rc.localに追記
sudo vi /etc/rc.local sudo /home/pi/fbcp-ili9341/build/fbcp-ili9341 & exit 0



再起動
sudo reboot


※設定変更時はディレクトリを削除後ビルドから
cd fbcp-ili9341 rm -rf build


/boot/config.txtを変更(iPad2液晶パネル用の設定)
sudo vi /boot/config.txt hdmi_group=2 hdmi_mode=87 hdmi_cvt=1024 768 60 1 0 0 0 hdmi_force_hotplug=1






アスペクト比 4:3表示
アスペクト比 4:3表示



この設定で画面を表示してみると元のアスペクト比が7:6なので4:3の設定では上下に黒帯が入ります。
ここでconfig.txt240x 280の画面に合わせれば全画面表示できると思いますが、オーバースキャンの設定も試してみたいのでビルドで全画面表示してみます。






ビルドの変更
mkdir build cd build cmake -DSTATISTICS=0 -DST7789VW=ON -DSPI_BUS_CLOCK_DIVISOR=10 -DGPIO_TFT_DATA_CONTROL=25 -DGPIO_TFT_RESET_PIN=27 -DGPIO_TFT_BACKLIGHT=24 -DDISPLAY_BREAK_ASPECT_RATIO_WHEN_SCALING=ON .. make -j
-DDISPLAY_BREAK_ASPECT_RATIO_WHEN_SCALING=ON
 LCDの全画面にスケーリングする







全画面表示
全画面表示


これで全画面表示出来ました。
発色も良く面白い液晶だと思いますので、ビクターのブラウン管テレビ模型に組み込んでみたいと思います。







0 件のコメント:

コメントを投稿