STM32L4xx_HAL_Driver  1.14.0

Functions

__STATIC_INLINE void LL_RTC_DATE_SetYear (RTC_TypeDef *RTCx, uint32_t Year)
 Set Year in BCD format. More...
 
__STATIC_INLINE uint32_t LL_RTC_DATE_GetYear (RTC_TypeDef *RTCx)
 Get Year in BCD format. More...
 
__STATIC_INLINE void LL_RTC_DATE_SetWeekDay (RTC_TypeDef *RTCx, uint32_t WeekDay)
 Set Week day RTC_DR WDU LL_RTC_DATE_SetWeekDay. More...
 
__STATIC_INLINE uint32_t LL_RTC_DATE_GetWeekDay (RTC_TypeDef *RTCx)
 Get Week day. More...
 
__STATIC_INLINE void LL_RTC_DATE_SetMonth (RTC_TypeDef *RTCx, uint32_t Month)
 Set Month in BCD format. More...
 
__STATIC_INLINE uint32_t LL_RTC_DATE_GetMonth (RTC_TypeDef *RTCx)
 Get Month in BCD format. More...
 
__STATIC_INLINE void LL_RTC_DATE_SetDay (RTC_TypeDef *RTCx, uint32_t Day)
 Set Day in BCD format. More...
 
__STATIC_INLINE uint32_t LL_RTC_DATE_GetDay (RTC_TypeDef *RTCx)
 Get Day in BCD format. More...
 
__STATIC_INLINE void LL_RTC_DATE_Config (RTC_TypeDef *RTCx, uint32_t WeekDay, uint32_t Day, uint32_t Month, uint32_t Year)
 Set date (WeekDay, Day, Month and Year) in BCD format RTC_DR WDU LL_RTC_DATE_Config
RTC_DR MT LL_RTC_DATE_Config
RTC_DR MU LL_RTC_DATE_Config
RTC_DR DT LL_RTC_DATE_Config
RTC_DR DU LL_RTC_DATE_Config
RTC_DR YT LL_RTC_DATE_Config
RTC_DR YU LL_RTC_DATE_Config. More...
 
__STATIC_INLINE uint32_t LL_RTC_DATE_Get (RTC_TypeDef *RTCx)
 Get date (WeekDay, Day, Month and Year) in BCD format. More...
 

Detailed Description

Function Documentation

◆ LL_RTC_DATE_Config()

__STATIC_INLINE void LL_RTC_DATE_Config ( RTC_TypeDef *  RTCx,
uint32_t  WeekDay,
uint32_t  Day,
uint32_t  Month,
uint32_t  Year 
)

Set date (WeekDay, Day, Month and Year) in BCD format RTC_DR WDU LL_RTC_DATE_Config
RTC_DR MT LL_RTC_DATE_Config
RTC_DR MU LL_RTC_DATE_Config
RTC_DR DT LL_RTC_DATE_Config
RTC_DR DU LL_RTC_DATE_Config
RTC_DR YT LL_RTC_DATE_Config
RTC_DR YU LL_RTC_DATE_Config.

Parameters
RTCxRTC Instance
WeekDayThis parameter can be one of the following values:
  • LL_RTC_WEEKDAY_MONDAY
  • LL_RTC_WEEKDAY_TUESDAY
  • LL_RTC_WEEKDAY_WEDNESDAY
  • LL_RTC_WEEKDAY_THURSDAY
  • LL_RTC_WEEKDAY_FRIDAY
  • LL_RTC_WEEKDAY_SATURDAY
  • LL_RTC_WEEKDAY_SUNDAY
DayValue between Min_Data=0x01 and Max_Data=0x31
MonthThis parameter can be one of the following values:
  • LL_RTC_MONTH_JANUARY
  • LL_RTC_MONTH_FEBRUARY
  • LL_RTC_MONTH_MARCH
  • LL_RTC_MONTH_APRIL
  • LL_RTC_MONTH_MAY
  • LL_RTC_MONTH_JUNE
  • LL_RTC_MONTH_JULY
  • LL_RTC_MONTH_AUGUST
  • LL_RTC_MONTH_SEPTEMBER
  • LL_RTC_MONTH_OCTOBER
  • LL_RTC_MONTH_NOVEMBER
  • LL_RTC_MONTH_DECEMBER
