@@ -804,6 +804,73 @@ void LovyanGfx::init(int w, int h)
804
804
cfg.pin_mosi = TOUCH_MOSI;
805
805
cfg.pin_miso = TOUCH_MISO;
806
806
cfg.pin_cs = TOUCH_CS;
807
+ _touch_instance->config (cfg);
808
+ _panel_instance->setTouch (_touch_instance);
809
+ }
810
+ #elif defined(ESP32_2432S022C)
811
+ // pinMode(PWR_EN, OUTPUT);
812
+ // digitalWrite(PWR_EN, HIGH);
813
+
814
+ auto _panel_instance = new lgfx::Panel_ST7789 ();
815
+ auto _bus_instance = new lgfx::Bus_Parallel8 ();
816
+ auto _touch_instance = new lgfx::Touch_CST816S ();
817
+ {
818
+ auto cfg = _bus_instance->config ();
819
+ cfg.freq_write = 16000000 ;
820
+ cfg.pin_wr = TFT_WR;
821
+ cfg.pin_rd = TFT_RD;
822
+ cfg.pin_rs = TFT_DC; // D/C
823
+ cfg.pin_d0 = TFT_D0;
824
+ cfg.pin_d1 = TFT_D1;
825
+ cfg.pin_d2 = TFT_D2;
826
+ cfg.pin_d3 = TFT_D3;
827
+ cfg.pin_d4 = TFT_D4;
828
+ cfg.pin_d5 = TFT_D5;
829
+ cfg.pin_d6 = TFT_D6;
830
+ cfg.pin_d7 = TFT_D7;
831
+ _bus_instance->config (cfg);
832
+ _panel_instance->setBus (_bus_instance);
833
+ }
834
+
835
+ {
836
+ auto cfg = _panel_instance->config ();
837
+ cfg.pin_cs = TFT_CS;
838
+ cfg.pin_rst = TFT_RST;
839
+ cfg.pin_busy = TFT_BUSY;
840
+ cfg.memory_width = TFT_WIDTH;
841
+ cfg.memory_height = TFT_HEIGHT;
842
+ cfg.panel_width = TFT_WIDTH;
843
+ cfg.panel_height = TFT_HEIGHT;
844
+ cfg.offset_x = 0 ;
845
+ cfg.offset_y = 0 ;
846
+ cfg.offset_rotation = TFT_ROTATION;
847
+ cfg.dummy_read_pixel = 8 ;
848
+ cfg.dummy_read_bits = 1 ;
849
+ cfg.readable = true ;
850
+ cfg.invert = false ;
851
+ cfg.rgb_order = false ;
852
+ cfg.dlen_16bit = false ;
853
+ cfg.bus_shared = false ;
854
+ _panel_instance->config (cfg);
855
+ }
856
+
857
+ {
858
+ auto cfg = _touch_instance->config ();
859
+
860
+ cfg.x_min = 0 ;
861
+ cfg.x_max = TFT_WIDTH;
862
+ cfg.y_min = 0 ;
863
+ cfg.y_max = TFT_HEIGHT;
864
+ cfg.pin_int = TOUCH_IRQ;
865
+ cfg.bus_shared = true ;
866
+ cfg.offset_rotation = 0 ;
867
+
868
+ cfg.i2c_port = I2C_TOUCH_PORT;
869
+ cfg.i2c_addr = I2C_TOUCH_ADDRESS;
870
+ cfg.pin_sda = TOUCH_SDA;
871
+ cfg.pin_scl = TOUCH_SCL;
872
+ cfg.freq = I2C_TOUCH_FREQUENCY;
873
+
807
874
_touch_instance->config (cfg);
808
875
_panel_instance->setTouch (_touch_instance);
809
876
}
0 commit comments