ESP32-S3 16bit parallel support soon? #2984
Answered
by
rolloo
HaenZ33
asked this question in
New processor/display support or capability request
Replies: 3 comments 2 replies
-
#include <Arduino_GFX_Library.h>
#include <TFT_eSPI.h>
Arduino_XCA9554SWSPI *expander = new Arduino_XCA9554SWSPI(
PCA_TFT_RESET, PCA_TFT_CS, PCA_TFT_SCK, PCA_TFT_MOSI,
&Wire, 0x3F);
Arduino_ESP32RGBPanel *rgbpanel = new Arduino_ESP32RGBPanel(
TFT_DE, TFT_VSYNC, TFT_HSYNC, TFT_PCLK,
TFT_R1, TFT_R2, TFT_R3, TFT_R4, TFT_R5,
TFT_G0, TFT_G1, TFT_G2, TFT_G3, TFT_G4, TFT_G5,
TFT_B1, TFT_B2, TFT_B3, TFT_B4, TFT_B5,
1 /* hync_polarity */, 46 /* hsync_front_porch */, 2 /* hsync_pulse_width */, 44 /* hsync_back_porch */,
1 /* vsync_polarity */, 50 /* vsync_front_porch */, 16 /* vsync_pulse_width */, 16 /* vsync_back_porch */);
Arduino_RGB_Display *gfx = new Arduino_RGB_Display(
720 /* width */, 720 /* height */, rgbpanel, 0 /* rotation */, true /* auto_flush */,
expander, GFX_NOT_DEFINED /* RST */, hd40015c40_init_operations, sizeof(hd40015c40_init_operations));
TFT_eSPI tft = TFT_eSPI();
TFT_eSprite sprite = TFT_eSprite(&tft);
int rotation = 0;
unsigned int currentmillis = 0;
void setup(void) {
sprite.createSprite(600, 600);
#ifdef GFX_EXTRA_PRE_INIT
GFX_EXTRA_PRE_INIT();
#endif
if (!gfx->begin()) {
Serial.println("gfx->begin() failed!");
}
gfx->fillScreen(BLUE);
}
void loop() {
currentmillis = millis();
generatearc();
}
void generatearc() {
static int arcmillis = 0;
static int enddegree = 0;
if (currentmillis - arcmillis > 200) {
arcmillis = currentmillis;
enddegree = enddegree + 5;
if (enddegree >= 360) {
enddegree = 0;
}
sprite.fillSprite(TFT_BLACK);
sprite.drawSmoothArc(300, 300, 290, 280, 0, enddegree, TFT_RED, TFT_BLACK);
sprite.drawSmoothArc(300, 300, 270, 260, 90, enddegree, TFT_WHITE, TFT_BLACK);
sprite.drawSmoothArc(300, 300, 250, 240, 180, enddegree, TFT_ORANGE, TFT_BLACK);
sprite.drawSmoothArc(300, 300, 230, 220, 270, enddegree, TFT_GREEN, TFT_BLACK);
sprite.drawSmoothArc(300, 300, 210, 200, 360, enddegree, TFT_BLUE, TFT_BLACK);
gfx->draw16bitBeRGBBitmap(60, 60, (uint16_t *)sprite.getPointer(), 600, 600);
}
}
|
Beta Was this translation helpful? Give feedback.
2 replies
Answer selected by
HaenZ33
-
Hi all. |
Beta Was this translation helpful? Give feedback.
0 replies
-
Hi all. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello everyone, and greetings Bodmer,
I'm reaching out to seek assistance for my setup involving the ESP32-S3 board,
specifically the Adafruit Qualia https://learn.adafruit.com/adafruit-qualia-esp32-s3-for-rgb666-displays
and a 720x720 display with the ST7701S driver https://www.adafruit.com/product/5793.
Adafruit has provided a demo sketch utilizing the Arduino_GFX_library, which functions well with static images. However, it encounters significant issues with moving parts, and unfortunately, no one seems to have a solution for this.
Given my positive experiences with the tft_eSPI library on other displays and setups, and my appreciation for the work you are doing, I am curious if there is a possibility of incorporating 16-bit interface support in the near future?
I appreciate any response. Thanks,
HaenZ
Beta Was this translation helpful? Give feedback.
All reactions