YearValue between Min_Data=0x00 and Max_Data=0x99
Return values
None

Definition at line 1837 of file stm32l4xx_ll_rtc.h.

1838 {
1839  register uint32_t temp = 0U;
1840 
1841  temp = (WeekDay << RTC_DR_WDU_Pos) | \
1842  (((Year & 0xF0U) << (RTC_DR_YT_Pos - 4U)) | ((Year & 0x0FU) << RTC_DR_YU_Pos)) | \
1843  (((Month & 0xF0U) << (RTC_DR_MT_Pos - 4U)) | ((Month & 0x0FU) << RTC_DR_MU_Pos)) | \
1844  (((Day & 0xF0U) << (RTC_DR_DT_Pos - 4U)) | ((Day & 0x0FU) << RTC_DR_DU_Pos));
1845 
1846  MODIFY_REG(RTCx->DR, (RTC_DR_WDU | RTC_DR_MT | RTC_DR_MU | RTC_DR_DT | RTC_DR_DU | RTC_DR_YT | RTC_DR_YU), temp);
1847 }
MODIFY_REG(hrtc->Instance->CR, RTC_CR_WUCKSEL,(uint32_t) WakeUpClock)

◆ LL_RTC_DATE_Get()

__STATIC_INLINE uint32_t LL_RTC_DATE_Get ( RTC_TypeDef *  RTCx)

Get date (WeekDay, Day, Month and Year) in BCD format.

Note
if shadow mode is disabled (BYPSHAD=0), need to check if RSF flag is set before reading this bit
helper macros __LL_RTC_GET_WEEKDAY, __LL_RTC_GET_YEAR, __LL_RTC_GET_MONTH, and __LL_RTC_GET_DAY are available to get independently each parameter. RTC_DR WDU LL_RTC_DATE_Get
RTC_DR MT LL_RTC_DATE_Get
RTC_DR MU LL_RTC_DATE_Get
RTC_DR DT LL_RTC_DATE_Get
RTC_DR DU LL_RTC_DATE_Get
RTC_DR YT LL_RTC_DATE_Get
RTC_DR YU LL_RTC_DATE_Get
Parameters
RTCxRTC Instance
Return values
Combinationof WeekDay, Day, Month and Year (Format: 0xWWDDMMYY).

Definition at line 1865 of file stm32l4xx_ll_rtc.h.

1866 {
1867  register uint32_t temp = 0U;
1868 
1869  temp = READ_BIT(RTCx->DR, (RTC_DR_WDU | RTC_DR_MT | RTC_DR_MU | RTC_DR_DT | RTC_DR_DU | RTC_DR_YT | RTC_DR_YU));
1870  return (uint32_t)((((temp & RTC_DR_WDU) >> RTC_DR_WDU_Pos) << RTC_OFFSET_WEEKDAY) | \
1871  (((((temp & RTC_DR_DT) >> RTC_DR_DT_Pos) << 4U) | ((temp & RTC_DR_DU) >> RTC_DR_DU_Pos)) << RTC_OFFSET_DAY) | \
1872  (((((temp & RTC_DR_MT) >> RTC_DR_MT_Pos) << 4U) | ((temp & RTC_DR_MU) >> RTC_DR_MU_Pos)) << RTC_OFFSET_MONTH) | \
1873  ((((temp & RTC_DR_YT) >> RTC_DR_YT_Pos) << 4U) | ((temp & RTC_DR_YU) >> RTC_DR_YU_Pos)));
1874 }

◆ LL_RTC_DATE_GetDay()

__STATIC_INLINE uint32_t LL_RTC_DATE_GetDay ( RTC_TypeDef *  RTCx)

Get Day in BCD format.

Note
if shadow mode is disabled (BYPSHAD=0), need to check if RSF flag is set before reading this bit
helper macro __LL_RTC_CONVERT_BCD2BIN is available to convert Day from BCD to Binary format RTC_DR DT LL_RTC_DATE_GetDay
RTC_DR DU LL_RTC_DATE_GetDay
Parameters
RTCxRTC Instance
Return values
Valuebetween Min_Data=0x01 and Max_Data=0x31

Definition at line 1797 of file stm32l4xx_ll_rtc.h.

1798 {
1799  return ((READ_BIT(RTCx->DR, (RTC_DR_DT | RTC_DR_DU))) >> RTC_DR_DU_Pos);
1800 }

