aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/datetime
diff options
context:
space:
mode:
authorRiku Isokoski <riksu9000@gmail.com>2023-02-24 07:38:16 +0200
committerRiku Isokoski <riksu9000@gmail.com>2023-02-25 17:22:25 +0200
commitb63bb798acd9bc40adda78774e1c433ef21995a5 (patch)
tree6eb225eb665668b3d7c4b048fe38c91b8e6f72d6 /src/components/datetime
parenteccea5ab9f43eea3c3ac6dbfb7e03dd81578191c (diff)
DateTimeController: Remove SetTime tick parameter
The systick doesn't need to be updated when setting time. Also removed unused nrf_rtc.h includes.
Diffstat (limited to 'src/components/datetime')
-rw-r--r--src/components/datetime/DateTimeController.cpp7
-rw-r--r--src/components/datetime/DateTimeController.h2
2 files changed, 4 insertions, 5 deletions
diff --git a/src/components/datetime/DateTimeController.cpp b/src/components/datetime/DateTimeController.cpp
index b744fbb2..7ebb7b19 100644
--- a/src/components/datetime/DateTimeController.cpp
+++ b/src/components/datetime/DateTimeController.cpp
@@ -20,7 +20,7 @@ void DateTime::SetCurrentTime(std::chrono::time_point<std::chrono::system_clock,
UpdateTime(previousSystickCounter); // Update internal state without updating the time
}
-void DateTime::SetTime(uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second, uint32_t systickCounter) {
+void DateTime::SetTime(uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) {
std::tm tm = {
/* .tm_sec = */ second,
/* .tm_min = */ minute,
@@ -35,9 +35,8 @@ void DateTime::SetTime(uint16_t year, uint8_t month, uint8_t day, uint8_t hour,
NRF_LOG_INFO("%d %d %d ", day, month, year);
NRF_LOG_INFO("%d %d %d ", hour, minute, second);
- previousSystickCounter = systickCounter;
- UpdateTime(systickCounter);
+ UpdateTime(previousSystickCounter);
NRF_LOG_INFO("* %d %d %d ", this->hour, this->minute, this->second);
NRF_LOG_INFO("* %d %d %d ", this->day, this->month, this->year);
@@ -63,7 +62,7 @@ void DateTime::UpdateTime(uint32_t systickCounter) {
* 1000 ms = 1024 ticks
*/
auto correctedDelta = systickDelta / 1024;
- auto rest = (systickDelta - (correctedDelta * 1024));
+ auto rest = systickDelta % 1024;
if (systickCounter >= rest) {
previousSystickCounter = systickCounter - rest;
} else {
diff --git a/src/components/datetime/DateTimeController.h b/src/components/datetime/DateTimeController.h
index 74ccf4da..b68d18ef 100644
--- a/src/components/datetime/DateTimeController.h
+++ b/src/components/datetime/DateTimeController.h
@@ -31,7 +31,7 @@ namespace Pinetime {
December
};
- void SetTime(uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second, uint32_t systickCounter);
+ void SetTime(uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second);
/*
* setter corresponding to the BLE Set Local Time characteristic.