Fixed displaying last displayed time for ~100ms on wake

This commit is contained in:
Samuel Archibald 2020-11-02 21:14:28 -05:00
parent 0e97db1c30
commit 10c5260187
2 changed files with 5 additions and 4 deletions

1
.gitignore vendored
View File

@ -5,6 +5,7 @@ CMakeFiles/
**/CMakeCache.txt
cmake_install.cmake
Makefile
build/
# Resulting binary files
*.a

View File

@ -105,8 +105,12 @@ void SystemTask::Work() {
#pragma clang diagnostic push
#pragma ide diagnostic ignored "EndlessLoop"
while(true) {
uint8_t msg;
if (xQueueReceive(systemTasksMsgQueue, &msg, isSleeping ? 2500 : 1000)) {
uint32_t systick_counter = nrf_rtc_counter_get(portNRF_RTC_REG);
dateTimeController.UpdateTime(systick_counter);
batteryController.Update();
Messages message = static_cast<Messages >(msg);
switch(message) {
case Messages::GoToRunning:
@ -190,10 +194,6 @@ void SystemTask::Work() {
}
}
uint32_t systick_counter = nrf_rtc_counter_get(portNRF_RTC_REG);
dateTimeController.UpdateTime(systick_counter);
batteryController.Update();
monitor.Process();
if(!nrf_gpio_pin_read(pinButton))