Skip to content

Class evab::ScreenSSD1306

ClassList > evab > ScreenSSD1306

SSD1306 screen driver for OLED displays. More...

  • #include <evabScreenSSD1306.h>

Inherits the following classes: evab::ScreenPage8Base

Public Functions

Type Name
virtual void Deserialize (unsigned short aSerialized, Coor & aPos, Coor & aSize, bool & isFocused)
Deserializes element state for 16x8 screen.
ScreenSSD1306 (const IFont * aFont, unsigned long aWireClock=800000L, uint8_t aHeightPx=64)
Constructor for SSD1306 screen driver.
virtual unsigned short Serialize (const Coor & aPos, const Coor & aSize, bool isFocused)
Serializes element state for 16x8 screen.
void SetContrast (uint8_t aContrast)
Sets display contrast.
virtual Coor Size () override
Gets the screen size in tiles.

Public Functions inherited from evab::ScreenPage8Base

See evab::ScreenPage8Base

Type Name
virtual void DrawSymbol (Coor aPosition, Coor aSize, char aCharcode, unsigned char aColor)
Draws a symbol at the specified position with scaling.
virtual void Picto (Coor aPosition, const unsigned char * aPictogram, unsigned char aColor)
Draws a pictogram at the specified position.
ScreenPage8Base (const IFont * aFont)
Constructor for page-based 8-bit screen base.

Public Functions inherited from evab::Screen

See evab::Screen

Type Name
virtual void Clear (Coor aPosition, Coor aSize, unsigned char aColor=0)
virtual void Deserialize (unsigned short aSerialized, Coor & aPosition, Coor & aSize, bool & isFocused) = 0
virtual void DrawSymbol (Coor aPosition, Coor aSize, char aSymbol, unsigned char aColor=0) = 0
virtual void Picto (Coor aPosition, const unsigned char * aPictogram, unsigned char aColor=0)
virtual unsigned short Serialize (const Coor & aPosition, const Coor & aSize, bool isFocused) = 0
virtual Coor Size () = 0
void Text (Coor aPosition, Coor aSize, TText aText, unsigned char aColor=0)
Draws text with specified alignment strategy.
void TextCenter (Coor aPosition, Coor aSize, T aText, unsigned char aColor=0)
void TextLeft (Coor aPosition, Coor aSize, T aText, unsigned char aColor=0)
void TextRight (Coor aPosition, Coor aSize, T aText, unsigned char aColor=0)

Detailed Description

Supports 128x64 and 128x32 OLED displays with I2C interface.

Public Functions Documentation

function Deserialize

Deserializes element state for 16x8 screen.

virtual void evab::ScreenSSD1306::Deserialize (
    unsigned short aSerialized,
    Coor & aPos,
    Coor & aSize,
    bool & isFocused
) 

Parameters:

  • aSerialized Serialized state
  • aPos Position of the element (output)
  • aSize Size of the element (output)
  • isFocused Focus state (output)

Implements evab::Screen::Deserialize


function ScreenSSD1306

Constructor for SSD1306 screen driver.

evab::ScreenSSD1306::ScreenSSD1306 (
    const IFont * aFont,
    unsigned long aWireClock=800000L,
    uint8_t aHeightPx=64
) 

Parameters:

  • aFont Font to use
  • aWireClock I2C clock speed (default 800000)
  • aHeightPx Display height in pixels (default 64)

function Serialize

Serializes element state for 16x8 screen.

virtual unsigned short evab::ScreenSSD1306::Serialize (
    const Coor & aPos,
    const Coor & aSize,
    bool isFocused
) 

Parameters:

  • aPos Position of the element
  • aSize Size of the element
  • isFocused Focus state

Returns:

unsigned short Serialized state

Implements evab::Screen::Serialize


function SetContrast

Sets display contrast.

void evab::ScreenSSD1306::SetContrast (
    uint8_t aContrast
) 

Parameters:

  • aContrast Contrast value

function Size

Gets the screen size in tiles.

virtual Coor evab::ScreenSSD1306::Size () override

Returns:

Coor Screen dimensions (16 x pages)

Implements evab::Screen::Size



The documentation for this class was generated from the following file src/evabScreenSSD1306.h