@@ -577,49 +577,75 @@ static const char SPILCD_INIT_CODE[] = {
577
577
0x13 , 10 , 0 ,
578
578
#endif
579
579
#ifdef LCD_CONTROLLER_GC9A01
580
+ // CMD,DELAY,DATA_LEN,D0,D1,D2...
580
581
0xfe ,0 ,0 ,
581
582
0xef ,0 ,0 ,
582
583
0xeb ,0 ,1 , 0x14 ,
583
- 0x84 ,0 ,1 , 0x40 ,
584
+ 0x84 ,0 ,1 , 0x60 , // 0x40->0x60 0xb5 en 20200924 james
585
+ 0x85 ,0 ,1 , 0xFF ,
586
+ 0x86 ,0 ,1 , 0xFF ,
587
+ 0x87 ,0 ,1 , 0xFF ,
588
+ 0x8e ,0 ,1 , 0xFF ,
589
+ 0x8f ,0 ,1 , 0xFF ,
584
590
0x88 ,0 ,1 , 10 ,
585
- 0x89 ,0 ,1 , 0x21 ,
591
+ 0x89 ,0 ,1 , 0x23 , // 0x21->0x23 spi 2data reg en
586
592
0x8a ,0 ,1 , 0 ,
587
593
0x8b ,0 ,1 , 0x80 ,
588
594
0x8c ,0 ,1 , 1 ,
589
- 0x8d ,0 ,1 , 1 ,
590
- 0xb6 ,0 ,1 , 0x20 ,
591
- 0x36 ,0 ,1 , 0x88 , // Memory Access Control (0x48 flips upside-down)
595
+ 0x8d ,0 ,1 , 3 , // 1->3 99 en
596
+ 0xb5 ,0 ,4 , 0x08 , 0x09 , 0x14 , 0x08 ,
597
+ 0xb6 ,0 ,2 , 0 , 0 , // Positive sweep 0x20->0 GS SS 0x20
598
+ #ifdef LCD_ROTATION
599
+ #if (LCD_ROTATION == 0 )
600
+ 0x36 ,0 ,1 , 0x88 , // Memory Access Control (no rotation)
601
+ #elif (LCD_ROTATION == 90 )
602
+ 0x36 ,0 ,1 , 0x78 , // Memory Access Control (rotated 90 degrees)
603
+ #elif (LCD_ROTATION == 180 )
604
+ 0x36 ,0 ,1 , 0x48 , // Memory Access Control (rotated 180 degrees)
605
+ #elif (LCD_ROTATION == 270 )
606
+ 0x36 ,0 ,1 , 0xB8 , // Memory Access Control (rotated 270 degrees)
607
+ #else
608
+ #error "Unexpected value defined for LCD_ROTATION - should be 0, 90, 180 or 270"
609
+ #endif
610
+ #else
611
+ 0x36 ,0 ,1 , 0x88 , // Memory Access Control (no rotation)
612
+ #endif
592
613
0x3a ,0 ,1 , 5 , // could be 16/12 bit?
593
614
0x90 ,0 ,4 , 8 , 8 , 8 , 8 ,
594
615
0xbd ,0 ,1 , 6 ,
595
616
0xbc ,0 ,1 , 0 ,
596
617
0xff ,0 ,3 , 0x60 , 1 , 4 ,
597
- 0xc3 ,0 ,1 , 0x13 ,
598
- 0xc4 ,0 ,1 , 0x13 ,
599
- 0xc9 ,0 ,1 , 0x22 ,
618
+ 0xc3 ,0 ,1 , 0x1d , // Power control 2: 0x13->0x1d
619
+ 0xc4 ,0 ,1 , 0x1d , // Power control 3: 0x13->0x1d
620
+ 0xc9 ,0 ,1 , 0x25 , // Power control 4: 0x22->0x25
600
621
0xbe ,0 ,1 , 0x11 ,
601
622
0xe1 ,0 ,2 , 0x10 , 0xe ,
602
623
0xdf ,0 ,3 , 0x21 , 0xc , 2 ,
603
- 0xf0 ,0 ,6 , 0x45 , 9 , 8 , 8 , 0x26 , 0x2a ,
604
- 0xf1 ,0 ,6 , 0x43 , 0x70 , 0x72 , 0x36 , 0x37 , 0x6f ,
605
- 0xf2 ,0 ,6 , 0x45 , 9 , 8 , 8 , 0x26 , 0x2a ,
606
- 0xf3 ,0 ,6 , 0x43 , 0x70 , 0x72 , 0x36 , 0x37 , 0x6f ,
624
+ 0xf0 ,0 ,6 , 0x45 , 9 , 8 , 8 , 0x26 , 0x2a , // Gamma 1
625
+ 0xf1 ,0 ,6 , 0x43 , 0x70 , 0x72 , 0x36 , 0x37 , 0x6f , // Gamma 2
626
+ 0xf2 ,0 ,6 , 0x45 , 9 , 8 , 8 , 0x26 , 0x2a , // Gamma 3
627
+ 0xf3 ,0 ,6 , 0x43 , 0x70 , 0x72 , 0x36 , 0x37 , 0x6f , // Gamma 4
607
628
0xed ,0 ,2 , 0x1b , 0xb ,
608
- 0xae ,0 ,1 , 0x74 ,
629
+ 0xae ,0 ,1 , 0x77 , // 0x74->0x77
609
630
0xcd ,0 ,1 , 99 ,
610
- 0x70 ,0 ,9 , 7 , 9 , 4 , 0xe , 0xf , 9 , 7 , 8 , 3 ,
631
+ 0x70 ,0 ,9 , 7 , 7 , 4 , 0xe , 0xf , 9 , 7 , 8 , 3 , // 7,9,4... -> 7,7,4...
611
632
0xe8 ,0 ,1 , 0x34 ,
612
- 0x62 ,0 ,12 , 0x18 , 0xd , 0x71 , 0xed , 0x70 , 0x70 , 0x18 , 0xf , 0x71 , 0xef , 0x70 , 0x70 ,
613
- 99 ,0 ,12 , 0x18 , 0x11 , 0x71 , 0xf1 , 0x70 , 0x70 , 0x18 , 0x13 , 0x71 , 0xf3 , 0x70 , 0x70 ,
633
+ 0x60 ,0 ,4 , 0x38 , 0x0b , 0x6d , 0x6d ,
634
+ 0x39 ,0 ,3 , 0xf0 , 0x6d , 0x6d ,
635
+ 0x61 ,0 ,4 , 0x38 , 0xf4 , 0x6d , 0x6d ,
636
+ 0x38 ,0 ,3 , 0xf7 , 0x6d , 0x6d ,
637
+ 0x62 ,0 ,12 , 0x38 , 0xd , 0x71 , 0xed , 0x70 , 0x70 , 0x38 , 0xf , 0x71 , 0xef , 0x70 , 0x70 ,
638
+ 0x63 ,0 ,12 , 0x38 , 0x11 , 0x71 , 0xf1 , 0x70 , 0x70 , 0x38 , 0x13 , 0x71 , 0xf3 , 0x70 , 0x70 ,
614
639
100 ,0 ,7 , 0x28 , 0x29 , 0xf1 , 1 , 0xf1 , 0 , 7 ,
615
640
0x66 ,0 ,10 , 0x3c , 0 , 0xcd , 0x67 , 0x45 , 0x45 , 0x10 , 0 , 0 , 0 ,
616
641
0x67 ,0 ,10 , 0 , 0x3c , 0 , 0 , 0 , 1 , 0x54 , 0x10 , 0x32 , 0x98 ,
617
642
0x74 ,0 ,7 , 0x10 , 0x85 , 0x80 , 0 , 0 , 0x4e , 0 ,
618
643
0x98 ,0 ,2 , 0x3e , 7 ,
619
- 0x35 ,0 ,0 ,
620
- 0x21 ,10 ,0 ,
621
- 0x11 ,20 ,0 ,
622
- 0x29 ,10 ,0 ,
644
+ 0x99 ,0 ,2 , 0x3e , 7 , // bvee 2x
645
+ 0x35 ,0 ,1 , 0 ,
646
+ 0x21 ,5 ,0 ,
647
+ 0x11 ,5 ,0 ,
648
+ 0x29 ,5 ,0 ,
623
649
0x2c ,0 ,0 ,
624
650
#endif
625
651
// End
0 commit comments