mirror of
https://github.com/lumapu/ahoy.git
synced 2025-05-22 05:16:11 +02:00
kleine Optimierungen
This commit is contained in:
parent
ce20d7c1b4
commit
0ff821aeac
5 changed files with 12 additions and 8 deletions
|
@ -23,6 +23,7 @@ class Display {
|
|||
mUtcTs = utcTs;
|
||||
mNewPayload = false;
|
||||
mLoopCnt = 0;
|
||||
mVersion = version;
|
||||
|
||||
if (mCfg->type == 0) {
|
||||
return;
|
||||
|
@ -46,12 +47,12 @@ class Display {
|
|||
DisplayMono.enableScreensaver = mCfg->pxShift;
|
||||
DisplayMono.contrast = mCfg->contrast;
|
||||
|
||||
DisplayMono.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data);
|
||||
DisplayMono.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data, mVersion);
|
||||
} else if (mCfg->type > 10) {
|
||||
DisplayEPaper.displayRotation = mCfg->rot;
|
||||
counterEPaper = 0;
|
||||
|
||||
DisplayEPaper.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data);
|
||||
DisplayEPaper.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data, mVersion);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -116,6 +117,7 @@ class Display {
|
|||
bool mNewPayload;
|
||||
uint8_t mLoopCnt;
|
||||
uint32_t *mUtcTs;
|
||||
const char *mVersion;
|
||||
display_t *mCfg;
|
||||
HMSYSTEM *mSys;
|
||||
uint16_t period = 10000; // Achtung, max 65535
|
||||
|
|
|
@ -63,7 +63,7 @@ void DisplayMonoClass::printText(const char* text, uint8_t line, uint8_t dispX =
|
|||
_display->drawStr(dispX, mLineOffsets[line], text);
|
||||
}
|
||||
|
||||
void DisplayMonoClass::init(uint8_t _type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI) {
|
||||
void DisplayMonoClass::init(uint8_t _type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char* version) {
|
||||
if (0 < _type < 4) {
|
||||
auto constructor = mono_types[_type];
|
||||
_display = constructor(_RST, _SCK, _MOSI, _CS, _DC);
|
||||
|
@ -77,7 +77,9 @@ void DisplayMonoClass::init(uint8_t _type, uint8_t _CS, uint8_t _DC, uint8_t _RS
|
|||
if (contrast < 255) {
|
||||
_display->setContrast(contrast);
|
||||
}
|
||||
printText("OpenDTU!", 0);
|
||||
printText("AHOY!", 0, 35);
|
||||
printText("ahoydtu.de", 2, 20);
|
||||
printText(version, 3, 46);
|
||||
_display->sendBuffer();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ class DisplayMonoClass {
|
|||
DisplayMonoClass();
|
||||
~DisplayMonoClass();
|
||||
|
||||
void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI);
|
||||
void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char* version);
|
||||
|
||||
void loop(float totalPower, float totalYieldDay, float totalYieldTotal, uint8_t isprod);
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ static const uint32_t spiClk = 4000000; // 4 MHz
|
|||
SPIClass hspi(HSPI);
|
||||
#endif
|
||||
|
||||
std::map<uint8_t, std::function<GxEPD2_GFX*(uint8_t, uint8_t, uint8_t, uint8_t)>> _ePaperTypes = {
|
||||
std::map<uint8_t, std::function<GxEPD2_GFX *(uint8_t, uint8_t, uint8_t, uint8_t)>> _ePaperTypes = {
|
||||
// DEPG0150BN 200x200, SSD1681, TTGO T5 V2.4.1
|
||||
{11, [](uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY) { return new GxEPD2_BW<GxEPD2_150_BN, GxEPD2_150_BN::HEIGHT>(GxEPD2_150_BN(_CS, _DC, _RST, _BUSY)); }},
|
||||
// GDEW027C44 2.7 " b/w/r 176x264, IL91874
|
||||
|
@ -24,7 +24,7 @@ DisplayEPaperClass::~DisplayEPaperClass() {
|
|||
delete _display;
|
||||
}
|
||||
//***************************************************************************
|
||||
void DisplayEPaperClass::init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI) {
|
||||
void DisplayEPaperClass::init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char *version) {
|
||||
if (type > 3) {
|
||||
Serial.begin(115200);
|
||||
auto constructor = _ePaperTypes[type];
|
||||
|
|
|
@ -31,7 +31,7 @@ class DisplayEPaperClass {
|
|||
DisplayEPaperClass();
|
||||
~DisplayEPaperClass();
|
||||
void fullRefresh();
|
||||
void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI);
|
||||
void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char* version);
|
||||
void loop(float totalPower, float totalYieldDay, float totalYieldTotal, uint8_t isprod);
|
||||
|
||||
uint8_t displayRotation = 2;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue