1+ #define LGFX_USE_V1
12#include < LovyanGFX.hpp>
23
4+ #define LGFX_AUTODETECT
5+ #include < LGFX_AUTODETECT.hpp> // クラス"LGFX"を準備します
6+ // #include <lgfx_user/LGFX_ESP32_sample.hpp> // またはユーザ自身が用意したLGFXクラスを準備します
7+
8+ static LGFX lcd;
9+
310extern const unsigned short info[];
411extern const unsigned short alert[];
512extern const unsigned short closeX[];
@@ -63,7 +70,6 @@ struct obj_info_t {
6370static constexpr size_t obj_count = 50 ;
6471static obj_info_t objects[obj_count];
6572
66- static LGFX lcd;
6773static LGFX_Sprite sprites[2 ];
6874static LGFX_Sprite icons[3 ];
6975static int_fast16_t sprite_height;
@@ -144,11 +150,7 @@ void loop(void)
144150 sprites[flip].setTextColor (0xFFFFFFU );
145151 sprites[flip].printf (" obj:%d fps:%d" , obj_count, fps);
146152 }
147- size_t len = sprite_height * lcd_width;
148- if (y + sprite_height > lcd_height) {
149- len = (lcd_height - y) * lcd_width;
150- }
151- lcd.pushPixelsDMA (sprites[flip].getBuffer (), len);
153+ sprites[flip].pushSprite (&lcd, 0 , y);
152154 }
153155
154156 ++frame_count;
@@ -157,7 +159,6 @@ void loop(void)
157159 psec = sec;
158160 fps = frame_count;
159161 frame_count = 0 ;
160- lcd.setAddrWindow (0 , 0 , lcd.width (), lcd.height ());
161162 }
162163}
163164
@@ -261,4 +262,4 @@ constexpr unsigned short closeX[1024] ={
2612620x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x4800 ,0xA800 ,0xB0C3 ,0xA0A2 ,0x9800 ,0x9800 ,0x9800 ,0x9800 ,0xA000 ,0xA000 ,0xA000 ,0x9800 ,0x9800 ,0x9800 ,0xA082 ,0xB0E3 ,0xA800 ,0x4800 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 , // row 28, 928 pixels
2622630x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x5800 ,0xA800 ,0xB0A2 ,0xA8E3 ,0xA0A2 ,0xA041 ,0x9800 ,0x9800 ,0xA041 ,0xA0A2 ,0xA8E3 ,0xB0A2 ,0xA800 ,0x5800 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 , // row 29, 960 pixels
2632640x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x3000 ,0x6000 ,0x8800 ,0xA000 ,0xA800 ,0xA800 ,0xA000 ,0x8800 ,0x6000 ,0x3000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 , // row 30, 992 pixels
264- 0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 }; // row 31, 1024 pixels
265+ 0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 ,0x0000 }; // row 31, 1024 pixels
0 commit comments