33 static const uint8_t PROGMEM s_oled128x64_initData[] =
36 SSD1306_MEMORYMODE, HORIZONTAL_ADDRESSING_MODE,
38 SSD1306_SETSTARTLINE | 0x00,
39 SSD1306_SETCONTRAST, 0x7F,
40 SSD1306_SEGREMAP | 0x01,
41 SSD1306_NORMALDISPLAY,
42 SSD1306_SETMULTIPLEX, 63,
43 SSD1306_SETDISPLAYOFFSET, 0x00,
44 SSD1306_SETDISPLAYCLOCKDIV, 0x80,
45 SSD1306_SETPRECHARGE, 0x22,
46 SSD1306_SETCOMPINS, 0x12,
47 SSD1306_SETVCOMDETECT, 0x20,
48 SSD1306_CHARGEPUMP, 0x14,
49 SSD1306_DISPLAYALLON_RESUME,
53 static const uint8_t PROGMEM s_oled128x32_initData[] =
56 SSD1306_SETDISPLAYCLOCKDIV, 0x80,
57 SSD1306_SETMULTIPLEX, 31,
58 SSD1306_SETDISPLAYOFFSET, 0x00,
60 SSD1306_CHARGEPUMP, 0x14,
61 SSD1306_SEGREMAP | 0x01,
63 SSD1306_SETCOMPINS, 0x02,
64 SSD1306_SETCONTRAST, 0x7F,
65 SSD1306_SETPRECHARGE, 0x22,
66 SSD1306_SETVCOMDETECT, 0x40,
67 SSD1306_MEMORYMODE, HORIZONTAL_ADDRESSING_MODE,
68 SSD1306_DISPLAYALLON_RESUME,
69 SSD1306_NORMALDISPLAY,
73 static void ssd1306_setBlock(lcduint_t x, lcduint_t y, lcduint_t w)
98 static void ssd1306_nextPage(
void)
102 static void ssd1306_setMode_int(
lcd_mode_t mode)
126 for( uint8_t i=0; i<
sizeof(s_oled128x64_initData); i++)
152 pinMode(rstPin, OUTPUT);
153 digitalWrite(rstPin, HIGH);
157 digitalWrite(rstPin, LOW);
159 digitalWrite(rstPin, HIGH);
178 for( uint8_t i=0; i <
sizeof(s_oled128x32_initData); i++)
void ssd1306_setMode(lcd_mode_t mode)
Sets library display mode for direct draw functions.
void ssd1306_i2cInit(void)
void(* send)(uint8_t data)
void ssd1306_128x32_init(void)
Inits 128x32 OLED display (based on ssd1306 controller).
void ssd1306_128x64_spi_init(int8_t rstPin, int8_t cesPin, int8_t dcPin)
Inits 128x64 OLED display over spi (based on SSD1306 controller).
void(* set_block)(lcduint_t x, lcduint_t y, lcduint_t w)
Sets block in RAM of lcd display controller to write data to.
void ssd1306_spiDataMode(uint8_t mode)
void(* send_pixels_buffer1)(const uint8_t *buffer, uint16_t len)
void ssd1306_128x64_init()
Inits 128x64 OLED display (based on SSD1306 controller).
void(* send_pixels1)(uint8_t data)
void ssd1306_128x64_i2c_initEx(int8_t scl, int8_t sda, int8_t sa)
Inits 128x64 OLED display over i2c (based on SSD1306 controller).
void ssd1306_spiInit(int8_t cesPin, int8_t dcPin)
ssd1306_lcd_t ssd1306_lcd
void ssd1306_128x32_i2c_init(void)
Inits 128x32 OLED display over i2c (based on SSD1306 controller).
ssd1306_interface_t ssd1306_intf
void ssd1306_128x64_i2c_init(void)
Inits 128x64 OLED display over i2c (based on SSD1306 controller).
void ssd1306_i2cInitEx(int8_t scl, int8_t sda, int8_t sa)
void ssd1306_sendCommand(uint8_t command)
void(* send_buffer)(const uint8_t *buffer, uint16_t size)
Sends bytes to SSD1306 device.
void ssd1306_init(void) __attribute__((deprecated))
Inits 128x64 OLED display over i2c (based on SSD1306 controller).
void(* set_mode)(lcd_mode_t mode)
Sets library display mode for direct draw functions.