Skip to content

Commit

Permalink
Merge pull request #1786 from dracir9/master
Browse files Browse the repository at this point in the history
Fix problem in PR #1770
  • Loading branch information
Bodmer committed Apr 20, 2022
2 parents 7f5b8a9 + 24a6a06 commit 8582ff7
Show file tree
Hide file tree
Showing 4 changed files with 70 additions and 38 deletions.
4 changes: 1 addition & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@

idf_component_register(SRCS "TFT_eSPI.cpp"
INCLUDE_DIRS "."
PRIV_REQUIRES arduino)

add_definitions(-DTFT_eSPI_COMPONENT)
PRIV_REQUIRES arduino)
75 changes: 50 additions & 25 deletions Kconfig
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
menu "TFT_eSPI"

menu "Hidden menu"
visible if false

config TFT_eSPI_ESPIDF
bool "Enable Configuration"
default y
endmenu

choice TFT_DRIVER
prompt "Select TFT driver"
Expand Down Expand Up @@ -145,11 +153,12 @@ menu "TFT_eSPI"
config TFT_PARALLEL_8_BIT
bool "Enable 8-bit parallel mode (otherwise SPI is assumed)"
default "n"
depends on IDF_TARGET_ESP32
help
Use 8-bit parallel bus to send data to the LCD. If not set SPI will be used.

menu "Display Data pins"
visible if TFT_PARALLEL_8_BIT
depends on TFT_PARALLEL_8_BIT
config TFT_D0
int "Data 0 pin"
default -1
Expand Down Expand Up @@ -202,27 +211,30 @@ menu "TFT_eSPI"
endmenu

menu "Display SPI config"
visible if !TFT_PARALLEL_8_BIT
depends on !TFT_PARALLEL_8_BIT
config TFT_MISO
int "TFT MISO pin"
default -1
range -1 32
range -1 32 if IDF_TARGET_ESP32
range -1 45 if IDF_TARGET_ESP32S2
help
Master In Slave Out pin.
Can be labelled as SDO in some displays

config TFT_MOSI
int "TFT MOSI pin"
default -1
range -1 32
range -1 32 if IDF_TARGET_ESP32
range -1 45 if IDF_TARGET_ESP32S2
help
Master Out Slave In pin.
Can be labelled as SDA or SDI in some displays

config TFT_SCLK
int "TFT Clock pin"
default -1
range -1 32
range -1 32 if IDF_TARGET_ESP32
range -1 45 if IDF_TARGET_ESP32S2
help
Labelled in some displays as WR

Expand Down Expand Up @@ -258,7 +270,8 @@ menu "TFT_eSPI"
config TFT_CS
int "TFT Chip Select pin"
default -1
range -1 33
range -1 33 if IDF_TARGET_ESP32
range -1 45 if IDF_TARGET_ESP32S2

config TFT_DC
int "TFT Data/Command pin"
Expand All @@ -270,17 +283,22 @@ menu "TFT_eSPI"
config TFT_RST
int "TFT Reset pin"
default -1
range -1 33
range -1 33 if IDF_TARGET_ESP32
range -1 45 if IDF_TARGET_ESP32S2

config ENABLE_BL
bool "Enable backlight control"
default y

if ENABLE_BL
config TFT_BL
int "TFT Backlight pin"
default -1
range -1 33 if IDF_TARGET_ESP32
range -1 45 if IDF_TARGET_ESP32S2
help
Pin for the backlight control signal

config TFT_BL
int "TFT Backlight pin"
default -1
range -1 33
help
Pin for the backlight control signal
Set to -1 to disable

if TFT_BL >= 0
choice TFT_BACKLIGHT_ON
bool "Pin state to activate backlight"
default TFT_BACKLIGHT_ON_HIGH
Expand Down Expand Up @@ -336,15 +354,22 @@ menu "TFT_eSPI"
endmenu

menu "Touch screen configuration"
config TOUCH_CS
int "Touch chip select pin"
default -1
range -1 33

config SPI_TOUCH_FREQUENCY
int "SPI frequency for XPT2046 chip (Hz)"
default 2500000
range 1 80000000
config ENABLE_TOUCH
bool "Enable Touch"
default n

if ENABLE_TOUCH
config TOUCH_CS
int "Touch chip select pin"
default -1
range -1 33 if IDF_TARGET_ESP32
range -1 45 if IDF_TARGET_ESP32S2

config SPI_TOUCH_FREQUENCY
int "SPI frequency for XPT2046 chip (Hz)"
default 2500000
range 1 80000000
endif
endmenu

endmenu
22 changes: 16 additions & 6 deletions TFT_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
* @author Ricard Bitriá Ribes (https://github.com/dracir9)
* Created Date: 22-01-2022
* -----
* Last Modified: 11-04-2022
* Last Modified: 14-04-2022
* Modified By: Ricard Bitriá Ribes
* -----
* @copyright (c) 2022 Ricard Bitriá Ribes
Expand Down Expand Up @@ -143,8 +143,13 @@
#endif

// Backlight config
#if CONFIG_TFT_BL != -1
#define TFT_BL CONFIG_TFT_BL
#ifdef CONFIG_ENABLE_BL
#if CONFIG_TFT_BL == -1
#error "Invalid backlight control pin. Check TFT_eSPI configuration"
#else
#define TFT_BL CONFIG_TFT_BL
#endif

#define TFT_BACKLIGHT_ON CONFIG_TFT_BACKLIGHT_ON
#endif

Expand Down Expand Up @@ -218,7 +223,6 @@

// SPI BUS
#else

#if CONFIG_TFT_MISO == -1
#error "Invalid MISO pin. Check TFT_eSPI configuration"
#else
Expand Down Expand Up @@ -289,8 +293,14 @@
** Section 5: Touchscreen configuration
***************************************************************************************/

#define TOUCH_CS CONFIG_TOUCH_CS
#ifdef CONFIG_ENABLE_TOUCH
#if CONFIG_TOUCH_CS == -1
#error "Invalid Touch Chip Select pin. Check TFT_eSPI configuration"
#else
#define TOUCH_CS CONFIG_TOUCH_CS
#endif

#define SPI_TOUCH_FREQUENCY CONFIG_SPI_TOUCH_FREQUENCY
#define SPI_TOUCH_FREQUENCY CONFIG_SPI_TOUCH_FREQUENCY
#endif

#endif // TFT_CONFIG_H
7 changes: 3 additions & 4 deletions TFT_eSPI.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,6 @@
***************************************************************************************/

//Standard support
#ifdef TFT_eSPI_COMPONENT
#include "TFT_config.h"
#endif

#include <Arduino.h>
#include <Print.h>
#include <SPI.h>
Expand All @@ -40,6 +36,9 @@
***************************************************************************************/
// Include header file that defines the fonts loaded, the TFT drivers
// available and the pins to be used, etc, etc
#ifdef CONFIG_TFT_eSPI_ESPIDF
#include "TFT_config.h"
#endif
#include <User_Setup_Select.h>

// Handle FLASH based storage e.g. PROGMEM
Expand Down

0 comments on commit 8582ff7

Please sign in to comment.