2023-12-07 20:35:59 +00:00
|
|
|
// This setup is for the RP2040 processor when used with 8-bit parallel displays
|
2022-05-16 18:58:05 +00:00
|
|
|
// See SetupX_Template.h for all options available
|
|
|
|
#define USER_SETUP_ID 106
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Interface
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
//#define TFT_PARALLEL_8_BIT
|
|
|
|
#define TFT_PARALLEL_16_BIT
|
|
|
|
|
2023-02-20 19:03:44 +00:00
|
|
|
// The parallel interface write cycle period is derived from a division of the CPU clock
|
|
|
|
// speed so scales with the processor clock. This means that the divider ratio may need
|
|
|
|
// to be increased when overclocking. I may also need to be adjusted dependant on the
|
2023-12-07 20:35:59 +00:00
|
|
|
// display controller type (ILI94341, HX8357C etc.). If RP2040_PIO_CLK_DIV is not defined
|
2023-02-20 19:03:44 +00:00
|
|
|
// the library will set default values which may not suit your display.
|
|
|
|
// The display controller data sheet will specify the minimum write cycle period. The
|
|
|
|
// controllers often work reliably for shorter periods, however if the period is too short
|
|
|
|
// the display may not initialise or graphics will become corrupted.
|
|
|
|
// PIO write cycle frequency = (CPU clock/(4 * RP2040_PIO_CLK_DIV))
|
|
|
|
//#define RP2040_PIO_CLK_DIV 1 // 32ns write cycle at 125MHz CPU clock
|
|
|
|
//#define RP2040_PIO_CLK_DIV 2 // 64ns write cycle at 125MHz CPU clock
|
|
|
|
//#define RP2040_PIO_CLK_DIV 3 // 96ns write cycle at 125MHz CPU clock
|
|
|
|
//#define RP2040_PIO_CLK_DIV 4 // 96ns write cycle at 125MHz CPU clock
|
2022-05-16 18:58:05 +00:00
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Display driver type
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
2022-05-16 22:34:07 +00:00
|
|
|
#define ILI9481_DRIVER
|
2022-05-16 18:58:05 +00:00
|
|
|
//#define HX8357B_DRIVER
|
2022-05-16 22:34:07 +00:00
|
|
|
//#define HX8357C_DRIVER
|
2022-05-16 18:58:05 +00:00
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// RP2040 pins used
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
// These pins can be moved and are controlled directly by the library software
|
|
|
|
#define TFT_RST 18 // Reset pin
|
|
|
|
#define TFT_CS 19 // Do not define if chip select control pin permanently connected to 0V
|
|
|
|
//#define TFT_RD -1 // Do not define, read pin must be permanently connected to 3V3
|
|
|
|
|
|
|
|
// Note: All the following pins are PIO hardware configured and driven
|
|
|
|
#define TFT_WR 16 // Write strobe pin
|
|
|
|
#define TFT_DC 17 // Data Command control pin
|
|
|
|
|
|
|
|
// PIO requires these to be sequentially increasing
|
|
|
|
#define TFT_D0 0
|
|
|
|
#define TFT_D1 1
|
|
|
|
#define TFT_D2 2
|
|
|
|
#define TFT_D3 3
|
|
|
|
#define TFT_D4 4
|
|
|
|
#define TFT_D5 5
|
|
|
|
#define TFT_D6 6
|
|
|
|
#define TFT_D7 7
|
|
|
|
#define TFT_D8 8
|
|
|
|
#define TFT_D9 9
|
|
|
|
#define TFT_D10 10
|
|
|
|
#define TFT_D11 11
|
|
|
|
#define TFT_D12 12
|
|
|
|
#define TFT_D13 13
|
|
|
|
#define TFT_D14 14
|
|
|
|
#define TFT_D15 15
|
|
|
|
//*/
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Fonts to be available
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
#define LOAD_GLCD // Font 1. Original Adafruit 8 pixel font needs ~1820 bytes in FLASH
|
|
|
|
#define LOAD_FONT2 // Font 2. Small 16 pixel high font, needs ~3534 bytes in FLASH, 96 characters
|
|
|
|
#define LOAD_FONT4 // Font 4. Medium 26 pixel high font, needs ~5848 bytes in FLASH, 96 characters
|
|
|
|
#define LOAD_FONT6 // Font 6. Large 48 pixel font, needs ~2666 bytes in FLASH, only characters 1234567890:-.apm
|
|
|
|
#define LOAD_FONT7 // Font 7. 7 segment 48 pixel font, needs ~2438 bytes in FLASH, only characters 1234567890:.
|
|
|
|
#define LOAD_FONT8 // Font 8. Large 75 pixel font needs ~3256 bytes in FLASH, only characters 1234567890:-.
|
|
|
|
#define LOAD_GFXFF // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts
|
|
|
|
|
|
|
|
#define SMOOTH_FONT
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|