◆ LL_RTC_DATE_GetMonth()

__STATIC_INLINE uint32_t LL_RTC_DATE_GetMonth ( RTC_TypeDef *  RTCx)

Get Month in BCD format.

Note
if shadow mode is disabled (BYPSHAD=0), need to check if RSF flag is set before reading this bit
helper macro __LL_RTC_CONVERT_BCD2BIN is available to convert Month from BCD to Binary format RTC_DR MT LL_RTC_DATE_GetMonth
RTC_DR MU LL_RTC_DATE_GetMonth
Parameters
RTCxRTC Instance
Return values
Returnedvalue can be one of the following values:
  • LL_RTC_MONTH_JANUARY
  • LL_RTC_MONTH_FEBRUARY
  • LL_RTC_MONTH_MARCH
  • LL_RTC_MONTH_APRIL
  • LL_RTC_MONTH_MAY
  • LL_RTC_MONTH_JUNE
  • LL_RTC_MONTH_JULY
  • LL_RTC_MONTH_AUGUST
  • LL_RTC_MONTH_SEPTEMBER
  • LL_RTC_MONTH_OCTOBER
  • LL_RTC_MONTH_NOVEMBER
  • LL_RTC_MONTH_DECEMBER

Definition at line 1767 of file stm32l4xx_ll_rtc.h.

1768 {
1769  return ((READ_BIT(RTCx->DR, (RTC_DR_MT | RTC_DR_MU))) >> RTC_DR_MU_Pos);
1770 }

◆ LL_RTC_DATE_GetWeekDay()

__STATIC_INLINE uint32_t LL_RTC_DATE_GetWeekDay ( RTC_TypeDef *  RTCx)

Get Week day.

Note
if shadow mode is disabled (BYPSHAD=0), need to check if RSF flag is set before reading this bit RTC_DR WDU LL_RTC_DATE_GetWeekDay
Parameters
RTCxRTC Instance
Return values
Returnedvalue can be one of the following values:
  • LL_RTC_WEEKDAY_MONDAY
  • LL_RTC_WEEKDAY_TUESDAY
  • LL_RTC_WEEKDAY_WEDNESDAY
  • LL_RTC_WEEKDAY_THURSDAY
  • LL_RTC_WEEKDAY_FRIDAY
  • LL_RTC_WEEKDAY_SATURDAY
  • LL_RTC_WEEKDAY_SUNDAY

Definition at line 1713 of file stm32l4xx_ll_rtc.h.

1714 {
1715  return (uint32_t)(READ_BIT(RTCx->DR, RTC_DR_WDU) >> RTC_DR_WDU_Pos);
1716 }

◆ LL_RTC_DATE_GetYear()

__STATIC_INLINE uint32_t LL_RTC_DATE_GetYear ( RTC_TypeDef *  RTCx)

Get Year in BCD format.

Note
if shadow mode is disabled (BYPSHAD=0), need to check if RSF flag is set before reading this bit
helper macro __LL_RTC_CONVERT_BCD2BIN is available to convert Year from BCD to Binary format RTC_DR YT LL_RTC_DATE_GetYear
RTC_DR YU LL_RTC_DATE_GetYear
Parameters
RTCxRTC Instance
Return values
Valuebetween Min_Data=0x00 and Max_Data=0x99

Definition at line 1674 of file stm32l4xx_ll_rtc.h.

1675 {
1676  return ((READ_BIT(RTCx->DR, (RTC_DR_YT | RTC_DR_YU))) >> RTC_DR_YU_Pos);
1677 }

◆ LL_RTC_DATE_SetDay()

__STATIC_INLINE void LL_RTC_DATE_SetDay ( RTC_TypeDef *  RTCx,
uint32_t  Day 
)

Set Day in BCD format.

Note
helper macro __LL_RTC_CONVERT_BIN2BCD is available to convert Day from binary to BCD format RTC_DR DT LL_RTC_DATE_SetDay
RTC_DR DU LL_RTC_DATE_SetDay
Parameters
RTCxRTC Instance
DayValue between Min_Data=0x01 and Max_Data=0x31
Return values
None

Definition at line 1781 of file stm32l4xx_ll_rtc.h.

