Adding support for ILI9488/XPT2046 display

This commit is contained in:
mikep1998 2021-05-10 13:26:59 -07:00 committed by Yves De Muyter
parent e3036bfbd9
commit b71437024a
3 changed files with 50 additions and 0 deletions

View File

@ -69,6 +69,7 @@ uDisplay::uDisplay(char *lp) : Renderer(800, 600) {
fg_col = 1;
bg_col = 0;
splash_font = -1;
rotmap_xmin = -1;
allcmd_mode = 0;
startline = 0xA1;
uint8_t section = 0;
@ -290,6 +291,12 @@ uDisplay::uDisplay(char *lp) : Renderer(800, 600) {
lvgl_param.fluslines = next_val(&lp1);
lvgl_param.use_dma = next_val(&lp1);
break;
case 'M':
rotmap_xmin = next_val(&lp1);
rotmap_xmax = next_val(&lp1);
rotmap_ymin = next_val(&lp1);
rotmap_ymax = next_val(&lp1);
break;
}
}
}
@ -1372,9 +1379,16 @@ void uDisplay::dim(uint8_t dim) {
}
// the cases are PSEUDO_OPCODES from MODULE_DESCRIPTOR
// and may be exapnded with more opcodes
void uDisplay::TS_RotConvert(int16_t *x, int16_t *y) {
int16_t temp;
if (rotmap_xmin >= 0) {
*y = map(*y, rotmap_ymin, rotmap_ymax, 0, height());
*x = map(*x, rotmap_xmin, rotmap_xmax, 0, width());
}
switch (rot_t[cur_rot]) {
case 0:
break;

View File

@ -214,6 +214,10 @@ class uDisplay : public Renderer {
uint16_t seta_xp2;
uint16_t seta_yp1;
uint16_t seta_yp2;
int16_t rotmap_xmin;
int16_t rotmap_xmax;
int16_t rotmap_ymin;
int16_t rotmap_ymax;
void pushColorsMono(uint16_t *data, uint16_t len);
#ifdef ESP32
// dma section

View File

@ -0,0 +1,32 @@
:H,ILI9488,480,320,16,SPI,1,*,*,*,*,*,*,*,10
:S,2,1,1,0,40,20
:I
E0,0F,00,03,09,08,16,0A,3F,78,4C,09,0A,08,16,1A,0F
E1,0F,00,16,19,03,0F,05,32,45,46,04,0E,0D,35,37,0F
C0,2,17,15
C1,1,41
C5,3,00,12,80
36,1,48
3A,1,66
B0,1,80
B1,1,A0
B4,1,02
B6,2,02,02
E9,1,00
F7,4,A9,51,2C,82
11,80
29,0
:o,28
:O,29
:A,2A,2B,2C,16
:R,36
:0,28,00,00,06
:1,48,00,00,05
:2,E8,00,00,04
:3,88,00,00,07
:P,18
:i,20,21
:TS,16
:B,20,0
:M,340,3900,300,3800
#