ESP32-DevKitCのパラレル出力で128x64RGBLEDディスプレイを動かして,中間色表示に挑戦しています。

ESP32-DevKitCのパラレル出力で128x64RGBLEDディスプレイを動かしてみる

自作プログラムでもRGB各階調8x8x8の512色ならいけそうなので試してみました。


SDカードからビットマップデータを取り込んで,512色に落として表示したところです。



以前に使った季節外れの子供の日のイラストですが,,何となく鯉のぼりの青い縞が見えてきたので画像は良くはなってきているようです(^^;;;;;。


これまた季節にそぐわない母の日用の画像も少しは良い色になった気がします,,。





ビットマップデータは128x64ドットでRGB各1byteの24bit階調と呼ばれる形式です。これを下図のように変換してパラレル出力用のデータを作成しました。

色調をドットの重ね書きで表現するので,データは重みをつけた3層にしています。






SDカードとはESP32のデフォルトのVSPIで接続しました。
なお,TxD(Pin1)はプログラムをダウンロードする時はフリーにしておかないと実行できませんでした。





SDカードからの取り込みとデータ変換部です。

頭が回らなくなるのでSDカードからは一旦RGBの普通の配列に取り込んでいます
(^^;;;;;;。
また,SDカードから読み取るファイル名はルートから書いた方が良いようです。





さて描画速度ですが,大体計算予想通りでLEDの行アドレス設定の最上位のE出力で見ると1回の描画で約1.57msでした。これを7回重ね書きするので1画面につき11msぐらいです。





うーむ,私の能力では128x64ドット画面で16x16x16の4096色はちょっと難しいですねぇ,,。

ま,512色なら動画も何とかなるかもしれないのと,128x32とか64x64ドットの画面なら4096色はできそうですかね。

いろいろと他のLEDパネルにも応用できそうです(^^)。




AD