#include <U8g2lib.h>
constexpr byte MAX_MENU_ITEMS {4};
struct OledMenus {
const char *title;
const char *items[MAX_MENU_ITEMS];
};
OledMenus menu {
"Demo Menu", { "Zeile 1", "Zeile 2", "Zeile 3", "Zeile 4" }
};
#if defined DISPLAY_SSH_1106
using OLED = U8G2_SH1106_128X64_NONAME_F_HW_I2C; // 1,3 Inch SH1106
#else
using OLED = U8G2_SSD1306_128X64_NONAME_F_HW_I2C; // 0,96 Inch SH1306
#endif
OLED u8g2(U8G2_R0, U8X8_PIN_NONE); // OLED-Display einrichten
void setup(void) {
Serial.begin(115200);
u8g2.begin();
u8g2.setFont(u8g2_font_6x10_tr);
u8g2.drawUTF8(0, 10, menu.title);
for (size_t i = 0; i < MAX_MENU_ITEMS; ++i) { u8g2.drawUTF8(40, 25 + (i * 12), menu.items[i]); }
u8g2.sendBuffer();
}
void loop() {}