|
FabGL
ESP32 Display Controller and Graphics Library
|
Display driver for SSD1306 based OLED display, with I2C connection. More...
#include <SSD1306Controller.h>
Inherits GenericBitmappedDisplayController.
Public Member Functions | |
| bool | available () |
| Checks the SSD1306 device availability. More... | |
| void | begin () |
| Initializes SSD1306. More... | |
| void | begin (I2C *i2c, int address=0x3C, gpio_num_t resetGPIO=GPIO_UNUSED) |
| Initializes SSD1306 assigning I2C bus, reset pin and address. More... | |
| virtual int | colorsCount () |
| Determines number of colors this display can provide. More... | |
| DisplayControllerType | controllerType () |
| Determines the display controller type. More... | |
| void | enableBackgroundPrimitiveExecution (bool value) |
| Enables or disables drawings inside vertical retracing time. More... | |
| void | enableBackgroundPrimitiveTimeout (bool value) |
| Enables or disables execution time limitation inside vertical retracing interrupt. More... | |
| int | getScreenHeight () |
| Determines the screen height in pixels. More... | |
| int | getScreenWidth () |
| Determines the screen width in pixels. More... | |
| int | getViewPortHeight () |
| Determines vertical size of the viewport. More... | |
| int | getViewPortWidth () |
| Determines horizontal size of the viewport. More... | |
| void | invert (bool value) |
| Inverts display colors. More... | |
| bool | isDoubleBuffered () |
| Determines whether BitmappedDisplayController is on double buffered mode. More... | |
| NativePixelFormat | nativePixelFormat () |
| Represents the native pixel format used by this display. More... | |
| void | processPrimitives () |
| Draws immediately all primitives in the queue. More... | |
| void | refreshSprites () |
| Forces the sprites to be updated. More... | |
| void | removeSprites () |
| Empties the list of active sprites. More... | |
| void | resumeBackgroundPrimitiveExecution () |
| Resumes drawings after suspendBackgroundPrimitiveExecution(). More... | |
| int | screenCol () |
| Gets initial left column of the viewport. More... | |
| int | screenRow () |
| Gets initial top row of the viewport. More... | |
| void | setMouseCursor (Cursor *cursor) |
| Sets mouse cursor and make it visible. More... | |
| void | setMouseCursor (CursorName cursorName) |
| Sets mouse cursor from a set of predefined cursors. More... | |
| void | setMouseCursorPos (int X, int Y) |
| Sets mouse cursor position. More... | |
| void | setOrientation (SSD1306Orientation value) |
| Set display orientation and rotation. More... | |
| void | setResolution (char const *modeline, int viewPortWidth=-1, int viewPortHeight=-1, bool doubleBuffered=false) |
| Sets SSD1306 resolution and viewport size. More... | |
| void | setScreenCol (int value) |
| Set initial left column of the viewport. More... | |
| void | setScreenRow (int value) |
| Set initial top row of the viewport. More... | |
| template<typename T > | |
| void | setSprites (T *sprites, int count) |
| Sets the list of active sprites. More... | |
| void | suspendBackgroundPrimitiveExecution () |
| Suspends drawings. More... | |
Static Public Attributes | |
| static int | queueSize = 1024 |
| Size of display controller primitives queue. More... | |
Display driver for SSD1306 based OLED display, with I2C connection.
This driver should also work with SH1106 (untested).
Example:
fabgl::I2C I2C;
fabgl::SSD1306Controller SSD1306Controller;
void setup() {
// SDA = gpio-4, SCL = gpio-15 (WARN: disconnect VGA connector!!)
I2C.begin(GPIO_NUM_4, GPIO_NUM_15);
// default OLED address is 0x3C
SSD1306Controller.begin(&I2C);
SSD1306Controller.setResolution(OLED_128x64);
Canvas cv(&SSD1306Controller);
cv.clear();
cv.drawText(0, 0, "Hello World!");
}
Definition at line 92 of file SSD1306Controller.h.