11#include "hardware/spi.h"
93 virtual void drawPixel(int16_t x, int16_t y, uint8_t colour)
override;
96 void OLEDBufferScreen(int16_t x, int16_t y, uint8_t w, uint8_t h, uint8_t *data);
99 void OLEDSPISetup(spi_inst_t *spi, uint32_t spiBaudRate, int8_t cd, int8_t rst, int8_t cs, int8_t sclk, int8_t din);
100 void OLEDinit(uint8_t OLEDcontrast);
104 void OLEDFillPage(uint8_t page_num, uint8_t pixels, uint8_t delay);
105 void OLEDBitmap(int16_t x, int16_t y, uint8_t w, uint8_t h,
const uint8_t *data);
class to drive the ERMCh1115 OLED
Definition ch1115.hpp:19
static constexpr uint8_t ERMCH1115_PRECHARGE_DATA_SET
Definition ch1115.hpp:56
static constexpr uint8_t ERMCH1115_ENTIRE_DISPLAY_OFF
Definition ch1115.hpp:24
void OLEDscrollSetup(uint8_t Timeinterval=ERMCH1115_TIME_SET, uint8_t Direction=ERMCH1115_SCROLL_SETUP, uint8_t mode=ERMCH1115_SET_SCROLL_MODE)
Sets up Horizontal Scroll.
Definition ch1115.cpp:197
static constexpr uint8_t ERMCH1115_PRECHARGE_MODE_SET
Definition ch1115.hpp:55
void OLEDSPISetup(spi_inst_t *spi, uint32_t spiBaudRate, int8_t cd, int8_t rst, int8_t cs, int8_t sclk, int8_t din)
begin Method initialise OLED Sets pinmodes and SPI setup
Definition ch1115.cpp:34
static constexpr uint8_t ERMCH1115_ACTIVATE_SCROLL
Definition ch1115.hpp:69
static constexpr uint8_t ERMCH1115_DC_MODE_SET
Definition ch1115.hpp:45
bool OLEDIssleeping(void)
getting for _sleep member . is OLED in sleep mode
Definition ch1115.cpp:189
static constexpr uint8_t ERMCH1115_TIME_SET
Definition ch1115.hpp:65
bool _sleep
Definition ch1115.hpp:80
static constexpr uint8_t ERMCH1115_SEG_SET_REMAP
Definition ch1115.hpp:41
static constexpr uint8_t ERMCH1115_OSC_FREQ_DATA_SET
Definition ch1115.hpp:54
static constexpr uint8_t ERMCH1115_COM_LEVEL_MODE_SET
Definition ch1115.hpp:57
void OLEDBufferScreen(int16_t x, int16_t y, uint8_t w, uint8_t h, uint8_t *data)
Draw buffer data to the screen.
Definition ch1115.cpp:415
static constexpr uint8_t ERMCH1115_SET_DISPLAY_START_LINE
Definition ch1115.hpp:35
static constexpr uint8_t ERMCH1115_CONTRAST_CONTROL
Definition ch1115.hpp:29
static constexpr uint8_t ERMCH1115_IREF_REG
Definition ch1115.hpp:39
static constexpr uint8_t ERMCH1115_SET_COLADD_LSB
Definition ch1115.hpp:33
void OLEDFillPage(uint8_t page_num, uint8_t pixels, uint8_t delay)
Fill the chosen page(0-7) with a datapattern.
Definition ch1115.cpp:321
spi_inst_t * spiInterface
Definition ch1115.hpp:82
static constexpr uint8_t ERMCH1115_SPAGE_ADR_SET
Definition ch1115.hpp:64
static constexpr uint8_t ERMCH1115_SET_PAGEADD
Definition ch1115.hpp:32
int16_t _OLED_HEIGHT
Definition ch1115.hpp:85
uint8_t OLEDSetBufferPtr(uint8_t width, uint8_t height, uint8_t *pBuffer, uint16_t sizeOfBuffer)
sets the buffer pointer to the users screen data buffer
Definition ch1115.cpp:505
static constexpr uint8_t ERMCH1115_SET_COLADD_MSB
Definition ch1115.hpp:34
static constexpr uint8_t ERMCH1115_COM_LEVEL_DATA_SET
Definition ch1115.hpp:58
static constexpr uint8_t ERMCH1115_HORIZONTAL_A_SCROLL_SETUP
Definition ch1115.hpp:60
void OLEDfadeEffect(uint8_t bits=ERMCH1115_BREATHEFFECT_DATA)
Turns on fade effect.
Definition ch1115.cpp:265
static constexpr uint8_t ERMCH1115_DISPLAY_ON
Definition ch1115.hpp:25
int8_t _OLED_PAGE_NUM
Definition ch1115.hpp:86
static constexpr uint8_t ERMCH1115_OFFSET_DATA_SET
Definition ch1115.hpp:49
static constexpr uint8_t ERMCH1115_BREATHEFFECT_SET
Definition ch1115.hpp:50
void OLEDscroll(uint8_t bits)
Turns on Horizontal scroll.
Definition ch1115.cpp:221
static constexpr uint8_t ERMCH1115_OFFSET_MODE_SET
Definition ch1115.hpp:48
void OLEDBitmap(int16_t x, int16_t y, uint8_t w, uint8_t h, const uint8_t *data)
Draw a bitmap to the screen.
Definition ch1115.cpp:354
static constexpr uint8_t ERMCH1115_HORIZONTAL_A_SCROLL_SET_ECOL
Definition ch1115.hpp:62
void OLEDEnable(uint8_t on)
Turns On Display.
Definition ch1115.cpp:168
static constexpr uint8_t ERMCH1115_COMMON_SCAN_DIR
Definition ch1115.hpp:47
int8_t _display_SCLK
Definition ch1115.hpp:77
static constexpr uint8_t ERMCH1115_CONTRAST_DATA_DEFAULT
Definition ch1115.hpp:30
void OLEDinit(uint8_t OLEDcontrast)
Called from OLEDbegin carries out Power on sequence and register init.
Definition ch1115.cpp:72
static constexpr uint8_t ERMCH1115_DISPLAY_NORMAL
Definition ch1115.hpp:27
int16_t _OLED_WIDTH
Definition ch1115.hpp:84
static constexpr uint8_t ERMCH1115_HORIZONTAL_A_SCROLL_SET_SCOL
Definition ch1115.hpp:61
static constexpr uint8_t ERMCH1115_SET_SCROLL_MODE
Definition ch1115.hpp:67
static constexpr uint8_t ERMCH1115_SET_PUMP_REG
Definition ch1115.hpp:37
uint8_t _OLEDcontrast
Definition ch1115.hpp:81
static constexpr uint8_t ERMCH1115_DISPLAY_OFF
Definition ch1115.hpp:26
static constexpr uint8_t ERMCH1115_DC_ONOFF_SET
Definition ch1115.hpp:46
void OLEDclearBuffer(void)
clears the active shared buffer i.e. does NOT write to the screen
Definition ch1115.cpp:401
void OLEDReset(void)
Resets OLED in a four wire setup called at start.
Definition ch1115.cpp:151
static constexpr uint8_t ERMCH1115_DEACTIVATE_SCROLL
Definition ch1115.hpp:68
static constexpr uint8_t ERMCH1115_EPAGE_ADR_SET
Definition ch1115.hpp:66
static constexpr uint8_t ERMCH1115_SEG_SET_PADS
Definition ch1115.hpp:42
void send_data(uint8_t data)
Send data byte with SPI to ERMCH1115.
Definition ch1115.cpp:143
static constexpr uint8_t ERMCH1115_MULTIPLEX_DATA_SET
Definition ch1115.hpp:44
static constexpr uint8_t ERMCH1115_SET_PUMP_SET
Definition ch1115.hpp:38
int8_t _display_CD
Definition ch1115.hpp:75
void OLEDInvert(uint8_t on)
invert the display
Definition ch1115.cpp:294
void OLEDPowerDown(void)
Power down function.
Definition ch1115.cpp:279
int8_t _display_CS
Definition ch1115.hpp:74
virtual void drawPixel(int16_t x, int16_t y, uint8_t colour) override
Draws a Pixel to the screen, overides the graphics library.
Definition ch1115.cpp:455
void OLEDContrast(uint8_t contrast)
Adjusts contrast.
Definition ch1115.cpp:233
void OLEDupdate(void)
updates the OLED i.e. writes buffer to the screen
Definition ch1115.cpp:389
static constexpr uint8_t ERMCH1115_DISPLAY_INVERT
Definition ch1115.hpp:28
uint8_t * _OLEDbuffer
Definition ch1115.hpp:87
int8_t _display_RST
Definition ch1115.hpp:76
void OLEDFlip(uint8_t on)
Rotates the display vertically, A 180 degree 'flip'.
Definition ch1115.cpp:246
void send_command(uint8_t command, uint8_t value)
Sends a command to the display.
Definition ch1115.cpp:132
static constexpr uint8_t ERMCH1115_IREF_SET
Definition ch1115.hpp:40
static constexpr uint8_t ERMCH1115_MULTIPLEX_MODE_SET
Definition ch1115.hpp:43
static constexpr uint8_t ERMCH1115_OSC_FREQ_MODE_SET
Definition ch1115.hpp:53
static constexpr uint8_t ERMCH1115_BREATHEFFECT_DATA
Definition ch1115.hpp:51
void OLEDFillScreen(uint8_t pixel, uint8_t mircodelay)
Fill the screen NOT the buffer with a datapattern.
Definition ch1115.cpp:307
int8_t _display_DIN
Definition ch1115.hpp:78
static constexpr uint8_t ERMCH1115_SCROLL_SETUP
Definition ch1115.hpp:63
static constexpr uint8_t ERMCH1115_ENTIRE_DISPLAY_ON
Definition ch1115.hpp:23
Graphics class to hold graphic related functions.
Definition display_graphics.hpp:22
int16_t height(void) const
Gets the height of the display (per current _rotation)
Definition display_graphics.cpp:677
int16_t width(void) const
Gets the width of the display (per current _rotation)
Definition display_graphics.cpp:668
header file for the graphics based functions, 1-bit color displays.