1782 {
1783  MODIFY_REG(RTCx->DR, (RTC_DR_DT | RTC_DR_DU),
1784  (((Day & 0xF0U) << (RTC_DR_DT_Pos - 4U)) | ((Day & 0x0FU) << RTC_DR_DU_Pos)));
1785 }
MODIFY_REG(hrtc->Instance->CR, RTC_CR_WUCKSEL,(uint32_t) WakeUpClock)

◆ LL_RTC_DATE_SetMonth()

__STATIC_INLINE void LL_RTC_DATE_SetMonth ( RTC_TypeDef *  RTCx,
uint32_t  Month 
)

Set Month in BCD format.

Note
helper macro __LL_RTC_CONVERT_BIN2BCD is available to convert Month from binary to BCD format RTC_DR MT LL_RTC_DATE_SetMonth
RTC_DR MU LL_RTC_DATE_SetMonth
Parameters
RTCxRTC Instance
MonthThis parameter can be one of the following values:
  • LL_RTC_MONTH_JANUARY
  • LL_RTC_MONTH_FEBRUARY
  • LL_RTC_MONTH_MARCH
  • LL_RTC_MONTH_APRIL
  • LL_RTC_MONTH_MAY
  • LL_RTC_MONTH_JUNE
  • LL_RTC_MONTH_JULY
  • LL_RTC_MONTH_AUGUST
  • LL_RTC_MONTH_SEPTEMBER
  • LL_RTC_MONTH_OCTOBER
  • LL_RTC_MONTH_NOVEMBER
  • LL_RTC_MONTH_DECEMBER
Return values
None

Definition at line 1739 of file stm32l4xx_ll_rtc.h.

1740 {
1741  MODIFY_REG(RTCx->DR, (RTC_DR_MT | RTC_DR_MU),
1742  (((Month & 0xF0U) << (RTC_DR_MT_Pos - 4U)) | ((Month & 0x0FU) << RTC_DR_MU_Pos)));
1743 }
MODIFY_REG(hrtc->Instance->CR, RTC_CR_WUCKSEL,(uint32_t) WakeUpClock)

◆ LL_RTC_DATE_SetWeekDay()

__STATIC_INLINE void LL_RTC_DATE_SetWeekDay ( RTC_TypeDef *  RTCx,
uint32_t  WeekDay 
)

Set Week day RTC_DR WDU LL_RTC_DATE_SetWeekDay.

Parameters
RTCxRTC Instance
WeekDayThis parameter can be one of the following values:
  • LL_RTC_WEEKDAY_MONDAY
  • LL_RTC_WEEKDAY_TUESDAY
  • LL_RTC_WEEKDAY_WEDNESDAY
  • LL_RTC_WEEKDAY_THURSDAY
  • LL_RTC_WEEKDAY_FRIDAY
  • LL_RTC_WEEKDAY_SATURDAY
  • LL_RTC_WEEKDAY_SUNDAY
Return values
None

Definition at line 1693 of file stm32l4xx_ll_rtc.h.

1694 {
1695  MODIFY_REG(RTCx->DR, RTC_DR_WDU, WeekDay << RTC_DR_WDU_Pos);
1696 }
MODIFY_REG(hrtc->Instance->CR, RTC_CR_WUCKSEL,(uint32_t) WakeUpClock)

◆ LL_RTC_DATE_SetYear()

__STATIC_INLINE void LL_RTC_DATE_SetYear ( RTC_TypeDef *  RTCx,
uint32_t  Year 
)

Set Year in BCD format.

Note
helper macro __LL_RTC_CONVERT_BIN2BCD is available to convert Year from binary to BCD format RTC_DR YT LL_RTC_DATE_SetYear
RTC_DR YU LL_RTC_DATE_SetYear
Parameters
RTCxRTC Instance
YearValue between Min_Data=0x00 and Max_Data=0x99
Return values
None

Definition at line 1658 of file stm32l4xx_ll_rtc.h.

1659 {
1660  MODIFY_REG(RTCx->DR, (RTC_DR_YT | RTC_DR_YU),
1661  (((Year & 0xF0U) << (RTC_DR_YT_Pos - 4U)) | ((Year & 0x0FU) << RTC_DR_YU_Pos)));
1662 }
MODIFY_REG(hrtc->Instance->CR, RTC_CR_WUCKSEL,(uint32_t) WakeUpClock)