Commit Graph

96 Commits

Author SHA1 Message Date
Bodmer 3c6dab0a52 Add ability to set the RP2040 parallel interface speed
// For RP2040 processor and 8 or 16 bit parallel displays:
// 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
// display controller type (ILI94341, HX8357C etc). If RP2040_PIO_CLK_DIV is not defined
// 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
2022-11-05 18:12:28 +00:00
Nicolas Boulicault 2882f1d794 ST7735: Add support for RobotLCD Arduino shield
Without this change, my LCD screen only displays some bars on the screen after init.
2022-08-23 18:17:56 +02:00
Nicolas Boulicault 0416870179 ST7735: fix RGB/BGR selection issue due to ST7735_XXX vs INITR_XXX confusion
Without this change, color order is always set to RGB,
no matter what ST7735_XXX value is defined in User_Setup.h
2022-08-21 19:20:23 +02:00
Bodmer f2d8d2f26d Add new examples and ST7789 320x170 support
GUI examples require an extension library:

https://github.com/Bodmer/TFT_eWidget
2022-07-22 18:09:09 +01:00
Bodmer 7bf48bb179 Add 16 bit parallel for RP2040 processor
Correct legacy comments
Add ESP32 S3 parallel setup 70d
Add setups 105-107 for RP2040 with 16 bit display
Add file conversion notes to PNG array example
2022-05-16 19:58:05 +01:00
Bodmer 8e0e7183c2 Add HX8357B/C drivers
Only tested with 16 bit parallel interface
2022-04-29 22:42:16 +01:00
Bodmer 7b5f98a638 Add RM68120 driver (UNTESTED!) 2022-04-29 22:39:24 +01:00
Bodmer f7e9a91ead Fix #1800 Fix #1793
Added offsets for 170x320 ST7789 display
Added offsets for 240x280 display to ST7789_2 dirver
2022-04-28 14:19:05 +01:00
Bodmer 18a76f1c65 Support Adafruit 240x280 ST7789 screen 2022-04-26 21:57:42 +01:00
Bodmer d6544c9cb4 Fix #1767 and update ILI9481 init code option 8 2022-04-21 18:32:26 +01:00
Bodmer e52a0161e6 Fix #1760, fix #1763, fix #1764 2022-04-10 01:24:10 +01:00
Bodmer 0c935de08d RP2040 18bit PIO SPI update
Update RP2040 18bit PIO SPI code for 18 bit SPI displays (tested on  ILI9488)
Add ILI9342_DRIVER option for default landscape display.
2022-03-22 23:29:30 +00:00
Bodmer 8480f39a9c Various updates - raise to version 2.4.43
Sprite class uses TFT_eSPI setBitmapColor - fn deleted
Small performance improvement to RP2040 SPI PIO
Typo corrections
Correct (unused) tft_Write_32 for STM32
Update HX8357D rotation code
Enable software reset for ILI9486
Add preliminary RM68120 support
2022-03-17 14:12:10 +00:00
Bodmer 352d1e007c
Update ILI9486_Init.h
SW reset needed for RPi display
2022-03-15 01:21:11 +00:00
Bodmer 31b2de56c1 Update HX8357D driver to support RGB and BGR displays
In setup add the following lines:
// If green and blue swapped on display then change the RGB colour order
// Only uncomment ONE of the following options
#define TFT_RGB_ORDER TFT_RGB    //   Red-Green-Blue
//#define TFT_RGB_ORDER TFT_BGR    //   Blue-Green-RED
2022-03-12 20:04:41 +00:00
Mingjie Li 40306ae615 Add ST7789 172x320 display 2022-03-09 22:20:58 +08:00
moion b911c86572 add ST7789 240X280 1.69inch TFT Setup file 2022-02-28 11:47:19 +08:00
Bodmer d50b7f6c13
Revert HX8357D change #1356
Change #1356 caused issues.
2022-02-24 12:10:19 +00:00
Bodmer e61fb8c78d Fix #1547 for RP2040 processor with ST7789 TFT
Add Arduino Nano Connect setup example 62
2022-01-26 22:20:34 +00:00
Bodmer 5959550dd7 Allow RP2040 SPI 0 or SPI 1 ports to be used
Auto set of CGRAM offset for 135 x 240 ST7789 display
2021-12-05 22:34:37 +00:00
Dave Bennett f3135aea29 Changing the rotation file so that text is not flipped. Rotation values from
the ILI9486 driver work well with this
2021-10-07 08:25:27 -04:00
Bodmer 612e76343e Remove unused macros 2021-05-11 01:29:56 +01:00
Bodmer 6b40880375 Merge branch 'master' of https://github.com/Bodmer/TFT_eSPI 2021-05-11 00:22:46 +01:00
Bodmer 9fc8fa6956 Add 2nd init sequence for ILI9341, see #1172
Use:
  #define ILI9341_2_DRIVER
in the setup file to invoke new initicode, instead of:
  #define ILI9341_DRIVER
