#define ENABLE_GxEPD2_GFX 0
#include <GxEPD2_BW.h>
#include <Adafruit_GFX.h>
#include <GxEPD2.h>
#include "Assets.h"
#define GxEPD2_DISPLAY_CLASS GxEPD2_BW
#define GxEPD2_DRIVER_CLASS GxEPD2_290 GDEH029A1 128x296, SSD1608 (IL3820), (E029A01-FPC-A1 SYX1553)
#define CS 15 // Chip select for display 2
#define DC 2 // Data/Command for display 2
#define RSET 0 // Reset for display 2
#define BUSY 16 // Busy for display 2
#define MOSI 23 // Data in
#define SCLK 18 // Clock
#define CS_PIN 33 // Chip select for SD card
#define MAX_DISPLAY_BUFFER_SIZE 800
#define MAX_HEIGHT(EPD) (EPD::HEIGHT <= MAX_DISPLAY_BUFFER_SIZE / (EPD::WIDTH / 8) ? EPD::HEIGHT : MAX_DISPLAY_BUFFER_SIZE / (EPD::WIDTH / 8))
GxEPD2_DISPLAY_CLASS < GxEPD2_DRIVER_CLASS, MAX_HEIGHT(GxEPD2_DRIVER_CLASS) > display(GxEPD2_DRIVER_CLASS((/*CS*/ 15, /*DC=*/ 2, /*RST=*/ 0, /*BUSY=*/ 16, /*MOSI=*/ 23, /*SCLK=*/ 18, /*CS_PIN=*/ 33)));
#define BUTTON_UP 12 // GPIO pin for the "up" button
#define BUTTON_DOWN 13 // GPIO pin for the "down" button
#define BUTTON_SELECT 14 // GPIO pin for the "select" button
const char TextBsp[] = "Irgendein Text";
void setup() {
Serial.begin(115200);
Serial.println();
Serial.println("setup");
display.init(115200);
pinMode(BUTTON_UP, INPUT_PULLUP);
pinMode(BUTTON_DOWN, INPUT_PULLUP);
pinMode(BUTTON_SELECT, INPUT_PULLUP);
Serial.println("setup done");
display.end();
}
void loop() {
display.writeScreenBuffer();
drawAssets();
if (digitalRead(BUTTON_UP) == LOW) {
delay(200); // Debounce delay
}
if (digitalRead(BUTTON_DOWN) == LOW) {
delay(200); // Debounce delay
}
if (digitalRead(BUTTON_SELECT) == LOW) {
delay(200); // Debounce delay
}
}
void drawAssets()
{
const unsigned char* bitmaps[] =
{
home_bit_Asset_29, home_bit_Home_2, home_bit_Home_3, home_bit_Asset_30,home_bit_Home_6
};
if ((display.epd2.WIDTH == 128) && (display.epd2.HEIGHT == 296) && !display.epd2.hasColor)
{
bool m = display.mirror(true);
for (uint16_t i = 0; i < sizeof(bitmaps) / sizeof(char*); i++)
{
display.firstPage();
do
{
display.fillScreen(GxEPD_WHITE);
display.drawInvertedBitmap(0, 0, bitmaps[i], 128, 296, GxEPD_BLACK);
}
while (display.nextPage());
delay(2000);
}
display.mirror(m);
}
}Loading
epaper-2in9
epaper-2in9