Fork of the official mbed C/C SDK provides the software platform and libraries to build your applications for RenBED.

Dependents:   1-RenBuggyTimed RenBED_RGB RenBED_RGB_PWM RenBED_RGB

Fork of mbed by mbed official

Committer:
elijahorr
Date:
Thu Apr 14 07:28:54 2016 +0000
Revision:
121:672067c3ada4
Parent:
112:6f327212ef96
.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 112:6f327212ef96 1 /**
Kojto 112:6f327212ef96 2 ******************************************************************************
Kojto 112:6f327212ef96 3 * @file stm32l1xx_hal_rtc.h
Kojto 112:6f327212ef96 4 * @author MCD Application Team
Kojto 112:6f327212ef96 5 * @version V1.0.0
Kojto 112:6f327212ef96 6 * @date 5-September-2014
Kojto 112:6f327212ef96 7 * @brief Header file of RTC HAL module.
Kojto 112:6f327212ef96 8 ******************************************************************************
Kojto 112:6f327212ef96 9 * @attention
Kojto 112:6f327212ef96 10 *
Kojto 112:6f327212ef96 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
Kojto 112:6f327212ef96 12 *
Kojto 112:6f327212ef96 13 * Redistribution and use in source and binary forms, with or without modification,
Kojto 112:6f327212ef96 14 * are permitted provided that the following conditions are met:
Kojto 112:6f327212ef96 15 * 1. Redistributions of source code must retain the above copyright notice,
Kojto 112:6f327212ef96 16 * this list of conditions and the following disclaimer.
Kojto 112:6f327212ef96 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
Kojto 112:6f327212ef96 18 * this list of conditions and the following disclaimer in the documentation
Kojto 112:6f327212ef96 19 * and/or other materials provided with the distribution.
Kojto 112:6f327212ef96 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
Kojto 112:6f327212ef96 21 * may be used to endorse or promote products derived from this software
Kojto 112:6f327212ef96 22 * without specific prior written permission.
Kojto 112:6f327212ef96 23 *
Kojto 112:6f327212ef96 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Kojto 112:6f327212ef96 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Kojto 112:6f327212ef96 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
Kojto 112:6f327212ef96 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
Kojto 112:6f327212ef96 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Kojto 112:6f327212ef96 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
Kojto 112:6f327212ef96 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Kojto 112:6f327212ef96 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Kojto 112:6f327212ef96 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Kojto 112:6f327212ef96 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Kojto 112:6f327212ef96 34 *
Kojto 112:6f327212ef96 35 ******************************************************************************
Kojto 112:6f327212ef96 36 */
Kojto 112:6f327212ef96 37
Kojto 112:6f327212ef96 38 /* Define to prevent recursive inclusion -------------------------------------*/
Kojto 112:6f327212ef96 39 #ifndef __STM32L1xx_HAL_RTC_H
Kojto 112:6f327212ef96 40 #define __STM32L1xx_HAL_RTC_H
Kojto 112:6f327212ef96 41
Kojto 112:6f327212ef96 42 #ifdef __cplusplus
Kojto 112:6f327212ef96 43 extern "C" {
Kojto 112:6f327212ef96 44 #endif
Kojto 112:6f327212ef96 45
Kojto 112:6f327212ef96 46 /* Includes ------------------------------------------------------------------*/
Kojto 112:6f327212ef96 47 #include "stm32l1xx_hal_def.h"
Kojto 112:6f327212ef96 48
Kojto 112:6f327212ef96 49 /** @addtogroup STM32L1xx_HAL_Driver
Kojto 112:6f327212ef96 50 * @{
Kojto 112:6f327212ef96 51 */
Kojto 112:6f327212ef96 52
Kojto 112:6f327212ef96 53 /** @addtogroup RTC
Kojto 112:6f327212ef96 54 * @{
Kojto 112:6f327212ef96 55 */
Kojto 112:6f327212ef96 56
Kojto 112:6f327212ef96 57 /* Exported types ------------------------------------------------------------*/
Kojto 112:6f327212ef96 58 /** @defgroup RTC_Exported_Types RTC Exported Types
Kojto 112:6f327212ef96 59 * @{
Kojto 112:6f327212ef96 60 */
Kojto 112:6f327212ef96 61
Kojto 112:6f327212ef96 62 /**
Kojto 112:6f327212ef96 63 * @brief HAL State structures definition
Kojto 112:6f327212ef96 64 */
Kojto 112:6f327212ef96 65 typedef enum
Kojto 112:6f327212ef96 66 {
Kojto 112:6f327212ef96 67 HAL_RTC_STATE_RESET = 0x00, /*!< RTC not yet initialized or disabled */
Kojto 112:6f327212ef96 68 HAL_RTC_STATE_READY = 0x01, /*!< RTC initialized and ready for use */
Kojto 112:6f327212ef96 69 HAL_RTC_STATE_BUSY = 0x02, /*!< RTC process is ongoing */
Kojto 112:6f327212ef96 70 HAL_RTC_STATE_TIMEOUT = 0x03, /*!< RTC timeout state */
Kojto 112:6f327212ef96 71 HAL_RTC_STATE_ERROR = 0x04 /*!< RTC error state */
Kojto 112:6f327212ef96 72
Kojto 112:6f327212ef96 73 }HAL_RTCStateTypeDef;
Kojto 112:6f327212ef96 74
Kojto 112:6f327212ef96 75 /**
Kojto 112:6f327212ef96 76 * @brief RTC Configuration Structure definition
Kojto 112:6f327212ef96 77 */
Kojto 112:6f327212ef96 78 typedef struct
Kojto 112:6f327212ef96 79 {
Kojto 112:6f327212ef96 80 uint32_t HourFormat; /*!< Specifies the RTC Hour Format.
Kojto 112:6f327212ef96 81 This parameter can be a value of @ref RTC_Hour_Formats */
Kojto 112:6f327212ef96 82
Kojto 112:6f327212ef96 83 uint32_t AsynchPrediv; /*!< Specifies the RTC Asynchronous Predivider value.
Kojto 112:6f327212ef96 84 This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x7F */
Kojto 112:6f327212ef96 85
Kojto 112:6f327212ef96 86 uint32_t SynchPrediv; /*!< Specifies the RTC Synchronous Predivider value.
Kojto 112:6f327212ef96 87 This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x7FFF */
Kojto 112:6f327212ef96 88
Kojto 112:6f327212ef96 89 uint32_t OutPut; /*!< Specifies which signal will be routed to the RTC output.
Kojto 112:6f327212ef96 90 This parameter can be a value of @ref RTCEx_Output_selection_Definitions */
Kojto 112:6f327212ef96 91
Kojto 112:6f327212ef96 92 uint32_t OutPutPolarity; /*!< Specifies the polarity of the output signal.
Kojto 112:6f327212ef96 93 This parameter can be a value of @ref RTC_Output_Polarity_Definitions */
Kojto 112:6f327212ef96 94
Kojto 112:6f327212ef96 95 uint32_t OutPutType; /*!< Specifies the RTC Output Pin mode.
Kojto 112:6f327212ef96 96 This parameter can be a value of @ref RTC_Output_Type_ALARM_OUT */
Kojto 112:6f327212ef96 97 }RTC_InitTypeDef;
Kojto 112:6f327212ef96 98
Kojto 112:6f327212ef96 99 /**
Kojto 112:6f327212ef96 100 * @brief RTC Date structure definition
Kojto 112:6f327212ef96 101 */
Kojto 112:6f327212ef96 102 typedef struct
Kojto 112:6f327212ef96 103 {
Kojto 112:6f327212ef96 104 uint8_t WeekDay; /*!< Specifies the RTC Date WeekDay.
Kojto 112:6f327212ef96 105 This parameter can be a value of @ref RTC_WeekDay_Definitions */
Kojto 112:6f327212ef96 106
Kojto 112:6f327212ef96 107 uint8_t Month; /*!< Specifies the RTC Date Month (in BCD format).
Kojto 112:6f327212ef96 108 This parameter can be a value of @ref RTC_Month_Date_Definitions */
Kojto 112:6f327212ef96 109
Kojto 112:6f327212ef96 110 uint8_t Date; /*!< Specifies the RTC Date.
Kojto 112:6f327212ef96 111 This parameter must be a number between Min_Data = 1 and Max_Data = 31 */
Kojto 112:6f327212ef96 112
Kojto 112:6f327212ef96 113 uint8_t Year; /*!< Specifies the RTC Date Year.
Kojto 112:6f327212ef96 114 This parameter must be a number between Min_Data = 0 and Max_Data = 99 */
Kojto 112:6f327212ef96 115
Kojto 112:6f327212ef96 116 }RTC_DateTypeDef;
Kojto 112:6f327212ef96 117
Kojto 112:6f327212ef96 118 /**
Kojto 112:6f327212ef96 119 * @brief Time Handle Structure definition
Kojto 112:6f327212ef96 120 */
Kojto 112:6f327212ef96 121 typedef struct
Kojto 112:6f327212ef96 122 {
Kojto 112:6f327212ef96 123 RTC_TypeDef *Instance; /*!< Register base address */
Kojto 112:6f327212ef96 124
Kojto 112:6f327212ef96 125 RTC_InitTypeDef Init; /*!< RTC required parameters */
Kojto 112:6f327212ef96 126
Kojto 112:6f327212ef96 127 HAL_LockTypeDef Lock; /*!< RTC locking object */
Kojto 112:6f327212ef96 128
Kojto 112:6f327212ef96 129 __IO HAL_RTCStateTypeDef State; /*!< Time communication state */
Kojto 112:6f327212ef96 130
Kojto 112:6f327212ef96 131 }RTC_HandleTypeDef;
Kojto 112:6f327212ef96 132
Kojto 112:6f327212ef96 133 /**
Kojto 112:6f327212ef96 134 * @}
Kojto 112:6f327212ef96 135 */
Kojto 112:6f327212ef96 136
Kojto 112:6f327212ef96 137 /* Exported constants --------------------------------------------------------*/
Kojto 112:6f327212ef96 138 /** @defgroup RTC_Exported_Constants RTC Exported Constants
Kojto 112:6f327212ef96 139 * @{
Kojto 112:6f327212ef96 140 */
Kojto 112:6f327212ef96 141
Kojto 112:6f327212ef96 142 /** @defgroup RTC_Timeout_Value Default Timeout Value
Kojto 112:6f327212ef96 143 * @{
Kojto 112:6f327212ef96 144 */
Kojto 112:6f327212ef96 145 #define RTC_TIMEOUT_VALUE 1000
Kojto 112:6f327212ef96 146 /**
Kojto 112:6f327212ef96 147 * @}
Kojto 112:6f327212ef96 148 */
Kojto 112:6f327212ef96 149
Kojto 112:6f327212ef96 150 /** @defgroup RTC_Hour_Formats Hour Formats
Kojto 112:6f327212ef96 151 * @{
Kojto 112:6f327212ef96 152 */
Kojto 112:6f327212ef96 153 #define RTC_HOURFORMAT_24 ((uint32_t)0x00000000)
Kojto 112:6f327212ef96 154 #define RTC_HOURFORMAT_12 ((uint32_t)0x00000040)
Kojto 112:6f327212ef96 155
Kojto 112:6f327212ef96 156 #define IS_RTC_HOUR_FORMAT(FORMAT) (((FORMAT) == RTC_HOURFORMAT_12) || \
Kojto 112:6f327212ef96 157 ((FORMAT) == RTC_HOURFORMAT_24))
Kojto 112:6f327212ef96 158 /**
Kojto 112:6f327212ef96 159 * @}
Kojto 112:6f327212ef96 160 */
Kojto 112:6f327212ef96 161
Kojto 112:6f327212ef96 162 /** @defgroup RTC_Output_Polarity_Definitions Outpout Polarity
Kojto 112:6f327212ef96 163 * @{
Kojto 112:6f327212ef96 164 */
Kojto 112:6f327212ef96 165 #define RTC_OUTPUT_POLARITY_HIGH ((uint32_t)0x00000000)
Kojto 112:6f327212ef96 166 #define RTC_OUTPUT_POLARITY_LOW ((uint32_t)0x00100000)
Kojto 112:6f327212ef96 167
Kojto 112:6f327212ef96 168 #define IS_RTC_OUTPUT_POL(POL) (((POL) == RTC_OUTPUT_POLARITY_HIGH) || \
Kojto 112:6f327212ef96 169 ((POL) == RTC_OUTPUT_POLARITY_LOW))
Kojto 112:6f327212ef96 170 /**
Kojto 112:6f327212ef96 171 * @}
Kojto 112:6f327212ef96 172 */
Kojto 112:6f327212ef96 173
Kojto 112:6f327212ef96 174 /** @defgroup RTC_Output_Type_ALARM_OUT Alarm Output Type
Kojto 112:6f327212ef96 175 * @{
Kojto 112:6f327212ef96 176 */
Kojto 112:6f327212ef96 177 #define RTC_OUTPUT_TYPE_OPENDRAIN ((uint32_t)0x00000000)
Kojto 112:6f327212ef96 178 #define RTC_OUTPUT_TYPE_PUSHPULL ((uint32_t)0x00040000)
Kojto 112:6f327212ef96 179
Kojto 112:6f327212ef96 180 #define IS_RTC_OUTPUT_TYPE(TYPE) (((TYPE) == RTC_OUTPUT_TYPE_OPENDRAIN) || \
Kojto 112:6f327212ef96 181 ((TYPE) == RTC_OUTPUT_TYPE_PUSHPULL))
Kojto 112:6f327212ef96 182
Kojto 112:6f327212ef96 183 /**
Kojto 112:6f327212ef96 184 * @}
Kojto 112:6f327212ef96 185 */
Kojto 112:6f327212ef96 186
Kojto 112:6f327212ef96 187 /** @defgroup RTC_Asynchronous_Predivider Asynchronous Predivider
Kojto 112:6f327212ef96 188 * @{
Kojto 112:6f327212ef96 189 */
Kojto 112:6f327212ef96 190 #define IS_RTC_ASYNCH_PREDIV(PREDIV) ((PREDIV) <= (uint32_t)0x7F)
Kojto 112:6f327212ef96 191 /**
Kojto 112:6f327212ef96 192 * @}
Kojto 112:6f327212ef96 193 */
Kojto 112:6f327212ef96 194
Kojto 112:6f327212ef96 195 /** @defgroup RTC_Time_Definitions Time Definitions
Kojto 112:6f327212ef96 196 * @{
Kojto 112:6f327212ef96 197 */
Kojto 112:6f327212ef96 198 #define IS_RTC_HOUR12(HOUR) (((HOUR) > (uint32_t)0) && ((HOUR) <= (uint32_t)12))
Kojto 112:6f327212ef96 199 #define IS_RTC_HOUR24(HOUR) ((HOUR) <= (uint32_t)23)
Kojto 112:6f327212ef96 200 #define IS_RTC_MINUTES(MINUTES) ((MINUTES) <= (uint32_t)59)
Kojto 112:6f327212ef96 201 #define IS_RTC_SECONDS(SECONDS) ((SECONDS) <= (uint32_t)59)
Kojto 112:6f327212ef96 202 /**
Kojto 112:6f327212ef96 203 * @}
Kojto 112:6f327212ef96 204 */
Kojto 112:6f327212ef96 205
Kojto 112:6f327212ef96 206 /** @defgroup RTC_AM_PM_Definitions AM PM Definitions
Kojto 112:6f327212ef96 207 * @{
Kojto 112:6f327212ef96 208 */
Kojto 112:6f327212ef96 209 #define RTC_HOURFORMAT12_AM ((uint8_t)0x00)
Kojto 112:6f327212ef96 210 #define RTC_HOURFORMAT12_PM ((uint8_t)0x40)
Kojto 112:6f327212ef96 211
Kojto 112:6f327212ef96 212 #define IS_RTC_HOURFORMAT12(PM) (((PM) == RTC_HOURFORMAT12_AM) || ((PM) == RTC_HOURFORMAT12_PM))
Kojto 112:6f327212ef96 213 /**
Kojto 112:6f327212ef96 214 * @}
Kojto 112:6f327212ef96 215 */
Kojto 112:6f327212ef96 216
Kojto 112:6f327212ef96 217 /** @defgroup RTC_DayLightSaving_Definitions DayLightSaving
Kojto 112:6f327212ef96 218 * @{
Kojto 112:6f327212ef96 219 */
Kojto 112:6f327212ef96 220 #define RTC_DAYLIGHTSAVING_SUB1H ((uint32_t)0x00020000)
Kojto 112:6f327212ef96 221 #define RTC_DAYLIGHTSAVING_ADD1H ((uint32_t)0x00010000)
Kojto 112:6f327212ef96 222 #define RTC_DAYLIGHTSAVING_NONE ((uint32_t)0x00000000)
Kojto 112:6f327212ef96 223
Kojto 112:6f327212ef96 224 #define IS_RTC_DAYLIGHT_SAVING(SAVE) (((SAVE) == RTC_DAYLIGHTSAVING_SUB1H) || \
Kojto 112:6f327212ef96 225 ((SAVE) == RTC_DAYLIGHTSAVING_ADD1H) || \
Kojto 112:6f327212ef96 226 ((SAVE) == RTC_DAYLIGHTSAVING_NONE))
Kojto 112:6f327212ef96 227 /**
Kojto 112:6f327212ef96 228 * @}
Kojto 112:6f327212ef96 229 */
Kojto 112:6f327212ef96 230
Kojto 112:6f327212ef96 231 /** @defgroup RTC_StoreOperation_Definitions StoreOperation
Kojto 112:6f327212ef96 232 * @{
Kojto 112:6f327212ef96 233 */
Kojto 112:6f327212ef96 234 #define RTC_STOREOPERATION_RESET ((uint32_t)0x00000000)
Kojto 112:6f327212ef96 235 #define RTC_STOREOPERATION_SET ((uint32_t)0x00040000)
Kojto 112:6f327212ef96 236
Kojto 112:6f327212ef96 237 #define IS_RTC_STORE_OPERATION(OPERATION) (((OPERATION) == RTC_STOREOPERATION_RESET) || \
Kojto 112:6f327212ef96 238 ((OPERATION) == RTC_STOREOPERATION_SET))
Kojto 112:6f327212ef96 239 /**
Kojto 112:6f327212ef96 240 * @}
Kojto 112:6f327212ef96 241 */
Kojto 112:6f327212ef96 242
Kojto 112:6f327212ef96 243 /** @defgroup RTC_Input_parameter_format_definitions Input Parameter Format
Kojto 112:6f327212ef96 244 * @{
Kojto 112:6f327212ef96 245 */
Kojto 112:6f327212ef96 246 #define FORMAT_BIN ((uint32_t)0x000000000)
Kojto 112:6f327212ef96 247 #define FORMAT_BCD ((uint32_t)0x000000001)
Kojto 112:6f327212ef96 248
Kojto 112:6f327212ef96 249 #define IS_RTC_FORMAT(FORMAT) (((FORMAT) == FORMAT_BIN) || ((FORMAT) == FORMAT_BCD))
Kojto 112:6f327212ef96 250 /**
Kojto 112:6f327212ef96 251 * @}
Kojto 112:6f327212ef96 252 */
Kojto 112:6f327212ef96 253
Kojto 112:6f327212ef96 254 /** @defgroup RTC_Year_Date_Definitions Year Definitions
Kojto 112:6f327212ef96 255 * @{
Kojto 112:6f327212ef96 256 */
Kojto 112:6f327212ef96 257 #define IS_RTC_YEAR(YEAR) ((YEAR) <= (uint32_t)99)
Kojto 112:6f327212ef96 258 /**
Kojto 112:6f327212ef96 259 * @}
Kojto 112:6f327212ef96 260 */
Kojto 112:6f327212ef96 261
Kojto 112:6f327212ef96 262 /** @defgroup RTC_Month_Date_Definitions Month Definitions
Kojto 112:6f327212ef96 263 * @{
Kojto 112:6f327212ef96 264 */
Kojto 112:6f327212ef96 265
Kojto 112:6f327212ef96 266 /* Coded in BCD format */
Kojto 112:6f327212ef96 267 #define RTC_MONTH_JANUARY ((uint8_t)0x01)
Kojto 112:6f327212ef96 268 #define RTC_MONTH_FEBRUARY ((uint8_t)0x02)
Kojto 112:6f327212ef96 269 #define RTC_MONTH_MARCH ((uint8_t)0x03)
Kojto 112:6f327212ef96 270 #define RTC_MONTH_APRIL ((uint8_t)0x04)
Kojto 112:6f327212ef96 271 #define RTC_MONTH_MAY ((uint8_t)0x05)
Kojto 112:6f327212ef96 272 #define RTC_MONTH_JUNE ((uint8_t)0x06)
Kojto 112:6f327212ef96 273 #define RTC_MONTH_JULY ((uint8_t)0x07)
Kojto 112:6f327212ef96 274 #define RTC_MONTH_AUGUST ((uint8_t)0x08)
Kojto 112:6f327212ef96 275 #define RTC_MONTH_SEPTEMBER ((uint8_t)0x09)
Kojto 112:6f327212ef96 276 #define RTC_MONTH_OCTOBER ((uint8_t)0x10)
Kojto 112:6f327212ef96 277 #define RTC_MONTH_NOVEMBER ((uint8_t)0x11)
Kojto 112:6f327212ef96 278 #define RTC_MONTH_DECEMBER ((uint8_t)0x12)
Kojto 112:6f327212ef96 279
Kojto 112:6f327212ef96 280 #define IS_RTC_MONTH(MONTH) (((MONTH) >= (uint32_t)1) && ((MONTH) <= (uint32_t)12))
Kojto 112:6f327212ef96 281 #define IS_RTC_DATE(DATE) (((DATE) >= (uint32_t)1) && ((DATE) <= (uint32_t)31))
Kojto 112:6f327212ef96 282 /**
Kojto 112:6f327212ef96 283 * @}
Kojto 112:6f327212ef96 284 */
Kojto 112:6f327212ef96 285
Kojto 112:6f327212ef96 286 /** @defgroup RTC_WeekDay_Definitions WeekDay Definitions
Kojto 112:6f327212ef96 287 * @{
Kojto 112:6f327212ef96 288 */
Kojto 112:6f327212ef96 289 #define RTC_WEEKDAY_MONDAY ((uint8_t)0x01)
Kojto 112:6f327212ef96 290 #define RTC_WEEKDAY_TUESDAY ((uint8_t)0x02)
Kojto 112:6f327212ef96 291 #define RTC_WEEKDAY_WEDNESDAY ((uint8_t)0x03)
Kojto 112:6f327212ef96 292 #define RTC_WEEKDAY_THURSDAY ((uint8_t)0x04)
Kojto 112:6f327212ef96 293 #define RTC_WEEKDAY_FRIDAY ((uint8_t)0x05)
Kojto 112:6f327212ef96 294 #define RTC_WEEKDAY_SATURDAY ((uint8_t)0x06)
Kojto 112:6f327212ef96 295 #define RTC_WEEKDAY_SUNDAY ((uint8_t)0x07)
Kojto 112:6f327212ef96 296
Kojto 112:6f327212ef96 297 #define IS_RTC_WEEKDAY(WEEKDAY) (((WEEKDAY) == RTC_WEEKDAY_MONDAY) || \
Kojto 112:6f327212ef96 298 ((WEEKDAY) == RTC_WEEKDAY_TUESDAY) || \
Kojto 112:6f327212ef96 299 ((WEEKDAY) == RTC_WEEKDAY_WEDNESDAY) || \
Kojto 112:6f327212ef96 300 ((WEEKDAY) == RTC_WEEKDAY_THURSDAY) || \
Kojto 112:6f327212ef96 301 ((WEEKDAY) == RTC_WEEKDAY_FRIDAY) || \
Kojto 112:6f327212ef96 302 ((WEEKDAY) == RTC_WEEKDAY_SATURDAY) || \
Kojto 112:6f327212ef96 303 ((WEEKDAY) == RTC_WEEKDAY_SUNDAY))
Kojto 112:6f327212ef96 304 /**
Kojto 112:6f327212ef96 305 * @}
Kojto 112:6f327212ef96 306 */
Kojto 112:6f327212ef96 307
Kojto 112:6f327212ef96 308 /** @defgroup RTC_Alarm_Definitions Alarm Definitions
Kojto 112:6f327212ef96 309 * @{
Kojto 112:6f327212ef96 310 */
Kojto 112:6f327212ef96 311 #define IS_RTC_ALARM_DATE_WEEKDAY_DATE(DATE) (((DATE) >(uint32_t) 0) && ((DATE) <= (uint32_t)31))
Kojto 112:6f327212ef96 312 #define IS_RTC_ALARM_DATE_WEEKDAY_WEEKDAY(WEEKDAY) (((WEEKDAY) == RTC_WEEKDAY_MONDAY) || \
Kojto 112:6f327212ef96 313 ((WEEKDAY) == RTC_WEEKDAY_TUESDAY) || \
Kojto 112:6f327212ef96 314 ((WEEKDAY) == RTC_WEEKDAY_WEDNESDAY) || \
Kojto 112:6f327212ef96 315 ((WEEKDAY) == RTC_WEEKDAY_THURSDAY) || \
Kojto 112:6f327212ef96 316 ((WEEKDAY) == RTC_WEEKDAY_FRIDAY) || \
Kojto 112:6f327212ef96 317 ((WEEKDAY) == RTC_WEEKDAY_SATURDAY) || \
Kojto 112:6f327212ef96 318 ((WEEKDAY) == RTC_WEEKDAY_SUNDAY))
Kojto 112:6f327212ef96 319 /**
Kojto 112:6f327212ef96 320 * @}
Kojto 112:6f327212ef96 321 */
Kojto 112:6f327212ef96 322
Kojto 112:6f327212ef96 323
Kojto 112:6f327212ef96 324 /** @defgroup RTC_AlarmDateWeekDay_Definitions AlarmDateWeekDay Definitions
Kojto 112:6f327212ef96 325 * @{
Kojto 112:6f327212ef96 326 */
Kojto 112:6f327212ef96 327 #define RTC_ALARMDATEWEEKDAYSEL_DATE ((uint32_t)0x00000000)
Kojto 112:6f327212ef96 328 #define RTC_ALARMDATEWEEKDAYSEL_WEEKDAY ((uint32_t)0x40000000)
Kojto 112:6f327212ef96 329
Kojto 112:6f327212ef96 330 #define IS_RTC_ALARM_DATE_WEEKDAY_SEL(SEL) (((SEL) == RTC_ALARMDATEWEEKDAYSEL_DATE) || \
Kojto 112:6f327212ef96 331 ((SEL) == RTC_ALARMDATEWEEKDAYSEL_WEEKDAY))
Kojto 112:6f327212ef96 332 /**
Kojto 112:6f327212ef96 333 * @}
Kojto 112:6f327212ef96 334 */
Kojto 112:6f327212ef96 335
Kojto 112:6f327212ef96 336
Kojto 112:6f327212ef96 337 /** @defgroup RTC_AlarmMask_Definitions Alarm Mask Definitions
Kojto 112:6f327212ef96 338 * @{
Kojto 112:6f327212ef96 339 */
Kojto 112:6f327212ef96 340 #define RTC_ALARMMASK_NONE ((uint32_t)0x00000000)
Kojto 112:6f327212ef96 341 #define RTC_ALARMMASK_DATEWEEKDAY RTC_ALRMAR_MSK4
Kojto 112:6f327212ef96 342 #define RTC_ALARMMASK_HOURS RTC_ALRMAR_MSK3
Kojto 112:6f327212ef96 343 #define RTC_ALARMMASK_MINUTES RTC_ALRMAR_MSK2
Kojto 112:6f327212ef96 344 #define RTC_ALARMMASK_SECONDS RTC_ALRMAR_MSK1
Kojto 112:6f327212ef96 345 #define RTC_ALARMMASK_ALL ((uint32_t)0x80808080)
Kojto 112:6f327212ef96 346
Kojto 112:6f327212ef96 347 #define IS_ALARM_MASK(MASK) (((MASK) & 0x7F7F7F7F) == (uint32_t)RESET)
Kojto 112:6f327212ef96 348 /**
Kojto 112:6f327212ef96 349 * @}
Kojto 112:6f327212ef96 350 */
Kojto 112:6f327212ef96 351
Kojto 112:6f327212ef96 352 /** @defgroup RTC_Alarms_Definitions Alarms Definitions
Kojto 112:6f327212ef96 353 * @{
Kojto 112:6f327212ef96 354 */
Kojto 112:6f327212ef96 355 #define RTC_ALARM_A RTC_CR_ALRAE
Kojto 112:6f327212ef96 356 #define RTC_ALARM_B RTC_CR_ALRBE
Kojto 112:6f327212ef96 357
Kojto 112:6f327212ef96 358 #define IS_ALARM(ALARM) (((ALARM) == RTC_ALARM_A) || ((ALARM) == RTC_ALARM_B))
Kojto 112:6f327212ef96 359 /**
Kojto 112:6f327212ef96 360 * @}
Kojto 112:6f327212ef96 361 */
Kojto 112:6f327212ef96 362
Kojto 112:6f327212ef96 363 /**
Kojto 112:6f327212ef96 364 * @}
Kojto 112:6f327212ef96 365 */
Kojto 112:6f327212ef96 366
Kojto 112:6f327212ef96 367 /* Exported macro ------------------------------------------------------------*/
Kojto 112:6f327212ef96 368 /** @defgroup RTC_Exported_macros RTC Exported Macros
Kojto 112:6f327212ef96 369 * @{
Kojto 112:6f327212ef96 370 */
Kojto 112:6f327212ef96 371
Kojto 112:6f327212ef96 372 /** @brief Reset RTC handle state
Kojto 112:6f327212ef96 373 * @param __HANDLE__: RTC handle.
Kojto 112:6f327212ef96 374 * @retval None
Kojto 112:6f327212ef96 375 */
Kojto 112:6f327212ef96 376 #define __HAL_RTC_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_RTC_STATE_RESET)
Kojto 112:6f327212ef96 377
Kojto 112:6f327212ef96 378 /**
Kojto 112:6f327212ef96 379 * @brief Disable the write protection for RTC registers.
Kojto 112:6f327212ef96 380 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 381 * @retval None
Kojto 112:6f327212ef96 382 */
Kojto 112:6f327212ef96 383 #define __HAL_RTC_WRITEPROTECTION_DISABLE(__HANDLE__) \
Kojto 112:6f327212ef96 384 do{ \
Kojto 112:6f327212ef96 385 (__HANDLE__)->Instance->WPR = 0xCA; \
Kojto 112:6f327212ef96 386 (__HANDLE__)->Instance->WPR = 0x53; \
Kojto 112:6f327212ef96 387 } while(0)
Kojto 112:6f327212ef96 388
Kojto 112:6f327212ef96 389 /**
Kojto 112:6f327212ef96 390 * @brief Enable the write protection for RTC registers.
Kojto 112:6f327212ef96 391 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 392 * @retval None
Kojto 112:6f327212ef96 393 */
Kojto 112:6f327212ef96 394 #define __HAL_RTC_WRITEPROTECTION_ENABLE(__HANDLE__) \
Kojto 112:6f327212ef96 395 do{ \
Kojto 112:6f327212ef96 396 (__HANDLE__)->Instance->WPR = 0xFF; \
Kojto 112:6f327212ef96 397 } while(0)
Kojto 112:6f327212ef96 398
Kojto 112:6f327212ef96 399 /**
Kojto 112:6f327212ef96 400 * @brief Enable the RTC ALARMA peripheral.
Kojto 112:6f327212ef96 401 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 402 * @retval None
Kojto 112:6f327212ef96 403 */
Kojto 112:6f327212ef96 404 #define __HAL_RTC_ALARMA_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR |= (RTC_CR_ALRAE))
Kojto 112:6f327212ef96 405
Kojto 112:6f327212ef96 406 /**
Kojto 112:6f327212ef96 407 * @brief Disable the RTC ALARMA peripheral.
Kojto 112:6f327212ef96 408 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 409 * @retval None
Kojto 112:6f327212ef96 410 */
Kojto 112:6f327212ef96 411 #define __HAL_RTC_ALARMA_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR &= ~(RTC_CR_ALRAE))
Kojto 112:6f327212ef96 412
Kojto 112:6f327212ef96 413 /**
Kojto 112:6f327212ef96 414 * @brief Enable the RTC ALARMB peripheral.
Kojto 112:6f327212ef96 415 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 416 * @retval None
Kojto 112:6f327212ef96 417 */
Kojto 112:6f327212ef96 418 #define __HAL_RTC_ALARMB_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR |= (RTC_CR_ALRBE))
Kojto 112:6f327212ef96 419
Kojto 112:6f327212ef96 420 /**
Kojto 112:6f327212ef96 421 * @brief Disable the RTC ALARMB peripheral.
Kojto 112:6f327212ef96 422 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 423 * @retval None
Kojto 112:6f327212ef96 424 */
Kojto 112:6f327212ef96 425 #define __HAL_RTC_ALARMB_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR &= ~(RTC_CR_ALRBE))
Kojto 112:6f327212ef96 426
Kojto 112:6f327212ef96 427 /**
Kojto 112:6f327212ef96 428 * @brief Enable the RTC Alarm interrupt.
Kojto 112:6f327212ef96 429 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 430 * @param __INTERRUPT__: specifies the RTC Alarm interrupt sources to be enabled or disabled.
Kojto 112:6f327212ef96 431 * This parameter can be any combination of the following values:
Kojto 112:6f327212ef96 432 * @arg RTC_IT_ALRA: Alarm A interrupt
Kojto 112:6f327212ef96 433 * @arg RTC_IT_ALRB: Alarm B interrupt
Kojto 112:6f327212ef96 434 * @retval None
Kojto 112:6f327212ef96 435 */
Kojto 112:6f327212ef96 436 #define __HAL_RTC_ALARM_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR |= (__INTERRUPT__))
Kojto 112:6f327212ef96 437
Kojto 112:6f327212ef96 438 /**
Kojto 112:6f327212ef96 439 * @brief Disable the RTC Alarm interrupt.
Kojto 112:6f327212ef96 440 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 441 * @param __INTERRUPT__: specifies the RTC Alarm interrupt sources to be enabled or disabled.
Kojto 112:6f327212ef96 442 * This parameter can be any combination of the following values:
Kojto 112:6f327212ef96 443 * @arg RTC_IT_ALRA: Alarm A interrupt
Kojto 112:6f327212ef96 444 * @arg RTC_IT_ALRB: Alarm B interrupt
Kojto 112:6f327212ef96 445 * @retval None
Kojto 112:6f327212ef96 446 */
Kojto 112:6f327212ef96 447 #define __HAL_RTC_ALARM_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR &= ~(__INTERRUPT__))
Kojto 112:6f327212ef96 448
Kojto 112:6f327212ef96 449 /**
Kojto 112:6f327212ef96 450 * @brief Check whether the specified RTC Alarm interrupt has occurred or not.
Kojto 112:6f327212ef96 451 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 452 * @param __FLAG__: specifies the RTC Alarm interrupt sources to be enabled or disabled.
Kojto 112:6f327212ef96 453 * This parameter can be:
Kojto 112:6f327212ef96 454 * @arg RTC_IT_ALRA: Alarm A interrupt
Kojto 112:6f327212ef96 455 * @arg RTC_IT_ALRB: Alarm B interrupt
Kojto 112:6f327212ef96 456 * @retval None
Kojto 112:6f327212ef96 457 */
Kojto 112:6f327212ef96 458 #define __HAL_RTC_ALARM_GET_IT(__HANDLE__, __FLAG__) ((((((__HANDLE__)->Instance->ISR)& ((__FLAG__)>> 4)) & 0x0000FFFF) != RESET)? SET : RESET)
Kojto 112:6f327212ef96 459
Kojto 112:6f327212ef96 460 /**
Kojto 112:6f327212ef96 461 * @brief Get the selected RTC Alarm's flag status.
Kojto 112:6f327212ef96 462 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 463 * @param __FLAG__: specifies the RTC Alarm Flag sources to be enabled or disabled.
Kojto 112:6f327212ef96 464 * This parameter can be:
Kojto 112:6f327212ef96 465 * @arg RTC_FLAG_ALRAF
Kojto 112:6f327212ef96 466 * @arg RTC_FLAG_ALRBF
Kojto 112:6f327212ef96 467 * @arg RTC_FLAG_ALRAWF
Kojto 112:6f327212ef96 468 * @arg RTC_FLAG_ALRBWF
Kojto 112:6f327212ef96 469 * @retval None
Kojto 112:6f327212ef96 470 */
Kojto 112:6f327212ef96 471 #define __HAL_RTC_ALARM_GET_FLAG(__HANDLE__, __FLAG__) (((((__HANDLE__)->Instance->ISR) & (__FLAG__)) != RESET)? SET : RESET)
Kojto 112:6f327212ef96 472
Kojto 112:6f327212ef96 473 /**
Kojto 112:6f327212ef96 474 * @brief Clear the RTC Alarm's pending flags.
Kojto 112:6f327212ef96 475 * @param __HANDLE__: specifies the RTC handle.
Kojto 112:6f327212ef96 476 * @param __FLAG__: specifies the RTC Alarm Flag sources to be enabled or disabled.
Kojto 112:6f327212ef96 477 * This parameter can be:
Kojto 112:6f327212ef96 478 * @arg RTC_FLAG_ALRAF
Kojto 112:6f327212ef96 479 * @arg RTC_FLAG_ALRBF
Kojto 112:6f327212ef96 480 * @retval None
Kojto 112:6f327212ef96 481 */
Kojto 112:6f327212ef96 482 #define __HAL_RTC_ALARM_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->ISR) = (~(((__FLAG__) | RTC_ISR_INIT)& 0x0000FFFF)|((__HANDLE__)->Instance->ISR & RTC_ISR_INIT))
Kojto 112:6f327212ef96 483
Kojto 112:6f327212ef96 484
Kojto 112:6f327212ef96 485 #define RTC_EXTI_LINE_ALARM_EVENT ((uint32_t)0x00020000) /*!< External interrupt line 17 Connected to the RTC Alarm event */
Kojto 112:6f327212ef96 486 #define RTC_EXTI_LINE_TAMPER_TIMESTAMP_EVENT ((uint32_t)0x00080000) /*!< External interrupt line 19 Connected to the RTC Tamper and Time Stamp events */
Kojto 112:6f327212ef96 487 #define RTC_EXTI_LINE_WAKEUPTIMER_EVENT ((uint32_t)0x00100000) /*!< External interrupt line 20 Connected to the RTC Wakeup event */
Kojto 112:6f327212ef96 488
Kojto 112:6f327212ef96 489 /**
Kojto 112:6f327212ef96 490 * @brief Enable the RTC Exti line.
Kojto 112:6f327212ef96 491 * @param __EXTILINE__: specifies the RTC Exti sources to be enabled or disabled.
Kojto 112:6f327212ef96 492 * This parameter can be:
Kojto 112:6f327212ef96 493 * @arg RTC_EXTI_LINE_ALARM_EVENT
Kojto 112:6f327212ef96 494 * @arg RTC_EXTI_LINE_TAMPER_TIMESTAMP_EVENT
Kojto 112:6f327212ef96 495 * @arg RTC_EXTI_LINE_WAKEUPTIMER_EVENT
Kojto 112:6f327212ef96 496 * @retval None
Kojto 112:6f327212ef96 497 */
Kojto 112:6f327212ef96 498 #define __HAL_RTC_EXTI_ENABLE_IT(__EXTILINE__) (EXTI->IMR |= (__EXTILINE__))
Kojto 112:6f327212ef96 499
Kojto 112:6f327212ef96 500 /* alias define maintained for legacy */
Kojto 112:6f327212ef96 501 #define __HAL_RTC_ENABLE_IT __HAL_RTC_EXTI_ENABLE_IT
Kojto 112:6f327212ef96 502
Kojto 112:6f327212ef96 503 /**
Kojto 112:6f327212ef96 504 * @brief Disable the RTC Exti line.
Kojto 112:6f327212ef96 505 * @param __EXTILINE__: specifies the RTC Exti sources to be enabled or disabled.
Kojto 112:6f327212ef96 506 * This parameter can be:
Kojto 112:6f327212ef96 507 * @arg RTC_EXTI_LINE_ALARM_EVENT
Kojto 112:6f327212ef96 508 * @arg RTC_EXTI_LINE_TAMPER_TIMESTAMP_EVENT
Kojto 112:6f327212ef96 509 * @arg RTC_EXTI_LINE_WAKEUPTIMER_EVENT
Kojto 112:6f327212ef96 510 * @retval None
Kojto 112:6f327212ef96 511 */
Kojto 112:6f327212ef96 512 #define __HAL_RTC_EXTI_DISABLE_IT(__EXTILINE__) (EXTI->IMR &= ~(__EXTILINE__))
Kojto 112:6f327212ef96 513
Kojto 112:6f327212ef96 514 /* alias define maintained for legacy */
Kojto 112:6f327212ef96 515 #define __HAL_RTC_DISABLE_IT __HAL_RTC_EXTI_DISABLE_IT
Kojto 112:6f327212ef96 516
Kojto 112:6f327212ef96 517 /**
Kojto 112:6f327212ef96 518 * @brief Generates a Software interrupt on selected EXTI line.
Kojto 112:6f327212ef96 519 * @param __EXTILINE__: specifies the RTC Exti sources to be enabled or disabled.
Kojto 112:6f327212ef96 520 * This parameter can be:
Kojto 112:6f327212ef96 521 * @arg RTC_EXTI_LINE_ALARM_EVENT
Kojto 112:6f327212ef96 522 * @arg RTC_EXTI_LINE_TAMPER_TIMESTAMP_EVENT
Kojto 112:6f327212ef96 523 * @arg RTC_EXTI_LINE_WAKEUPTIMER_EVENT
Kojto 112:6f327212ef96 524 * @retval None
Kojto 112:6f327212ef96 525 */
Kojto 112:6f327212ef96 526 #define __HAL_RTC_EXTI_GENERATE_SWIT(__EXTILINE__) (EXTI->SWIER |= (__EXTILINE__))
Kojto 112:6f327212ef96 527
Kojto 112:6f327212ef96 528 /**
Kojto 112:6f327212ef96 529 * @brief Clear the RTC Exti flags.
Kojto 112:6f327212ef96 530 * @param __FLAG__: specifies the RTC Exti sources to be enabled or disabled.
Kojto 112:6f327212ef96 531 * This parameter can be:
Kojto 112:6f327212ef96 532 * @arg RTC_EXTI_LINE_ALARM_EVENT
Kojto 112:6f327212ef96 533 * @arg RTC_EXTI_LINE_TAMPER_TIMESTAMP_EVENT
Kojto 112:6f327212ef96 534 * @arg RTC_EXTI_LINE_WAKEUPTIMER_EVENT
Kojto 112:6f327212ef96 535 * @retval None
Kojto 112:6f327212ef96 536 */
Kojto 112:6f327212ef96 537 #define __HAL_RTC_EXTI_CLEAR_FLAG(__FLAG__) (EXTI->PR = (__FLAG__))
Kojto 112:6f327212ef96 538
Kojto 112:6f327212ef96 539 /* alias define maintained for legacy */
Kojto 112:6f327212ef96 540 #define __HAL_RTC_CLEAR_FLAG __HAL_RTC_EXTI_CLEAR_FLAG
Kojto 112:6f327212ef96 541
Kojto 112:6f327212ef96 542 /**
Kojto 112:6f327212ef96 543 * @}
Kojto 112:6f327212ef96 544 */
Kojto 112:6f327212ef96 545
Kojto 112:6f327212ef96 546 /* Include RTC HAL Extension module */
Kojto 112:6f327212ef96 547 #include "stm32l1xx_hal_rtc_ex.h"
Kojto 112:6f327212ef96 548
Kojto 112:6f327212ef96 549 /* Exported functions --------------------------------------------------------*/
Kojto 112:6f327212ef96 550 /** @addtogroup RTC_Exported_Functions
Kojto 112:6f327212ef96 551 * @{
Kojto 112:6f327212ef96 552 */
Kojto 112:6f327212ef96 553
Kojto 112:6f327212ef96 554
Kojto 112:6f327212ef96 555 /* Initialization and de-initialization functions ****************************/
Kojto 112:6f327212ef96 556 /** @addtogroup RTC_Exported_Functions_Group1
Kojto 112:6f327212ef96 557 * @{
Kojto 112:6f327212ef96 558 */
Kojto 112:6f327212ef96 559 HAL_StatusTypeDef HAL_RTC_Init(RTC_HandleTypeDef *hrtc);
Kojto 112:6f327212ef96 560 HAL_StatusTypeDef HAL_RTC_DeInit(RTC_HandleTypeDef *hrtc);
Kojto 112:6f327212ef96 561 void HAL_RTC_MspInit(RTC_HandleTypeDef *hrtc);
Kojto 112:6f327212ef96 562 void HAL_RTC_MspDeInit(RTC_HandleTypeDef *hrtc);
Kojto 112:6f327212ef96 563 /**
Kojto 112:6f327212ef96 564 * @}
Kojto 112:6f327212ef96 565 */
Kojto 112:6f327212ef96 566
Kojto 112:6f327212ef96 567 /* RTC Time and Date functions ************************************************/
Kojto 112:6f327212ef96 568 /** @addtogroup RTC_Exported_Functions_Group1
Kojto 112:6f327212ef96 569 * @{
Kojto 112:6f327212ef96 570 */
Kojto 112:6f327212ef96 571 HAL_StatusTypeDef HAL_RTC_SetTime(RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format);
Kojto 112:6f327212ef96 572 HAL_StatusTypeDef HAL_RTC_GetTime(RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format);
Kojto 112:6f327212ef96 573 HAL_StatusTypeDef HAL_RTC_SetDate(RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format);
Kojto 112:6f327212ef96 574 HAL_StatusTypeDef HAL_RTC_GetDate(RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format);
Kojto 112:6f327212ef96 575 /**
Kojto 112:6f327212ef96 576 * @}
Kojto 112:6f327212ef96 577 */
Kojto 112:6f327212ef96 578
Kojto 112:6f327212ef96 579 /* RTC Alarm functions ********************************************************/
Kojto 112:6f327212ef96 580 /** @addtogroup RTC_Exported_Functions_Group2
Kojto 112:6f327212ef96 581 * @{
Kojto 112:6f327212ef96 582 */
Kojto 112:6f327212ef96 583 HAL_StatusTypeDef HAL_RTC_SetAlarm(RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Format);
Kojto 112:6f327212ef96 584 HAL_StatusTypeDef HAL_RTC_SetAlarm_IT(RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Format);
Kojto 112:6f327212ef96 585 HAL_StatusTypeDef HAL_RTC_DeactivateAlarm(RTC_HandleTypeDef *hrtc, uint32_t Alarm);
Kojto 112:6f327212ef96 586 HAL_StatusTypeDef HAL_RTC_GetAlarm(RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Alarm, uint32_t Format);
Kojto 112:6f327212ef96 587 void HAL_RTC_AlarmIRQHandler(RTC_HandleTypeDef *hrtc);
Kojto 112:6f327212ef96 588 HAL_StatusTypeDef HAL_RTC_PollForAlarmAEvent(RTC_HandleTypeDef *hrtc, uint32_t Timeout);
Kojto 112:6f327212ef96 589 void HAL_RTC_AlarmAEventCallback(RTC_HandleTypeDef *hrtc);
Kojto 112:6f327212ef96 590 /**
Kojto 112:6f327212ef96 591 * @}
Kojto 112:6f327212ef96 592 */
Kojto 112:6f327212ef96 593
Kojto 112:6f327212ef96 594 /* Peripheral Control functions ***********************************************/
Kojto 112:6f327212ef96 595 /** @addtogroup RTC_Exported_Functions_Group3
Kojto 112:6f327212ef96 596 * @{
Kojto 112:6f327212ef96 597 */
Kojto 112:6f327212ef96 598 HAL_StatusTypeDef HAL_RTC_WaitForSynchro(RTC_HandleTypeDef* hrtc);
Kojto 112:6f327212ef96 599 /**
Kojto 112:6f327212ef96 600 * @}
Kojto 112:6f327212ef96 601 */
Kojto 112:6f327212ef96 602
Kojto 112:6f327212ef96 603 /* Peripheral State functions *************************************************/
Kojto 112:6f327212ef96 604 /** @addtogroup RTC_Exported_Functions_Group5
Kojto 112:6f327212ef96 605 * @{
Kojto 112:6f327212ef96 606 */
Kojto 112:6f327212ef96 607 HAL_RTCStateTypeDef HAL_RTC_GetState(RTC_HandleTypeDef *hrtc);
Kojto 112:6f327212ef96 608 /**
Kojto 112:6f327212ef96 609 * @}
Kojto 112:6f327212ef96 610 */
Kojto 112:6f327212ef96 611
Kojto 112:6f327212ef96 612 /**
Kojto 112:6f327212ef96 613 * @}
Kojto 112:6f327212ef96 614 */
Kojto 112:6f327212ef96 615 /* Private functions **********************************************************/
Kojto 112:6f327212ef96 616 /** @addtogroup RTC_Internal_Functions
Kojto 112:6f327212ef96 617 * @{
Kojto 112:6f327212ef96 618 */
Kojto 112:6f327212ef96 619 HAL_StatusTypeDef RTC_EnterInitMode(RTC_HandleTypeDef* hrtc);
Kojto 112:6f327212ef96 620 uint8_t RTC_ByteToBcd2(uint8_t Value);
Kojto 112:6f327212ef96 621 uint8_t RTC_Bcd2ToByte(uint8_t Value);
Kojto 112:6f327212ef96 622
Kojto 112:6f327212ef96 623 /**
Kojto 112:6f327212ef96 624 * @}
Kojto 112:6f327212ef96 625 */
Kojto 112:6f327212ef96 626
Kojto 112:6f327212ef96 627 /**
Kojto 112:6f327212ef96 628 * @}
Kojto 112:6f327212ef96 629 */
Kojto 112:6f327212ef96 630
Kojto 112:6f327212ef96 631 /**
Kojto 112:6f327212ef96 632 * @}
Kojto 112:6f327212ef96 633 */
Kojto 112:6f327212ef96 634
Kojto 112:6f327212ef96 635 #ifdef __cplusplus
Kojto 112:6f327212ef96 636 }
Kojto 112:6f327212ef96 637 #endif
Kojto 112:6f327212ef96 638
Kojto 112:6f327212ef96 639 #endif /* __STM32L1xx_HAL_RTC_H */
Kojto 112:6f327212ef96 640
Kojto 112:6f327212ef96 641 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/