/* * Display.h * * Wrapper class for Adafruit OLED display. * * Created on: 28.01.2022 * Author: FSmilari */ #ifndef DISPLAY_H_ #define DISPLAY_H_ #include #include #include #include "fonts/titillium_web_6pt7b.h" #include "fonts/titillium_web_8pt7b.h" #include "fonts/titillium_web_12pt7b.h" #include "fonts/titillium_web_24pt7b.h" #include "fonts/titillium_web_30pt7b.h" #include "fonts/SFToolsLogo.h" #include #include #include "Status.h" #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define SCREEN_ADDRESS 0x3C #define STATUS_TXT_IDLE "OPR" #define STATUS_TXT_TOOLCHG "WZW" #define STATUS_TXT_CFG "SETUP" class Display { private: Adafruit_SSD1306 ssd1306; U8G2_FOR_ADAFRUIT_GFX u8g2_gfx; void calculateWH(String units, uint16_t &w, uint16_t &h); void drawStatusText(String txt); void drawConfigText(String txt); void drawConfigOption(String txt); public: Display(); void init(void); void display(void); void clearDisplay(void); void showBrand(void); void showInitialization(void); void showFrame(Status status); }; #endif /* DISPLAY_H_ */