@@ -255,6 +255,7 @@ void board_display_init(void) {
255
255
nrf_gpio_pin_clear (DISPLAY_PIN_RST );
256
256
NRFX_DELAY_MS (10 );
257
257
nrf_gpio_pin_set (DISPLAY_PIN_RST );
258
+ NRFX_DELAY_MS (20 );
258
259
#endif
259
260
260
261
#if defined(DISPLAY_PIN_BL ) && DISPLAY_PIN_BL >= 0
@@ -698,6 +699,7 @@ void neopixel_write (uint8_t *pixels) {
698
699
#define ST77XX_TEOFF 0x34
699
700
#define ST77XX_TEON 0x35
700
701
#define ST77XX_MADCTL 0x36
702
+ #define ST77XX_VSCSAD 0x37
701
703
#define ST77XX_COLMOD 0x3A
702
704
703
705
#define ST77XX_MADCTL_MY 0x80
@@ -725,23 +727,27 @@ void neopixel_write (uint8_t *pixels) {
725
727
static void tft_controller_init (void ) {
726
728
// Init commands for 7789 screens
727
729
uint8_t cmdinit_st7789 [] = {
728
- // 1: Software reset, no args, w/delay ~150 ms delay
730
+ #if !defined (DISPLAY_PIN_RST ) || (DISPLAY_PIN_RST < 0 )
731
+ // Software reset if rst pin not available, no args, w/delay ~150 ms delay
729
732
ST77XX_SWRESET , ST_CMD_DELAY , 150 ,
730
- // 2: Out of sleep mode, no args, w/delay 10 ms delay
733
+ #endif
734
+ // Out of sleep mode, no args, w/delay 10 ms delay
731
735
ST77XX_SLPOUT , ST_CMD_DELAY , 10 ,
732
- // 3: Set color mode, 1 arg + delay: 16-bit color, 10 ms delay
736
+ // Set color mode, 1 arg + delay: 16-bit color, 10 ms delay
733
737
ST77XX_COLMOD , 1 + ST_CMD_DELAY , 0x55 , 10 ,
734
- // 4: Mem access ctrl (directions), 1 arg: Row/col addr, bottom-top refresh
738
+ // Mem access ctrl (directions), 1 arg: Row/col addr, bottom-top refresh
735
739
ST77XX_MADCTL , 1 , DISPLAY_MADCTL ,
736
- // 5: Column addr set, 4 args, no delay: XSTART = 0, XEND = 240
740
+ // Vertical Scroll Start Address of RAM
741
+ // ST77XX_VSCSAD, 2, DISPLAY_VSCSAD >> 8, DISPLAY_VSCSAD & 0xFF,
742
+ // Column addr set, 4 args, no delay: XSTART = 0, XEND = 240
737
743
ST77XX_CASET , 4 , 0x00 , 0 , 0 , 240 ,
738
- // 6: Row addr set, 4 args, no delay: YSTART = 0 YEND = 320
744
+ // Row addr set, 4 args, no delay: YSTART = 0 YEND = 320
739
745
ST77XX_RASET , 4 , 0x00 , 0 , 320 >> 8 , 320 & 0xFF ,
740
- // 7: hack
746
+ // Inversion on
741
747
ST77XX_INVON , ST_CMD_DELAY , 10 ,
742
- // 8: Normal display on, no args, w/delay 10 ms delay
748
+ // Normal display on, no args, w/delay 10 ms delay
743
749
ST77XX_NORON , ST_CMD_DELAY , 10 ,
744
- // 9: Main screen turn on, no args, delay 10 ms delay
750
+ // Main screen turn on, no args, delay 10 ms delay
745
751
ST77XX_DISPON , ST_CMD_DELAY , 10
746
752
};
747
753
0 commit comments