Syscalls: Use RTC sub second for more accurate time.
Signed-off-by: Yilin Sun <imi415@imi.moe>
This commit is contained in:
parent
014fe762ef
commit
b601b8a036
|
@ -140,6 +140,9 @@ static int app_rtc_time_init(void) {
|
|||
RTC_EnableTimer(RTC, true);
|
||||
RTC_EnableWakeupTimer(RTC, true);
|
||||
|
||||
/* Enable sub second counter */
|
||||
RTC->CTRL |= RTC_CTRL_RTC_SUBSEC_ENA_MASK;
|
||||
|
||||
CLOCK_SetRtc1hzClkDiv(32768U);
|
||||
|
||||
uint32_t rtc_sec = RTC_GetSecondsTimerCount(RTC);
|
||||
|
@ -273,7 +276,7 @@ int _fstat(int file, struct stat *st) {
|
|||
|
||||
int _gettimeofday(struct timeval *ptimeval, void *ptimezone) {
|
||||
ptimeval->tv_sec = APP_TIME_RTC_OFFSET_EPOCH + RTC_GetSecondsTimerCount(RTC);
|
||||
ptimeval->tv_usec = 0ULL;
|
||||
ptimeval->tv_usec = RTC->SUBSEC * 1000000 / 32768;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue