Before git init
This commit is contained in:
45
NTP/Core/Src/RTC.c
Normal file
45
NTP/Core/Src/RTC.c
Normal file
@@ -0,0 +1,45 @@
|
||||
#include "RTC.h"
|
||||
|
||||
extern RTC_HandleTypeDef hrtc;
|
||||
|
||||
void Set_Time (RTC_TimeTypeDef sTime, RTC_DateTypeDef sDate)
|
||||
{
|
||||
if (HAL_RTC_SetTime(&hrtc, &sTime, RTC_FORMAT_BIN) != HAL_OK)
|
||||
{
|
||||
debugErrln("%s:%d Error putting the time in the RTC", __FILE__, __LINE__);
|
||||
}
|
||||
|
||||
if (HAL_RTC_SetDate(&hrtc, &sDate, RTC_FORMAT_BIN) != HAL_OK)
|
||||
{
|
||||
debugErrln("%s:%d Error putting the date in the RTC", __FILE__, __LINE__);
|
||||
}
|
||||
HAL_RTCEx_BKUPWrite(&hrtc, RTC_BKP_DR1, 0x32F2); // backup register just a random value
|
||||
}
|
||||
|
||||
void Get_Time(RTC_DateTypeDef* gDate, RTC_TimeTypeDef* gTime)
|
||||
{
|
||||
/* Get the RTC current Time */
|
||||
HAL_RTC_GetTime(&hrtc, gTime, RTC_FORMAT_BIN);
|
||||
/* Get the RTC current Date */
|
||||
HAL_RTC_GetDate(&hrtc, gDate, RTC_FORMAT_BIN);
|
||||
}
|
||||
|
||||
void Ts_To_RTC(ts* tm, RTC_TimeTypeDef* sTime, RTC_DateTypeDef* sDate)
|
||||
{
|
||||
sTime->Hours = tm->Hour;
|
||||
sTime->Minutes = tm->Minute;
|
||||
sTime->Seconds = tm->Second;
|
||||
sDate->Date = tm->Day;
|
||||
sDate->Month = tm->Month;
|
||||
sDate->Year = tm->Year;
|
||||
}
|
||||
|
||||
void RTC_To_Ts(RTC_TimeTypeDef* sTime, RTC_DateTypeDef* sDate, ts* tm)
|
||||
{
|
||||
tm->Hour = sTime->Hours;
|
||||
tm->Minute = sTime->Minutes;
|
||||
tm->Second = sTime->Seconds;
|
||||
tm->Day = sDate->Date;
|
||||
tm->Month = sDate->Month;
|
||||
tm->Year = sDate->Year;
|
||||
}
|
||||
Reference in New Issue
Block a user