2021-05-11 00:22:38 +01:00
arduino12 e1161c17f4 Add support for SSD1351! (128*128 OLED)
TODO:
Implement read functions as well..
2021-04-26 20:40:18 +03:00
Bodmer 3c6ea1f594
See #1081 2021-03-17 23:07:26 +00:00
Bodmer 9a7958ed28 Update ILI9481_Init.h 2020-12-31 00:18:14 +00:00
Bodmer 1c4860dec3 Fix RPI display issue #892
Prevent 18 bit display serial driver being invoked for RPi display
2020-12-29 13:47:28 +00:00
Bodmer 42e6fc87ff Feature update
Add ILI9225 support
Add viewport feature to Sprites
Rationalise common TFT_eSPI and Sprite functions and variables to use inherited functions width(), height(), rotation(), write(), pivot, cursor, swapBytes.
2020-12-01 20:06:32 +00:00
Bodmer fd16a6066d Update ILI9486 driver for SPI 2020-11-26 14:18:28 +00:00
Bodmer 0de102f3ac Add ILI9481 init sequence options
Choosing to a different option to improve colour balance.

init options from mcufriend_kbv added.
2020-11-26 13:12:07 +00:00
Bodmer d6be490735 Add ILI9255 driver 2020-11-25 23:18:54 +00:00
Bodmer d6e573c230 Fix SPI ILI9481
ILI9481 with 8 bit parallel worked OK but SPI needs an 18 bit colour interface.
2020-11-25 22:54:30 +00:00
Bodmer f96c42253c Add support for choosing colour order on ST7735
See #639
2020-11-02 17:59:04 +00:00
Bodmer 1c1ec8cfa3 #774 add GC9A01 driver
Driver added
Setup46 added
2020-10-25 12:52:37 +00:00
Bodmer ef93dbe687 Make ST7789 drivers consistent
Simplified driver ST7789_2_DRIVER not supports 135 x 240 display.
This will not fix #763 since user specifies alternative ST7789_DRIVER which already supports 135x240 displays.
2020-10-02 20:47:00 +01:00
Bodmer 49cef1f35d Support for SSD1963 and ST7706 SPI read
The SSD1963 support has been tested with a 480x800 pixel display from Buy Display.
Support for reading an ST7796 SPI display has been added.
pushToSprite added to keywords list.
2020-10-02 01:07:15 +01:00
Bodmer d7fdcc0991 Fix #740 and #704
#740: To avoid ambiguity the pushSprite for writing a sprite to another sprite has been renamed pushToSprite

#704: Change to 18 bit colurs for SSD1963 with SPI interface

Remove outdated TFT_SPIFFS_Jpeg example
2020-09-07 22:04:42 +01:00
Bodmer 1c66d306d5 Add SSD1963 for #704
Remove setWindow optimisation clash with TFT_eFEX
2020-08-15 00:19:03 +01:00
Bodmer 90af737fa1 Fix #606 inconsistency + others
TFT_eFEX also needs updating so Rotated_Sprite_3 example renders correctly.

pushImage for FLASH images updated so partly off-screen images are correctly rendered.
2020-04-26 17:05:19 +01:00
Bodmer 353d80a78e
Support SPI variant of ST7796
See #499
2020-04-17 14:48:24 +01:00
Bodmer fa2727b511
Update ILI9488_Init.h 2020-03-27 11:13:39 +00:00
Bodmer 0e0fd75277 Raise to version 2.0.0
The library has been cleaned up as it has got a bit untidy due to the large number of small incremental changes.

4bit Sprite examples renaed to be consistent with others.

alphaBlend example moved to generic folder (alphaBlend fn was moved to TFT_eSPI class).
Added sections + explanatory comments to functions prototypes.

Temporary comments added for potential gotchas for noobs when using DMA.

spi_begin/end functions renamed to reflect functionality. Old fns  retained for backwards compatibility with user setup.h files.
2020-01-26 21:17:49 +00:00
Bodmer 7f53a571f4 Add STM32 and generic processor support 2020-01-11 23:32:10 +00:00
Bodmer 8342507233 Remove scrap drivers, fix Sprite destructor 2020-01-11 01:27:51 +00:00
Bodmer 1476da56ba Restructured code, added ST7796
RPi MHS-4.0 inch Display-B type display now supported.
2020-01-11 00:58:38 +00:00
Bodmer d28e43574b Fix #406 2019-11-02 15:14:20 +00:00
Bodmer e9d405ea1f Fix image cropping bug plus minor update
Images/sprites overlapping both sides of the display were not correctly
cropped.
Option added to allow RGB<>BGR colourr swap option to be used.
ESP8266 Wemos D1 R1 pin numbering difference accomodated.
TTGO T4 setup changed to use HSPI port.
2019-10-21 22:56:35 +01:00
Bodmer 90189130ec Update for #379
Added support for ST7789 135 x 240 display which needs offsets
Added Setup135_ST7789.h as an example setup file for ESP8266
2019-07-31 01:07:05 +01:00
Bodmer b5db2cd3fa
minor edit 2019-07-21 13:27:27 +01:00