Optimization display refresh for a new page

This commit is contained in:
norbert-walter 2022-03-10 08:45:30 +01:00
parent f8555082de
commit 04287cd7f7
1 changed files with 8 additions and 6 deletions

View File

@ -438,7 +438,7 @@ void OBP60Task(GwApi *api){
long starttime1 = millis(); // Full display refresh for the first 5 min (more often as normal) long starttime1 = millis(); // Full display refresh for the first 5 min (more often as normal)
long starttime2 = millis(); // Full display refresh after 5 min long starttime2 = millis(); // Full display refresh after 5 min
long starttime3 = millis(); // Display update all 1s long starttime3 = millis(); // Display update all 1s
long starttime4 = millis(); // Delayed display update after 5s when select a new page long starttime4 = millis(); // Delayed display update after 2s when select a new page
while (true){ while (true){
Timer1.update(); // Update for Timer1 Timer1.update(); // Update for Timer1
@ -497,14 +497,16 @@ void OBP60Task(GwApi *api){
if (pageNumber < 0) if (pageNumber < 0)
pageNumber = numPages - 1; pageNumber = numPages - 1;
} }
/*
// #9 or #10 Refresh display befor start a new page if reshresh is enabled // #9 or #10 Refresh display befor start a new page if reshresh is enabled
if(refreshmode == true && (keyboardMessage == 9 || keyboardMessage == 10)){ if(refreshmode == true && (keyboardMessage == 9 || keyboardMessage == 10)){
display.fillRect(0, 0, GxEPD_WIDTH, GxEPD_HEIGHT, GxEPD_WHITE); // Draw white sreen display.fillRect(0, 0, GxEPD_WIDTH, GxEPD_HEIGHT, GxEPD_WHITE); // Draw white sreen
display.updateWindow(0, 0, GxEPD_WIDTH, GxEPD_HEIGHT, true); // Needs partial update before full update to refresh the frame buffer display.updateWindow(0, 0, GxEPD_WIDTH, GxEPD_HEIGHT, true); // Needs partial update before full update to refresh the frame buffer
display.update(); // Full update display.update(); // Full update
} }
// #9 or #10 Refresh display after a new page after 5s waiting time and if refresh is disabled */
if(refreshmode == false && (keyboardMessage == 9 || keyboardMessage == 10)){ // #9 or #10 Refresh display after a new page after 2s waiting time and if refresh is disabled
if(refreshmode == true && (keyboardMessage == 9 || keyboardMessage == 10)){
starttime4 = millis(); starttime4 = millis();
delayedDisplayUpdate = true; delayedDisplayUpdate = true;
} }
@ -512,8 +514,8 @@ void OBP60Task(GwApi *api){
LOG_DEBUG(GwLog::LOG,"set pagenumber to %d",pageNumber); LOG_DEBUG(GwLog::LOG,"set pagenumber to %d",pageNumber);
} }
// Full display update afer a new selected page and 5s wait time // Full display update afer a new selected page and 2s wait time
if(millis() > starttime4 + 5000 && delayedDisplayUpdate == true){ if(millis() > starttime4 + 2000 && delayedDisplayUpdate == true){
display.update(); // Full update display.update(); // Full update
delayedDisplayUpdate = false; delayedDisplayUpdate = false;
} }