// >>>>>>>>>>>>>>>>##// 定义STM32以调⽤优化的处理器⽀持(仅适⽤于STM32)
//#define STM32
// 定义STM32板允许库优化性能
// 对于UNO兼容的“MCUfriend”式防护罩
//#define NUCLEO_64_TFT
//#define NUCLEO_144_TFT
// 告诉库使⽤8位并⾏模式(否则假定为SPI)
//#define TFT_PARALLEL_8_BIT
// 显⽰类型-仅定义是否RPi显⽰
//#define RPI_DISPLAY_TYPE // 20MHz maximum SPI
// 只定义⼀个驱动程序,其他的必须注释掉
#define ILI9341_DRIVER
//#define ST7735_DRIVER // Define additional parameters below for this display
//#define ILI9163_DRIVER // Define additional parameters below for this display
//#define S6D02A1_DRIVER
//#define RPI_ILI9486_DRIVER // 20MHz maximum SPI
/
/#define HX8357D_DRIVER
//#define ILI9481_DRIVER
//#define ILI9486_DRIVER
//#define ILI9488_DRIVER // WARNING: Do not connect ILI9488 display SDO to MISO if other devices share the SPI bus (TFT SDO does NOT tristate w hen CS is high)
//#define ST7789_DRIVER // Full configuration option, define additional parameters below for this display
//#define ST7789_2_DRIVER // Minimal configuration option, define additional parameters below for this display
//#define R61581_DRIVER
//#define RM68140_DRIVER
//#define ST7796_DRIVER
/
/ ⼀些显⽰屏⽀持通过MISO引脚读取SPI, 其他显⽰屏有⼀个双向SDA引脚,库将尝试通过MOSI线读取。
// 要使⽤SDA⾏从TFT读取数据,请取消注释以下⾏:
// #define TFT_SDA_READ // 此选项仅适⽤于ESP32,仅⽤ST7789显⽰屏测试
// 仅限ST7789和ILI9341,如果显⽰屏上的蓝⾊和红⾊互换,请定义颜⾊顺序
// ⼀次尝试⼀个选项,为您的显⽰屏找到正确的颜⾊顺序
// #define TFT_RGB_ORDER TFT_RGB // Colour order Red-Green-Blue
// #define TFT_RGB_ORDER TFT_BGR // Colour order Blue-Green-Red
// 对于仅集成ILI9341显⽰屏的M5Stack ESP32模块,删除下⾯⾏中的//
// #define M5STACK一国三公
// 仅限ST7789、ST7735和ILI9163,在纵向⽅向上定义像素宽度和⾼度
// #define TFT_WIDTH 80
// #define TFT_WIDTH 128
// #define TFT_WIDTH 240 // ST7789 240 x 240 and 240 x 320
// #define TFT_HEIGHT 160
// #define TFT_HEIGHT 160
// #define TFT_HEIGHT 128
// #define TFT_HEIGHT 240 // ST7789 240 x 240
// #define TFT_HEIGHT 320 // ST7789 240 x 320
// 仅限ST7735,定义显⽰类型,最初这是基于屏幕保护膜上标签的颜⾊,
// 但这并不总是正确的,因此如果屏幕不能正确显⽰图形,请尝试下⾯的不同选项,
// 例如颜⾊错误、镜像或边缘的托盘像素。注释掉ST7735显⽰驱动程序的所有选项
// (除了其中⼀个选项),保存此⽤户设置⽂件,然后重新⽣成草图并再次将其上载到板:
/
/ #define ST7735_INITB
// #define ST7735_GREENTAB
// #define ST7735_GREENTAB2
// #define ST7735_GREENTAB3
// #define ST7735_GREENTAB128 // For 128 x 128 display
拨动心弦// #define ST7735_GREENTAB160x80 // For 160 x 80 display (BGR, inverted, 26 offt)
// #define ST7735_REDTAB
// #define ST7735_BLACKTAB
// #define ST7735_REDTAB160x80 // For 160 x 80 display with 24 pixel offt
成岩作用
// 如果颜⾊是反转的(⽩⾊显⽰为⿊⾊),则取消注释后的两⾏中的⼀⾏尝试两个选项,其中⼀个选项应更正反转。// #define TFT_INVERSION_ON
// #define TFT_INVERSION_OFF
// 如果背光控制信号可⽤,则在下⾯第2节中定义TFT-BL引脚。
// 调⽤tft.begin()时,背光将打开,但库需要知道LED是否打开,
// 引脚是⾼还是低。如果led是⽤PWM信号驱动或关闭/打开的,
// 则必须由⽤户代码处理。例如.使⽤数字写⼊(TFT-BL,低);
// #define TFT_BACKLIGHT_ON HIGH // HIGH or LOW are options
// >>>>>>>>>>>>>>>>##//
// 第⼆节.在此处定义⽤于与显⽰屏接⼝的引脚
//
// >>>>>>>>>>>>>>>>##// 我们必须使⽤硬件SPI,⾄少需要3个GPIO引脚。
// ESP8266 NodeMCU ESP-12的典型设置为:
//
// Display SDO/MISO to NodeMCU pin D6 (or leave disconnected if not reading TFT)
// Display LED to NodeMCU pin VIN (or 5V, e below)
// Display SCK to NodeMCU pin D5
// Display SDI/MOSI to NodeMCU pin D7
// Display DC (RS/AO)to NodeMCU pin D3
// Display RESET to NodeMCU pin D4 (or RST, e below)
// Display CS to NodeMCU pin D8 (or GND, e below)
// Display GND to NodeMCU pin GND (0V)
/
/ Display VCC to NodeMCU 5V or 3.3V
//
// TFT复位引脚可以连接到NodeMCU RST引脚或3.3V以释放控制引脚
//
// DC(Data Command数据命令)引脚可以标记为AO或RS(寄存器选择)
//
// 对于某些显⽰屏,如ILI9341,如果没有更多的SPI设备(如SD卡)连接,
// TFT CS引脚可以连接到GND,在这种情况下,请注释下⾯的“定义TFT CS”⾏,
// 以便不定义它。在ST7735上的其他显⽰屏需要在设置期间切换TFT-CS引脚,
// 因此在这些情况下,必须定义和连接TFT-CS线。
//
/
/ NodeMCU D0 pin可⽤于RST
//
//
// 注意:只有部分版本的NodeMCU在VIN引脚上提供了USB 5V,
// 如果引脚上没有5V,则可以使⽤3.3V,但背光亮度会更低。
// ># 编辑以下⾏中的引脚号以适合您的ESP8266设置 >#// 对于NodeMCU-使⽤pin_Dx形式的引脚号,其中Dx是NodeMCU引脚名称
//#define TFT_CS PIN_D8 // Chip lect control pin D8
//#define TFT_DC PIN_D3 // Data Command control pin
//#define TFT_RST PIN_D4 // Ret pin (could connect to NodeMCU RST, e next line)
//#define TFT_RST -1 // Set TFT_RST to -1 if the display RESET is connected to NodeMCU RST or 3.3V //#define TFT_BL PIN_D1 // LED back-light (only for ST7789 with backlight control pin)
//#define TOUCH_CS PIN_D2 // Chip lect pin (T_CS) of touch screen
//#define TFT_WR PIN_D2 // Write strobe for modified Raspberry Pi TFT only
// ># 对于ESP8266重叠模式,编辑以下⾏中的引脚号 >#// 重叠模式与TFT共享ESP8266闪存SPI总线,因此对性能有影响,但为其他功能保存引脚。
// 最好不要连接MISO,因为当芯⽚选择引脚为⾼电平时,某些显⽰屏不会三态显⽰该⾏!
// 在NodeMCU 1.0上,SD0=MISO,SD1=MOSI,CLK=SCLK 以重叠模式连接到TFT
// 在NodeMCU V3上, S0=MISO,S1=MOSI,S2=SCLK
// 在ESP8266重叠模式下,必须定义以下内容
//#define TFT_SPI_OVERLAP
// 在ESP8266重叠模式下,TFT芯⽚选择必须连接到引脚D3
//#define TFT_CS PIN_D3
/
/#define TFT_DC PIN_D5 // Data Command control pin
//#define TFT_RST PIN_D4 // Ret pin (could connect to NodeMCU RST, e next line)
//#define TFT_RST -1 // Set TFT_RST to -1 if the display RESET is connected to NodeMCU RST or 3.3V
// ># 编辑以下⾏中的引脚号以适合您的ESP32设置 >#// ⽤于ESP32开发板(仅⽤ILI9341显⽰屏测试)
// 硬件SPI可以映射到任何引脚
// 我把背光引脚LED接到了3.3V上,常亮了
#define TFT_MISO 12
#define TFT_MOSI 13微波炉煮米饭
#define TFT_SCLK 14
#define TFT_CS 15 // Chip lect control pin
#define TFT_DC 2 // Data Command control pin
//#define TFT_RST 4 // Ret pin (could connect to RST pin)
#define TFT_RST -1 // Set TFT_RST to -1 if display RESET is connected to ESP32 board RST
//#define TFT_BL 32 // LED背光(仅适⽤于带背光控制引脚的ST7789)
#define TOUCH_CS 33 // 触摸屏的芯⽚选择引脚 (T_CS),
//#define TFT_WR 22 // 仅适⽤于改性树莓派TFT的写⼊选通 Write strobe for modified Raspberry Pi TFT only // 对于M5Stack模块,使⽤以下定义⾏
//#define TFT_MISO 19
//#define TFT_MOSI 23
//#define TFT_SCLK 18
//#define TFT_CS 14 // Chip lect control pin
三国徐庶//#define TFT_DC 27 // Data Command control pin
//#define TFT_RST 33 // Ret pin (could connect to Arduino RESET pin)
美林谷滑雪场//#define TFT_BL 32 // LED back-light (required for M5Stack)
// ># 编辑下⾯的引脚以适合您的ESP32并⾏TFT设置 >#// 库⽀持ESP32的8位并⾏TFT,下⾯的引脚选择与UNO格式的ESP32板兼容。
// 需要修改Wemos D32板,请参阅“⼯具”⽂件夹中的图表。
// 只测试了基于ILI9481和ILI9341的显⽰器!
// 仅ESP32⽀持并⾏总线
// 取消下⾯的注释⾏以使⽤ESP32并⾏接⼝⽽不是SPI
//#define ESP32_PARALLEL
// ⽤于测试的ESP32和TFT引脚为:
军用十字弩
//#define TFT_CS 33 // Chip lect control pin (library pulls permanently low
/
/#define TFT_DC 15 // Data Command control pin - must u a pin in the range 0-31
//#define TFT_RST 32 // Ret pin, toggles on startup
//#define TFT_WR 4 // Write strobe control pin - must u a pin in the range 0-31
//#define TFT_RD 2 // Read strobe control pin
//#define TFT_D0 12 // Must u pins in the range 0-31 for the data bus
//#define TFT_D1 13 // so a single register write ts/clears all bits.
//#define TFT_D2 26 // Pins can be randomly assigned, this does not affect
//#define TFT_D3 25 // TFT screen update performance.
//#define TFT_D4 17
//#define TFT_D5 16
//#define TFT_D6 27
/
/#define TFT_D7 14
// >>>>>>>>>>>>>>>>## //// 第三节.定义此处使⽤的字体
//
// >>>>>>>>>>>>>>>>## // ⽤//注释掉下⾯的定义,以停⽌加载该字体// ESP8366和ESP32有⾜够的内存,因此通常不需要注释字体。
// 如果加载了所有字体,则所需的额外闪存空间约为17Kbytes。
// 为了节省内存空间,只启⽤您需要的字体!
#define LOAD_GLCD // 字体 1. 原来的Adafruit 8像素字体需要约1820字节的FLASH
#define LOAD_FONT2 // 字体 2. 16像素⾼的⼩字体,需要⼤约3534字节的FLASH,96个字符
#define LOAD_FONT4 // 字体 4. 中等26像素⾼字体,FLASH需要5848字节,96个字符
#define LOAD_FONT6 // 字体 6. 48像素的⼤字体,FLASH需要2666字节,只有字符1234567890:-.
#define LOAD_FONT7 // 字体 7. 7段48像素字体,FLASH需要约2438字节,仅字符1234567890:-.
#define LOAD_FONT8 // 字体 8. 75像素的⼤字体在FLASH中需要3256字节,只有1234567890个字符:-. //#define LOAD_FONT8N // 字体 8. 上⾯字体8的替代品,稍微窄⼀些,因此3位数字适合160像素的TFT
#define LOAD_GFXFF // ⾃由字体. 包括访问48个Adafruit_GFX免费字体FF1到FF48和⾃定义字体
// 注释掉下⾯的定义,以停⽌SPIFFS⽂件系统并平滑加载字体代码
// 这将节约 ~20kbytes of flash
#define SMOOTH_FONT
// >>>>>>>>>>>>>>>####### //
// 第四节.其他选项
//
// >>>>>>>>>>>>>>>>## // 定义SPI时钟频率,这会影响图形渲染速度。速度太快,TFT驱动程序⽆法跟上,显⽰不正确。// 对于ILI9341显⽰屏,40MHz⼯作正常,80MHz有时出现故障
// 对于ST7735显⽰屏,超过27MHz可能⽆法⼯作(杂散像素和线)
// 对于ILI9163显⽰屏,27MHz⼯作正常。
// #define SPI_FREQUENCY 1000000
// #define SPI_FREQUENCY 5000000
// #define SPI_FREQUENCY 10000000
// #define SPI_FREQUENCY 20000000
//#define SPI_FREQUENCY 27000000 // 实际设置为 26.67MHz = 80/3
#define SPI_FREQUENCY 40000000
// #define SPI_FREQUENCY 80000000