Progress on the menu
- Debounced the interlocks - Created a specified screen for pre-compliance tests ADCs must be averaged menu handling of screens is not OK destructing tasks is not OK git-svn-id: https://svn.vbchaos.nl/svn/hsb/trunk@257 05563f52-14a8-4384-a975-3d1654cca0fa
This commit is contained in:
@@ -124,8 +124,10 @@ void Display_destruct(struct Display* self)
|
||||
|
||||
ErrorStatus Display_clearScreen(struct Display* self)
|
||||
{
|
||||
ErrorStatus returnValue = SUCCESS;
|
||||
returnValue = DisplayDevice_clear(self->displayDevice);
|
||||
Display_clearShadow(self);
|
||||
return DisplayDevice_clear(self->displayDevice);
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
|
||||
@@ -284,9 +286,13 @@ inline static void Display_clearShadow(struct Display* self)
|
||||
{
|
||||
for (colCounter = 0; colCounter < self->displayDevice->parameters.numberOfColumns; colCounter++)
|
||||
{
|
||||
buffer[colCounter] = 0x20;
|
||||
// All characters of the display shadow are set to BLANK, but the isUpdated flag is kept at FALSE
|
||||
// this is, because the display itself has already received a command to clear its content. So
|
||||
// blanking the shadow without setting isUpdated to TRUE is only an action to update the
|
||||
// shadow to the actual situation on the screen
|
||||
self->displayShadow[rowCounter][colCounter].character = 0x20;
|
||||
self->displayShadow[rowCounter][colCounter].isUpdated = false;
|
||||
}
|
||||
Display_write(self, buffer, self->displayDevice->parameters.numberOfColumns, rowCounter + 1, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -395,10 +401,7 @@ static void DisplayTask(void* parameters)
|
||||
self->refreshFeedCounter = 0;
|
||||
Display_characterUpdateAll(self);
|
||||
}
|
||||
|
||||
// vTaskDelay(10);
|
||||
}
|
||||
|
||||
vTaskDelay(10);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user