Feature: Add support for ST7567 GM12864I-59N Display
This commit is contained in:
parent
a5cc0a424f
commit
4e669d8932
@ -20,6 +20,7 @@ enum DisplayType_t {
|
|||||||
SSD1306,
|
SSD1306,
|
||||||
SH1106,
|
SH1106,
|
||||||
SSD1309,
|
SSD1309,
|
||||||
|
ST7567_GM12864I_59N,
|
||||||
DisplayType_Max,
|
DisplayType_Max,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -13,6 +13,7 @@ std::map<DisplayType_t, std::function<U8G2*(uint8_t, uint8_t, uint8_t, uint8_t)>
|
|||||||
{ DisplayType_t::SSD1306, [](uint8_t reset, uint8_t clock, uint8_t data, uint8_t cs) { return new U8G2_SSD1306_128X64_NONAME_F_HW_I2C(U8G2_R0, reset, clock, data); } },
|
{ DisplayType_t::SSD1306, [](uint8_t reset, uint8_t clock, uint8_t data, uint8_t cs) { return new U8G2_SSD1306_128X64_NONAME_F_HW_I2C(U8G2_R0, reset, clock, data); } },
|
||||||
{ DisplayType_t::SH1106, [](uint8_t reset, uint8_t clock, uint8_t data, uint8_t cs) { return new U8G2_SH1106_128X64_NONAME_F_HW_I2C(U8G2_R0, reset, clock, data); } },
|
{ DisplayType_t::SH1106, [](uint8_t reset, uint8_t clock, uint8_t data, uint8_t cs) { return new U8G2_SH1106_128X64_NONAME_F_HW_I2C(U8G2_R0, reset, clock, data); } },
|
||||||
{ DisplayType_t::SSD1309, [](uint8_t reset, uint8_t clock, uint8_t data, uint8_t cs) { return new U8G2_SSD1309_128X64_NONAME0_F_HW_I2C(U8G2_R0, reset, clock, data); } },
|
{ DisplayType_t::SSD1309, [](uint8_t reset, uint8_t clock, uint8_t data, uint8_t cs) { return new U8G2_SSD1309_128X64_NONAME0_F_HW_I2C(U8G2_R0, reset, clock, data); } },
|
||||||
|
{ DisplayType_t::ST7567_GM12864I_59N, [](uint8_t reset, uint8_t clock, uint8_t data, uint8_t cs) { return new U8G2_ST7567_ENH_DG128064I_F_HW_I2C(U8G2_R0, reset, clock, data); } },
|
||||||
};
|
};
|
||||||
|
|
||||||
// Language defintion, respect order in languages[] and translation lists
|
// Language defintion, respect order in languages[] and translation lists
|
||||||
@ -50,6 +51,9 @@ void DisplayGraphicClass::init(Scheduler& scheduler, const DisplayType_t type, c
|
|||||||
if (isValidDisplay()) {
|
if (isValidDisplay()) {
|
||||||
auto constructor = display_types[_display_type];
|
auto constructor = display_types[_display_type];
|
||||||
_display = constructor(reset, clk, data, cs);
|
_display = constructor(reset, clk, data, cs);
|
||||||
|
if (_display_type == DisplayType_t::ST7567_GM12864I_59N) {
|
||||||
|
_display->setI2CAddress(0x3F << 1);
|
||||||
|
}
|
||||||
_display->begin();
|
_display->begin();
|
||||||
setContrast(DISPLAY_CONTRAST);
|
setContrast(DISPLAY_CONTRAST);
|
||||||
setStatus(true);
|
setStatus(true);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user