27 #include "ssd1331_commands.h" 32 static const PROGMEM uint8_t s_oled96x64_initData[] =
35 SSD1331_SEGREMAP, 0x00 | 0x20 | 0x10 | 0x02 | 0x01,
36 SSD1331_SETSTARTLINE, 0x00,
37 SSD1331_SETDISPLAYOFFSET, 0x00,
38 SSD1331_NORMALDISPLAY,
39 SSD1331_SETMULTIPLEX, 63,
40 SSD1331_SETMASTER, 0x8E,
41 SSD1331_POWERMODE, 0x0B,
42 SSD1331_SETPRECHARGE, 0x31,
43 SSD1331_CLOCKDIV, 0xF0,
44 SSD1331_PRECHARGEA, 0x64,
45 SSD1331_PRECHARGEB, 0x78,
46 SSD1331_PRECHARGELEVEL, 0x3A,
48 SSD1331_MASTERCURRENT, 0x09,
49 SSD1331_CONTRASTA, 0x91,
50 SSD1331_CONTRASTB, 0x50,
51 SSD1331_CONTRASTC, 0x7D,
55 static uint8_t s_column;
56 static uint8_t s_page;
57 static uint16_t s_color = 0xFF;
59 static void ssd1331_setBlock(uint8_t x, uint8_t y, uint8_t w)
74 static void ssd1331_nextPage(
void)
77 ssd1331_setBlock(s_column,s_page+1,0);
81 static void ssd1331_sendPixels(uint8_t data)
83 for (uint8_t i=8; i>0; i--)
115 for( uint8_t i=0; i<
sizeof(s_oled96x64_initData); i++)
125 pinMode(rstPin, OUTPUT);
126 digitalWrite(rstPin, HIGH);
130 digitalWrite(rstPin, LOW);
132 digitalWrite(rstPin, HIGH);
void ssd1331_96x64_init()
Inits 96x64 RGB OLED display (based on SSD1331 controller).
void(* ssd1306_sendByte)(uint8_t data)
void ssd1331_96x64_spi_init(int8_t rstPin, int8_t cesPin, int8_t dcPin)
Inits 96x64 RGB OLED display over spi (based on SSD1331 controller).
void ssd1331_setColor(uint16_t color)
Sets default color, generated by RGB_COLOR8 macros.
void ssd1306_sendCommand(uint8_t command)
void(* ssd1306_dataStart)(void)
#define RGB_COLOR8(r, g, b)
void(* ssd1306_endTransmission)(void)
void ssd1331_setRgbColor(uint8_t r, uint8_t g, uint8_t b)
Sets default color.
void(* ssd1306_commandStart)(void)
void(* ssd1306_setRamBlock)(uint8_t x, uint8_t y, uint8_t w)
void(* ssd1306_nextRamPage)(void)
void(* ssd1306_sendPixels)(uint8_t data)
void ssd1306_spiInit(int8_t cesPin, int8_t dcPin)