上位に戻る ESP32で、ST7789 色がおかしい       bmpファイル書き込めない 初版2025/4/15

AliExpressで買った2.8インチのST7789をESP32を Adafruit_GFX Adafruit_ST7789を使ってテスト表示させて、見たところ
色がおかしい グリーンがマゼンタ 赤が、シアン 黒が、白 白が黒になる なんじゃこりゃ
グリーン(ライム)#00FF00 マゼンタ#FF00FF 赤#FF0000 シアン#00FFFF どうもビットがひっくり返ってるぞ

  1. 色がおかしい


    AliExpressで、560円で購入
    インターフェースが、
    パラレル8bit 16bit
    シリアルが、SPI SPI3モードが使える
    みたいス
    ショートピン設定が011になってるので
    現状SPIモードス
    で、テスト表示させると色が変です
    直ったところ

    で、ライブラリの凡例プログラム(garphictest_st7789.ino)を見ていたら、invertDisplay(true)と、invertDisplay(false)を発見
    invertちゅうことは反転スよね これかあで試したところ正常になりました
    tft.invertDisplay(false); を追記

    graphicstest_st7789.ino


  2. ビットマップデータが書き込めないゾ
    さて、秒数はニキシー管で表示 それ以外は、ディスプレイにて表示させます。ディスプレイの文字表示ですが、デフォルトフォント以外にも
    libraries\Adafruit_GFX_Library\Fontsの中に標準で何種類か準備されていますが、時分を表示するには んんてな感じです
    で、ニキシー管のフリー素材があったので、画像で時分を表示させることにしました
    ESP32 Sketch Data Uploadを試したのですが、古いArudinoIDE(1系)でしか動かないようです 替りは、esp32 littlefs uploaderがあるようで
    試してみたところ、正常にアップロードされるのですが、SPIFFS_ImageReaderでは読み込んでくれませんでした littlefsでイメージファイル
    読み出しもなんかうまくいかない・・・・。SPIFFSは使われない方向みたいなんだが・・・。
    ArudinoIDE1.8.19まだパソコンに残っていたので、今回は、Sketch Data Uploadを使って書き込みました

    ESP32 Sketch Data Upload https://github.com/me-no-dev/arduino-esp32fs-plugin

    esp32 littlefs uploader https://github.com/earlephilhower/arduino-littlefs-upload





  3. バックライトについて
    バックライトは、ディスプレイのBLピンにpwmで供給することで調整できるようです
    int pwmM_pin=19;//バックライト輝度
    int kido_atai=50;
    void setup() {
     pinMode(pwmM_pin, OUTPUT);
     //輝度調整
     ledcAttach(pwmM_pin,200,8);//200hz 8bit
     ledcWrite(pwmM_pin,kido_atai);
     {

    周波数どれぐらいがいいかわからんけどまあ200Hzなら見えんし

  4. 文字消去について
    年月日曜日は、フォント文字列にて描画しました 一旦消去しないと、重ね書きになってしまいます
    全消去して描画しなおすか、ですが ビットマップの表示(多分読み出し部)がものすごく遅いので
    必要部分を黒塗りで塗りつぶして消去としました

    左上座標が(0,0)なんですが、文字の描画位置をtft.setCursor(x,y);で指定するとx,yは、文字の
    左下の位置になります ■の塗りつぶしは、tft.fillRect(x, y, 幅, 下高, ST77XX_BLACK);
    左上座標からの変位指定になります 文字24ptだから24ドットかと思いきやなんかドットが多い
    判らんので適当に塗りつぶしエリアを24より広げました




    以上間違い等ありましたら、以下ご意見箱にお願いします

   

    ご意見箱