mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Committer:
mbed_official
Date:
Thu Apr 30 13:45:11 2015 +0100
Revision:
532:fe11edbda85c
Parent:
380:510f0c3515e3
Child:
613:bc40b8d2aec4
Synchronized with git revision 8c95d60d0a0c337e8161211fd1eded577e79e00b

Full URL: https://github.com/mbedmicro/mbed/commit/8c95d60d0a0c337e8161211fd1eded577e79e00b/

Stm32cubef4 update

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 87:085cde657901 1 /**
mbed_official 87:085cde657901 2 ******************************************************************************
mbed_official 87:085cde657901 3 * @file stm32f4xx_hal_rtc.h
mbed_official 87:085cde657901 4 * @author MCD Application Team
mbed_official 532:fe11edbda85c 5 * @version V1.3.0
mbed_official 532:fe11edbda85c 6 * @date 09-March-2015
mbed_official 87:085cde657901 7 * @brief Header file of RTC HAL module.
mbed_official 87:085cde657901 8 ******************************************************************************
mbed_official 87:085cde657901 9 * @attention
mbed_official 87:085cde657901 10 *
mbed_official 532:fe11edbda85c 11 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
mbed_official 87:085cde657901 12 *
mbed_official 87:085cde657901 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 87:085cde657901 14 * are permitted provided that the following conditions are met:
mbed_official 87:085cde657901 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 87:085cde657901 16 * this list of conditions and the following disclaimer.
mbed_official 87:085cde657901 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 87:085cde657901 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 87:085cde657901 19 * and/or other materials provided with the distribution.
mbed_official 87:085cde657901 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 87:085cde657901 21 * may be used to endorse or promote products derived from this software
mbed_official 87:085cde657901 22 * without specific prior written permission.
mbed_official 87:085cde657901 23 *
mbed_official 87:085cde657901 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 87:085cde657901 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 87:085cde657901 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 87:085cde657901 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 87:085cde657901 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 87:085cde657901 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 87:085cde657901 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 87:085cde657901 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 87:085cde657901 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 87:085cde657901 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 87:085cde657901 34 *
mbed_official 87:085cde657901 35 ******************************************************************************
mbed_official 87:085cde657901 36 */
mbed_official 87:085cde657901 37
mbed_official 87:085cde657901 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 87:085cde657901 39 #ifndef __STM32F4xx_HAL_RTC_H
mbed_official 87:085cde657901 40 #define __STM32F4xx_HAL_RTC_H
mbed_official 87:085cde657901 41
mbed_official 87:085cde657901 42 #ifdef __cplusplus
mbed_official 87:085cde657901 43 extern "C" {
mbed_official 87:085cde657901 44 #endif
mbed_official 87:085cde657901 45
mbed_official 87:085cde657901 46 /* Includes ------------------------------------------------------------------*/
mbed_official 87:085cde657901 47 #include "stm32f4xx_hal_def.h"
mbed_official 87:085cde657901 48
mbed_official 87:085cde657901 49 /** @addtogroup STM32F4xx_HAL_Driver
mbed_official 87:085cde657901 50 * @{
mbed_official 87:085cde657901 51 */
mbed_official 87:085cde657901 52
mbed_official 87:085cde657901 53 /** @addtogroup RTC
mbed_official 87:085cde657901 54 * @{
mbed_official 87:085cde657901 55 */
mbed_official 87:085cde657901 56
mbed_official 532:fe11edbda85c 57 /* Exported types ------------------------------------------------------------*/
mbed_official 532:fe11edbda85c 58 /** @defgroup RTC_Exported_Types RTC Exported Types
mbed_official 532:fe11edbda85c 59 * @{
mbed_official 532:fe11edbda85c 60 */
mbed_official 532:fe11edbda85c 61
mbed_official 87:085cde657901 62 /**
mbed_official 87:085cde657901 63 * @brief HAL State structures definition
mbed_official 87:085cde657901 64 */
mbed_official 87:085cde657901 65 typedef enum
mbed_official 87:085cde657901 66 {
mbed_official 87:085cde657901 67 HAL_RTC_STATE_RESET = 0x00, /*!< RTC not yet initialized or disabled */
mbed_official 87:085cde657901 68 HAL_RTC_STATE_READY = 0x01, /*!< RTC initialized and ready for use */
mbed_official 87:085cde657901 69 HAL_RTC_STATE_BUSY = 0x02, /*!< RTC process is ongoing */
mbed_official 87:085cde657901 70 HAL_RTC_STATE_TIMEOUT = 0x03, /*!< RTC timeout state */
mbed_official 87:085cde657901 71 HAL_RTC_STATE_ERROR = 0x04 /*!< RTC error state */
mbed_official 87:085cde657901 72
mbed_official 87:085cde657901 73 }HAL_RTCStateTypeDef;
mbed_official 87:085cde657901 74
mbed_official 87:085cde657901 75 /**
mbed_official 87:085cde657901 76 * @brief RTC Configuration Structure definition
mbed_official 87:085cde657901 77 */
mbed_official 87:085cde657901 78 typedef struct
mbed_official 87:085cde657901 79 {
mbed_official 87:085cde657901 80 uint32_t HourFormat; /*!< Specifies the RTC Hour Format.
mbed_official 87:085cde657901 81 This parameter can be a value of @ref RTC_Hour_Formats */
mbed_official 87:085cde657901 82
mbed_official 87:085cde657901 83 uint32_t AsynchPrediv; /*!< Specifies the RTC Asynchronous Predivider value.
mbed_official 87:085cde657901 84 This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x7F */
mbed_official 87:085cde657901 85
mbed_official 87:085cde657901 86 uint32_t SynchPrediv; /*!< Specifies the RTC Synchronous Predivider value.
mbed_official 87:085cde657901 87 This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x7FFF */
mbed_official 87:085cde657901 88
mbed_official 87:085cde657901 89 uint32_t OutPut; /*!< Specifies which signal will be routed to the RTC output.
mbed_official 87:085cde657901 90 This parameter can be a value of @ref RTC_Output_selection_Definitions */
mbed_official 87:085cde657901 91
mbed_official 87:085cde657901 92 uint32_t OutPutPolarity; /*!< Specifies the polarity of the output signal.
mbed_official 87:085cde657901 93 This parameter can be a value of @ref RTC_Output_Polarity_Definitions */
mbed_official 87:085cde657901 94
mbed_official 87:085cde657901 95 uint32_t OutPutType; /*!< Specifies the RTC Output Pin mode.
mbed_official 87:085cde657901 96 This parameter can be a value of @ref RTC_Output_Type_ALARM_OUT */
mbed_official 87:085cde657901 97 }RTC_InitTypeDef;
mbed_official 87:085cde657901 98
mbed_official 87:085cde657901 99 /**
mbed_official 87:085cde657901 100 * @brief RTC Time structure definition
mbed_official 87:085cde657901 101 */
mbed_official 87:085cde657901 102 typedef struct
mbed_official 87:085cde657901 103 {
mbed_official 87:085cde657901 104 uint8_t Hours; /*!< Specifies the RTC Time Hour.
mbed_official 226:b062af740e40 105 This parameter must be a number between Min_Data = 0 and Max_Data = 12 if the RTC_HourFormat_12 is selected.
mbed_official 87:085cde657901 106 This parameter must be a number between Min_Data = 0 and Max_Data = 23 if the RTC_HourFormat_24 is selected */
mbed_official 87:085cde657901 107
mbed_official 87:085cde657901 108 uint8_t Minutes; /*!< Specifies the RTC Time Minutes.
mbed_official 87:085cde657901 109 This parameter must be a number between Min_Data = 0 and Max_Data = 59 */
mbed_official 87:085cde657901 110
mbed_official 87:085cde657901 111 uint8_t Seconds; /*!< Specifies the RTC Time Seconds.
mbed_official 87:085cde657901 112 This parameter must be a number between Min_Data = 0 and Max_Data = 59 */
mbed_official 87:085cde657901 113
mbed_official 87:085cde657901 114 uint32_t SubSeconds; /*!< Specifies the RTC Time SubSeconds.
mbed_official 87:085cde657901 115 This parameter must be a number between Min_Data = 0 and Max_Data = 59 */
mbed_official 87:085cde657901 116
mbed_official 87:085cde657901 117 uint8_t TimeFormat; /*!< Specifies the RTC AM/PM Time.
mbed_official 87:085cde657901 118 This parameter can be a value of @ref RTC_AM_PM_Definitions */
mbed_official 87:085cde657901 119
mbed_official 226:b062af740e40 120 uint32_t DayLightSaving; /*!< Specifies DayLight Save Operation.
mbed_official 87:085cde657901 121 This parameter can be a value of @ref RTC_DayLightSaving_Definitions */
mbed_official 87:085cde657901 122
mbed_official 87:085cde657901 123 uint32_t StoreOperation; /*!< Specifies RTC_StoreOperation value to be written in the BCK bit
mbed_official 87:085cde657901 124 in CR register to store the operation.
mbed_official 87:085cde657901 125 This parameter can be a value of @ref RTC_StoreOperation_Definitions */
mbed_official 87:085cde657901 126 }RTC_TimeTypeDef;
mbed_official 87:085cde657901 127
mbed_official 87:085cde657901 128 /**
mbed_official 87:085cde657901 129 * @brief RTC Date structure definition
mbed_official 87:085cde657901 130 */
mbed_official 87:085cde657901 131 typedef struct
mbed_official 87:085cde657901 132 {
mbed_official 87:085cde657901 133 uint8_t WeekDay; /*!< Specifies the RTC Date WeekDay.
mbed_official 87:085cde657901 134 This parameter can be a value of @ref RTC_WeekDay_Definitions */
mbed_official 87:085cde657901 135
mbed_official 87:085cde657901 136 uint8_t Month; /*!< Specifies the RTC Date Month (in BCD format).
mbed_official 87:085cde657901 137 This parameter can be a value of @ref RTC_Month_Date_Definitions */
mbed_official 87:085cde657901 138
mbed_official 87:085cde657901 139 uint8_t Date; /*!< Specifies the RTC Date.
mbed_official 87:085cde657901 140 This parameter must be a number between Min_Data = 1 and Max_Data = 31 */
mbed_official 87:085cde657901 141
mbed_official 87:085cde657901 142 uint8_t Year; /*!< Specifies the RTC Date Year.
mbed_official 87:085cde657901 143 This parameter must be a number between Min_Data = 0 and Max_Data = 99 */
mbed_official 87:085cde657901 144
mbed_official 87:085cde657901 145 }RTC_DateTypeDef;
mbed_official 87:085cde657901 146
mbed_official 87:085cde657901 147 /**
mbed_official 87:085cde657901 148 * @brief RTC Alarm structure definition
mbed_official 87:085cde657901 149 */
mbed_official 87:085cde657901 150 typedef struct
mbed_official 87:085cde657901 151 {
mbed_official 87:085cde657901 152 RTC_TimeTypeDef AlarmTime; /*!< Specifies the RTC Alarm Time members */
mbed_official 87:085cde657901 153
mbed_official 87:085cde657901 154 uint32_t AlarmMask; /*!< Specifies the RTC Alarm Masks.
mbed_official 87:085cde657901 155 This parameter can be a value of @ref RTC_AlarmMask_Definitions */
mbed_official 87:085cde657901 156
mbed_official 87:085cde657901 157 uint32_t AlarmSubSecondMask; /*!< Specifies the RTC Alarm SubSeconds Masks.
mbed_official 87:085cde657901 158 This parameter can be a value of @ref RTC_Alarm_Sub_Seconds_Masks_Definitions */
mbed_official 87:085cde657901 159
mbed_official 87:085cde657901 160 uint32_t AlarmDateWeekDaySel; /*!< Specifies the RTC Alarm is on Date or WeekDay.
mbed_official 87:085cde657901 161 This parameter can be a value of @ref RTC_AlarmDateWeekDay_Definitions */
mbed_official 87:085cde657901 162
mbed_official 87:085cde657901 163 uint8_t AlarmDateWeekDay; /*!< Specifies the RTC Alarm Date/WeekDay.
mbed_official 87:085cde657901 164 If the Alarm Date is selected, this parameter must be set to a value in the 1-31 range.
mbed_official 87:085cde657901 165 If the Alarm WeekDay is selected, this parameter can be a value of @ref RTC_WeekDay_Definitions */
mbed_official 87:085cde657901 166
mbed_official 87:085cde657901 167 uint32_t Alarm; /*!< Specifies the alarm .
mbed_official 87:085cde657901 168 This parameter can be a value of @ref RTC_Alarms_Definitions */
mbed_official 87:085cde657901 169 }RTC_AlarmTypeDef;
mbed_official 87:085cde657901 170
mbed_official 87:085cde657901 171 /**
mbed_official 532:fe11edbda85c 172 * @brief RTC Handle Structure definition
mbed_official 87:085cde657901 173 */
mbed_official 87:085cde657901 174 typedef struct
mbed_official 87:085cde657901 175 {
mbed_official 87:085cde657901 176 RTC_TypeDef *Instance; /*!< Register base address */
mbed_official 87:085cde657901 177
mbed_official 87:085cde657901 178 RTC_InitTypeDef Init; /*!< RTC required parameters */
mbed_official 87:085cde657901 179
mbed_official 87:085cde657901 180 HAL_LockTypeDef Lock; /*!< RTC locking object */
mbed_official 87:085cde657901 181
mbed_official 87:085cde657901 182 __IO HAL_RTCStateTypeDef State; /*!< Time communication state */
mbed_official 87:085cde657901 183
mbed_official 87:085cde657901 184 }RTC_HandleTypeDef;
mbed_official 87:085cde657901 185
mbed_official 532:fe11edbda85c 186 /**
mbed_official 532:fe11edbda85c 187 * @}
mbed_official 532:fe11edbda85c 188 */
mbed_official 87:085cde657901 189
mbed_official 532:fe11edbda85c 190 /* Exported constants --------------------------------------------------------*/
mbed_official 532:fe11edbda85c 191 /** @defgroup RTC_Exported_Constants RTC Exported Constants
mbed_official 532:fe11edbda85c 192 * @{
mbed_official 532:fe11edbda85c 193 */
mbed_official 87:085cde657901 194
mbed_official 532:fe11edbda85c 195 /** @defgroup RTC_Hour_Formats RTC Hour Formats
mbed_official 87:085cde657901 196 * @{
mbed_official 87:085cde657901 197 */
mbed_official 87:085cde657901 198 #define RTC_HOURFORMAT_24 ((uint32_t)0x00000000)
mbed_official 87:085cde657901 199 #define RTC_HOURFORMAT_12 ((uint32_t)0x00000040)
mbed_official 87:085cde657901 200 /**
mbed_official 87:085cde657901 201 * @}
mbed_official 87:085cde657901 202 */
mbed_official 87:085cde657901 203
mbed_official 532:fe11edbda85c 204 /** @defgroup RTC_Output_selection_Definitions RTC Output Selection Definitions
mbed_official 87:085cde657901 205 * @{
mbed_official 87:085cde657901 206 */
mbed_official 87:085cde657901 207 #define RTC_OUTPUT_DISABLE ((uint32_t)0x00000000)
mbed_official 87:085cde657901 208 #define RTC_OUTPUT_ALARMA ((uint32_t)0x00200000)
mbed_official 87:085cde657901 209 #define RTC_OUTPUT_ALARMB ((uint32_t)0x00400000)
mbed_official 87:085cde657901 210 #define RTC_OUTPUT_WAKEUP ((uint32_t)0x00600000)
mbed_official 87:085cde657901 211 /**
mbed_official 87:085cde657901 212 * @}
mbed_official 87:085cde657901 213 */
mbed_official 87:085cde657901 214
mbed_official 532:fe11edbda85c 215 /** @defgroup RTC_Output_Polarity_Definitions RTC Output Polarity Definitions
mbed_official 87:085cde657901 216 * @{
mbed_official 87:085cde657901 217 */
mbed_official 87:085cde657901 218 #define RTC_OUTPUT_POLARITY_HIGH ((uint32_t)0x00000000)
mbed_official 87:085cde657901 219 #define RTC_OUTPUT_POLARITY_LOW ((uint32_t)0x00100000)
mbed_official 87:085cde657901 220 /**
mbed_official 87:085cde657901 221 * @}
mbed_official 87:085cde657901 222 */
mbed_official 87:085cde657901 223
mbed_official 532:fe11edbda85c 224 /** @defgroup RTC_Output_Type_ALARM_OUT RTC Output Type ALARM OUT
mbed_official 87:085cde657901 225 * @{
mbed_official 87:085cde657901 226 */
mbed_official 532:fe11edbda85c 227 #define RTC_OUTPUT_TYPE_OPENDRAIN ((uint32_t)0x00000000)
mbed_official 532:fe11edbda85c 228 #define RTC_OUTPUT_TYPE_PUSHPULL ((uint32_t)0x00040000)
mbed_official 87:085cde657901 229 /**
mbed_official 87:085cde657901 230 * @}
mbed_official 87:085cde657901 231 */
mbed_official 87:085cde657901 232
mbed_official 532:fe11edbda85c 233 /** @defgroup RTC_AM_PM_Definitions RTC AM PM Definitions
mbed_official 87:085cde657901 234 * @{
mbed_official 87:085cde657901 235 */
mbed_official 532:fe11edbda85c 236 #define RTC_HOURFORMAT12_AM ((uint8_t)0x00)
mbed_official 532:fe11edbda85c 237 #define RTC_HOURFORMAT12_PM ((uint8_t)0x40)
mbed_official 87:085cde657901 238 /**
mbed_official 87:085cde657901 239 * @}
mbed_official 87:085cde657901 240 */
mbed_official 87:085cde657901 241
mbed_official 532:fe11edbda85c 242 /** @defgroup RTC_DayLightSaving_Definitions RTC DayLight Saving Definitions
mbed_official 87:085cde657901 243 * @{
mbed_official 87:085cde657901 244 */
mbed_official 87:085cde657901 245 #define RTC_DAYLIGHTSAVING_SUB1H ((uint32_t)0x00020000)
mbed_official 87:085cde657901 246 #define RTC_DAYLIGHTSAVING_ADD1H ((uint32_t)0x00010000)
mbed_official 87:085cde657901 247 #define RTC_DAYLIGHTSAVING_NONE ((uint32_t)0x00000000)
mbed_official 87:085cde657901 248 /**
mbed_official 87:085cde657901 249 * @}
mbed_official 87:085cde657901 250 */
mbed_official 87:085cde657901 251
mbed_official 532:fe11edbda85c 252 /** @defgroup RTC_StoreOperation_Definitions RTC Store Operation Definitions
mbed_official 87:085cde657901 253 * @{
mbed_official 87:085cde657901 254 */
mbed_official 87:085cde657901 255 #define RTC_STOREOPERATION_RESET ((uint32_t)0x00000000)
mbed_official 87:085cde657901 256 #define RTC_STOREOPERATION_SET ((uint32_t)0x00040000)
mbed_official 87:085cde657901 257 /**
mbed_official 87:085cde657901 258 * @}
mbed_official 87:085cde657901 259 */
mbed_official 87:085cde657901 260
mbed_official 532:fe11edbda85c 261 /** @defgroup RTC_Input_parameter_format_definitions RTC Input Parameter Format Definitions
mbed_official 87:085cde657901 262 * @{
mbed_official 87:085cde657901 263 */
mbed_official 532:fe11edbda85c 264 #define RTC_FORMAT_BIN ((uint32_t)0x000000000)
mbed_official 532:fe11edbda85c 265 #define RTC_FORMAT_BCD ((uint32_t)0x000000001)
mbed_official 87:085cde657901 266 /**
mbed_official 87:085cde657901 267 * @}
mbed_official 87:085cde657901 268 */
mbed_official 87:085cde657901 269
mbed_official 532:fe11edbda85c 270 /** @defgroup RTC_Month_Date_Definitions RTC Month Date Definitions
mbed_official 87:085cde657901 271 * @{
mbed_official 87:085cde657901 272 */
mbed_official 87:085cde657901 273 /* Coded in BCD format */
mbed_official 87:085cde657901 274 #define RTC_MONTH_JANUARY ((uint8_t)0x01)
mbed_official 87:085cde657901 275 #define RTC_MONTH_FEBRUARY ((uint8_t)0x02)
mbed_official 87:085cde657901 276 #define RTC_MONTH_MARCH ((uint8_t)0x03)
mbed_official 87:085cde657901 277 #define RTC_MONTH_APRIL ((uint8_t)0x04)
mbed_official 87:085cde657901 278 #define RTC_MONTH_MAY ((uint8_t)0x05)
mbed_official 87:085cde657901 279 #define RTC_MONTH_JUNE ((uint8_t)0x06)
mbed_official 87:085cde657901 280 #define RTC_MONTH_JULY ((uint8_t)0x07)
mbed_official 87:085cde657901 281 #define RTC_MONTH_AUGUST ((uint8_t)0x08)
mbed_official 87:085cde657901 282 #define RTC_MONTH_SEPTEMBER ((uint8_t)0x09)
mbed_official 87:085cde657901 283 #define RTC_MONTH_OCTOBER ((uint8_t)0x10)
mbed_official 87:085cde657901 284 #define RTC_MONTH_NOVEMBER ((uint8_t)0x11)
mbed_official 87:085cde657901 285 #define RTC_MONTH_DECEMBER ((uint8_t)0x12)
mbed_official 87:085cde657901 286 /**
mbed_official 87:085cde657901 287 * @}
mbed_official 87:085cde657901 288 */
mbed_official 87:085cde657901 289
mbed_official 532:fe11edbda85c 290 /** @defgroup RTC_WeekDay_Definitions RTC WeekDay Definitions
mbed_official 87:085cde657901 291 * @{
mbed_official 87:085cde657901 292 */
mbed_official 87:085cde657901 293 #define RTC_WEEKDAY_MONDAY ((uint8_t)0x01)
mbed_official 87:085cde657901 294 #define RTC_WEEKDAY_TUESDAY ((uint8_t)0x02)
mbed_official 87:085cde657901 295 #define RTC_WEEKDAY_WEDNESDAY ((uint8_t)0x03)
mbed_official 87:085cde657901 296 #define RTC_WEEKDAY_THURSDAY ((uint8_t)0x04)
mbed_official 87:085cde657901 297 #define RTC_WEEKDAY_FRIDAY ((uint8_t)0x05)
mbed_official 87:085cde657901 298 #define RTC_WEEKDAY_SATURDAY ((uint8_t)0x06)
mbed_official 87:085cde657901 299 #define RTC_WEEKDAY_SUNDAY ((uint8_t)0x07)
mbed_official 87:085cde657901 300 /**
mbed_official 87:085cde657901 301 * @}
mbed_official 87:085cde657901 302 */
mbed_official 87:085cde657901 303
mbed_official 532:fe11edbda85c 304 /** @defgroup RTC_AlarmDateWeekDay_Definitions RTC Alarm Date WeekDay Definitions
mbed_official 87:085cde657901 305 * @{
mbed_official 87:085cde657901 306 */
mbed_official 87:085cde657901 307 #define RTC_ALARMDATEWEEKDAYSEL_DATE ((uint32_t)0x00000000)
mbed_official 87:085cde657901 308 #define RTC_ALARMDATEWEEKDAYSEL_WEEKDAY ((uint32_t)0x40000000)
mbed_official 87:085cde657901 309 /**
mbed_official 87:085cde657901 310 * @}
mbed_official 87:085cde657901 311 */
mbed_official 87:085cde657901 312
mbed_official 532:fe11edbda85c 313 /** @defgroup RTC_AlarmMask_Definitions RTC Alarm Mask Definitions
mbed_official 87:085cde657901 314 * @{
mbed_official 87:085cde657901 315 */
mbed_official 87:085cde657901 316 #define RTC_ALARMMASK_NONE ((uint32_t)0x00000000)
mbed_official 87:085cde657901 317 #define RTC_ALARMMASK_DATEWEEKDAY RTC_ALRMAR_MSK4
mbed_official 87:085cde657901 318 #define RTC_ALARMMASK_HOURS RTC_ALRMAR_MSK3
mbed_official 87:085cde657901 319 #define RTC_ALARMMASK_MINUTES RTC_ALRMAR_MSK2
mbed_official 87:085cde657901 320 #define RTC_ALARMMASK_SECONDS RTC_ALRMAR_MSK1
mbed_official 87:085cde657901 321 #define RTC_ALARMMASK_ALL ((uint32_t)0x80808080)
mbed_official 87:085cde657901 322 /**
mbed_official 87:085cde657901 323 * @}
mbed_official 87:085cde657901 324 */
mbed_official 87:085cde657901 325
mbed_official 532:fe11edbda85c 326 /** @defgroup RTC_Alarms_Definitions RTC Alarms Definitions
mbed_official 87:085cde657901 327 * @{
mbed_official 87:085cde657901 328 */
mbed_official 87:085cde657901 329 #define RTC_ALARM_A RTC_CR_ALRAE
mbed_official 87:085cde657901 330 #define RTC_ALARM_B RTC_CR_ALRBE
mbed_official 87:085cde657901 331 /**
mbed_official 87:085cde657901 332 * @}
mbed_official 87:085cde657901 333 */
mbed_official 87:085cde657901 334
mbed_official 532:fe11edbda85c 335 /** @defgroup RTC_Alarm_Sub_Seconds_Masks_Definitions RTC Alarm Sub Seconds Masks Definitions
mbed_official 87:085cde657901 336 * @{
mbed_official 87:085cde657901 337 */
mbed_official 87:085cde657901 338 #define RTC_ALARMSUBSECONDMASK_ALL ((uint32_t)0x00000000) /*!< All Alarm SS fields are masked.
mbed_official 87:085cde657901 339 There is no comparison on sub seconds
mbed_official 87:085cde657901 340 for Alarm */
mbed_official 87:085cde657901 341 #define RTC_ALARMSUBSECONDMASK_SS14_1 ((uint32_t)0x01000000) /*!< SS[14:1] are don't care in Alarm
mbed_official 87:085cde657901 342 comparison. Only SS[0] is compared. */
mbed_official 87:085cde657901 343 #define RTC_ALARMSUBSECONDMASK_SS14_2 ((uint32_t)0x02000000) /*!< SS[14:2] are don't care in Alarm
mbed_official 87:085cde657901 344 comparison. Only SS[1:0] are compared */
mbed_official 87:085cde657901 345 #define RTC_ALARMSUBSECONDMASK_SS14_3 ((uint32_t)0x03000000) /*!< SS[14:3] are don't care in Alarm
mbed_official 87:085cde657901 346 comparison. Only SS[2:0] are compared */
mbed_official 87:085cde657901 347 #define RTC_ALARMSUBSECONDMASK_SS14_4 ((uint32_t)0x04000000) /*!< SS[14:4] are don't care in Alarm
mbed_official 87:085cde657901 348 comparison. Only SS[3:0] are compared */
mbed_official 87:085cde657901 349 #define RTC_ALARMSUBSECONDMASK_SS14_5 ((uint32_t)0x05000000) /*!< SS[14:5] are don't care in Alarm
mbed_official 87:085cde657901 350 comparison. Only SS[4:0] are compared */
mbed_official 87:085cde657901 351 #define RTC_ALARMSUBSECONDMASK_SS14_6 ((uint32_t)0x06000000) /*!< SS[14:6] are don't care in Alarm
mbed_official 87:085cde657901 352 comparison. Only SS[5:0] are compared */
mbed_official 87:085cde657901 353 #define RTC_ALARMSUBSECONDMASK_SS14_7 ((uint32_t)0x07000000) /*!< SS[14:7] are don't care in Alarm
mbed_official 87:085cde657901 354 comparison. Only SS[6:0] are compared */
mbed_official 87:085cde657901 355 #define RTC_ALARMSUBSECONDMASK_SS14_8 ((uint32_t)0x08000000) /*!< SS[14:8] are don't care in Alarm
mbed_official 87:085cde657901 356 comparison. Only SS[7:0] are compared */
mbed_official 87:085cde657901 357 #define RTC_ALARMSUBSECONDMASK_SS14_9 ((uint32_t)0x09000000) /*!< SS[14:9] are don't care in Alarm
mbed_official 87:085cde657901 358 comparison. Only SS[8:0] are compared */
mbed_official 87:085cde657901 359 #define RTC_ALARMSUBSECONDMASK_SS14_10 ((uint32_t)0x0A000000) /*!< SS[14:10] are don't care in Alarm
mbed_official 87:085cde657901 360 comparison. Only SS[9:0] are compared */
mbed_official 87:085cde657901 361 #define RTC_ALARMSUBSECONDMASK_SS14_11 ((uint32_t)0x0B000000) /*!< SS[14:11] are don't care in Alarm
mbed_official 87:085cde657901 362 comparison. Only SS[10:0] are compared */
mbed_official 87:085cde657901 363 #define RTC_ALARMSUBSECONDMASK_SS14_12 ((uint32_t)0x0C000000) /*!< SS[14:12] are don't care in Alarm
mbed_official 87:085cde657901 364 comparison.Only SS[11:0] are compared */
mbed_official 87:085cde657901 365 #define RTC_ALARMSUBSECONDMASK_SS14_13 ((uint32_t)0x0D000000) /*!< SS[14:13] are don't care in Alarm
mbed_official 87:085cde657901 366 comparison. Only SS[12:0] are compared */
mbed_official 87:085cde657901 367 #define RTC_ALARMSUBSECONDMASK_SS14 ((uint32_t)0x0E000000) /*!< SS[14] is don't care in Alarm
mbed_official 87:085cde657901 368 comparison.Only SS[13:0] are compared */
mbed_official 532:fe11edbda85c 369 #define RTC_ALARMSUBSECONDMASK_NONE ((uint32_t)0x0F000000) /*!< SS[14:0] are compared and must match
mbed_official 87:085cde657901 370 to activate alarm. */
mbed_official 87:085cde657901 371 /**
mbed_official 87:085cde657901 372 * @}
mbed_official 87:085cde657901 373 */
mbed_official 87:085cde657901 374
mbed_official 532:fe11edbda85c 375 /** @defgroup RTC_Interrupts_Definitions RTC Interrupts Definitions
mbed_official 87:085cde657901 376 * @{
mbed_official 87:085cde657901 377 */
mbed_official 87:085cde657901 378 #define RTC_IT_TS ((uint32_t)0x00008000)
mbed_official 87:085cde657901 379 #define RTC_IT_WUT ((uint32_t)0x00004000)
mbed_official 87:085cde657901 380 #define RTC_IT_ALRB ((uint32_t)0x00002000)
mbed_official 87:085cde657901 381 #define RTC_IT_ALRA ((uint32_t)0x00001000)
mbed_official 87:085cde657901 382 #define RTC_IT_TAMP ((uint32_t)0x00000004) /* Used only to Enable the Tamper Interrupt */
mbed_official 87:085cde657901 383 #define RTC_IT_TAMP1 ((uint32_t)0x00020000)
mbed_official 87:085cde657901 384 #define RTC_IT_TAMP2 ((uint32_t)0x00040000)
mbed_official 87:085cde657901 385 /**
mbed_official 87:085cde657901 386 * @}
mbed_official 87:085cde657901 387 */
mbed_official 87:085cde657901 388
mbed_official 532:fe11edbda85c 389 /** @defgroup RTC_Flags_Definitions RTC Flags Definitions
mbed_official 87:085cde657901 390 * @{
mbed_official 87:085cde657901 391 */
mbed_official 87:085cde657901 392 #define RTC_FLAG_RECALPF ((uint32_t)0x00010000)
mbed_official 87:085cde657901 393 #define RTC_FLAG_TAMP2F ((uint32_t)0x00004000)
mbed_official 87:085cde657901 394 #define RTC_FLAG_TAMP1F ((uint32_t)0x00002000)
mbed_official 87:085cde657901 395 #define RTC_FLAG_TSOVF ((uint32_t)0x00001000)
mbed_official 87:085cde657901 396 #define RTC_FLAG_TSF ((uint32_t)0x00000800)
mbed_official 87:085cde657901 397 #define RTC_FLAG_WUTF ((uint32_t)0x00000400)
mbed_official 87:085cde657901 398 #define RTC_FLAG_ALRBF ((uint32_t)0x00000200)
mbed_official 87:085cde657901 399 #define RTC_FLAG_ALRAF ((uint32_t)0x00000100)
mbed_official 87:085cde657901 400 #define RTC_FLAG_INITF ((uint32_t)0x00000040)
mbed_official 87:085cde657901 401 #define RTC_FLAG_RSF ((uint32_t)0x00000020)
mbed_official 87:085cde657901 402 #define RTC_FLAG_INITS ((uint32_t)0x00000010)
mbed_official 87:085cde657901 403 #define RTC_FLAG_SHPF ((uint32_t)0x00000008)
mbed_official 87:085cde657901 404 #define RTC_FLAG_WUTWF ((uint32_t)0x00000004)
mbed_official 87:085cde657901 405 #define RTC_FLAG_ALRBWF ((uint32_t)0x00000002)
mbed_official 87:085cde657901 406 #define RTC_FLAG_ALRAWF ((uint32_t)0x00000001)
mbed_official 87:085cde657901 407 /**
mbed_official 87:085cde657901 408 * @}
mbed_official 87:085cde657901 409 */
mbed_official 87:085cde657901 410
mbed_official 87:085cde657901 411 /**
mbed_official 87:085cde657901 412 * @}
mbed_official 87:085cde657901 413 */
mbed_official 87:085cde657901 414
mbed_official 87:085cde657901 415 /* Exported macro ------------------------------------------------------------*/
mbed_official 532:fe11edbda85c 416 /** @defgroup RTC_Exported_Macros RTC Exported Macros
mbed_official 532:fe11edbda85c 417 * @{
mbed_official 532:fe11edbda85c 418 */
mbed_official 87:085cde657901 419
mbed_official 226:b062af740e40 420 /** @brief Reset RTC handle state
mbed_official 226:b062af740e40 421 * @param __HANDLE__: specifies the RTC handle.
mbed_official 226:b062af740e40 422 * @retval None
mbed_official 226:b062af740e40 423 */
mbed_official 226:b062af740e40 424 #define __HAL_RTC_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_RTC_STATE_RESET)
mbed_official 226:b062af740e40 425
mbed_official 87:085cde657901 426 /**
mbed_official 87:085cde657901 427 * @brief Disable the write protection for RTC registers.
mbed_official 87:085cde657901 428 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 429 * @retval None
mbed_official 87:085cde657901 430 */
mbed_official 87:085cde657901 431 #define __HAL_RTC_WRITEPROTECTION_DISABLE(__HANDLE__) \
mbed_official 87:085cde657901 432 do{ \
mbed_official 87:085cde657901 433 (__HANDLE__)->Instance->WPR = 0xCA; \
mbed_official 87:085cde657901 434 (__HANDLE__)->Instance->WPR = 0x53; \
mbed_official 87:085cde657901 435 } while(0)
mbed_official 87:085cde657901 436
mbed_official 87:085cde657901 437 /**
mbed_official 87:085cde657901 438 * @brief Enable the write protection for RTC registers.
mbed_official 87:085cde657901 439 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 440 * @retval None
mbed_official 87:085cde657901 441 */
mbed_official 87:085cde657901 442 #define __HAL_RTC_WRITEPROTECTION_ENABLE(__HANDLE__) \
mbed_official 87:085cde657901 443 do{ \
mbed_official 87:085cde657901 444 (__HANDLE__)->Instance->WPR = 0xFF; \
mbed_official 87:085cde657901 445 } while(0)
mbed_official 87:085cde657901 446
mbed_official 87:085cde657901 447 /**
mbed_official 87:085cde657901 448 * @brief Enable the RTC ALARMA peripheral.
mbed_official 87:085cde657901 449 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 450 * @retval None
mbed_official 87:085cde657901 451 */
mbed_official 87:085cde657901 452 #define __HAL_RTC_ALARMA_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR |= (RTC_CR_ALRAE))
mbed_official 87:085cde657901 453
mbed_official 87:085cde657901 454 /**
mbed_official 87:085cde657901 455 * @brief Disable the RTC ALARMA peripheral.
mbed_official 87:085cde657901 456 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 457 * @retval None
mbed_official 87:085cde657901 458 */
mbed_official 87:085cde657901 459 #define __HAL_RTC_ALARMA_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR &= ~(RTC_CR_ALRAE))
mbed_official 87:085cde657901 460
mbed_official 87:085cde657901 461 /**
mbed_official 87:085cde657901 462 * @brief Enable the RTC ALARMB peripheral.
mbed_official 87:085cde657901 463 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 464 * @retval None
mbed_official 87:085cde657901 465 */
mbed_official 87:085cde657901 466 #define __HAL_RTC_ALARMB_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR |= (RTC_CR_ALRBE))
mbed_official 87:085cde657901 467
mbed_official 87:085cde657901 468 /**
mbed_official 87:085cde657901 469 * @brief Disable the RTC ALARMB peripheral.
mbed_official 87:085cde657901 470 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 471 * @retval None
mbed_official 87:085cde657901 472 */
mbed_official 87:085cde657901 473 #define __HAL_RTC_ALARMB_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR &= ~(RTC_CR_ALRBE))
mbed_official 87:085cde657901 474
mbed_official 87:085cde657901 475 /**
mbed_official 87:085cde657901 476 * @brief Enable the RTC Alarm interrupt.
mbed_official 87:085cde657901 477 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 478 * @param __INTERRUPT__: specifies the RTC Alarm interrupt sources to be enabled or disabled.
mbed_official 87:085cde657901 479 * This parameter can be any combination of the following values:
mbed_official 87:085cde657901 480 * @arg RTC_IT_ALRA: Alarm A interrupt
mbed_official 87:085cde657901 481 * @arg RTC_IT_ALRB: Alarm B interrupt
mbed_official 87:085cde657901 482 * @retval None
mbed_official 87:085cde657901 483 */
mbed_official 87:085cde657901 484 #define __HAL_RTC_ALARM_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR |= (__INTERRUPT__))
mbed_official 87:085cde657901 485
mbed_official 87:085cde657901 486 /**
mbed_official 87:085cde657901 487 * @brief Disable the RTC Alarm interrupt.
mbed_official 87:085cde657901 488 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 489 * @param __INTERRUPT__: specifies the RTC Alarm interrupt sources to be enabled or disabled.
mbed_official 87:085cde657901 490 * This parameter can be any combination of the following values:
mbed_official 87:085cde657901 491 * @arg RTC_IT_ALRA: Alarm A interrupt
mbed_official 87:085cde657901 492 * @arg RTC_IT_ALRB: Alarm B interrupt
mbed_official 87:085cde657901 493 * @retval None
mbed_official 87:085cde657901 494 */
mbed_official 87:085cde657901 495 #define __HAL_RTC_ALARM_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR &= ~(__INTERRUPT__))
mbed_official 87:085cde657901 496
mbed_official 87:085cde657901 497 /**
mbed_official 87:085cde657901 498 * @brief Check whether the specified RTC Alarm interrupt has occurred or not.
mbed_official 87:085cde657901 499 * @param __HANDLE__: specifies the RTC handle.
mbed_official 532:fe11edbda85c 500 * @param __INTERRUPT__: specifies the RTC Alarm interrupt to check.
mbed_official 87:085cde657901 501 * This parameter can be:
mbed_official 87:085cde657901 502 * @arg RTC_IT_ALRA: Alarm A interrupt
mbed_official 87:085cde657901 503 * @arg RTC_IT_ALRB: Alarm B interrupt
mbed_official 87:085cde657901 504 * @retval None
mbed_official 87:085cde657901 505 */
mbed_official 532:fe11edbda85c 506 #define __HAL_RTC_ALARM_GET_IT(__HANDLE__, __INTERRUPT__) ((((((__HANDLE__)->Instance->ISR)& ((__INTERRUPT__)>> 4)) & 0x0000FFFF) != RESET)? SET : RESET)
mbed_official 87:085cde657901 507
mbed_official 87:085cde657901 508 /**
mbed_official 87:085cde657901 509 * @brief Get the selected RTC Alarm's flag status.
mbed_official 87:085cde657901 510 * @param __HANDLE__: specifies the RTC handle.
mbed_official 532:fe11edbda85c 511 * @param __FLAG__: specifies the RTC Alarm Flag to check.
mbed_official 87:085cde657901 512 * This parameter can be:
mbed_official 87:085cde657901 513 * @arg RTC_FLAG_ALRAF
mbed_official 87:085cde657901 514 * @arg RTC_FLAG_ALRBF
mbed_official 87:085cde657901 515 * @arg RTC_FLAG_ALRAWF
mbed_official 87:085cde657901 516 * @arg RTC_FLAG_ALRBWF
mbed_official 87:085cde657901 517 * @retval None
mbed_official 87:085cde657901 518 */
mbed_official 87:085cde657901 519 #define __HAL_RTC_ALARM_GET_FLAG(__HANDLE__, __FLAG__) (((((__HANDLE__)->Instance->ISR) & (__FLAG__)) != RESET)? SET : RESET)
mbed_official 87:085cde657901 520
mbed_official 87:085cde657901 521 /**
mbed_official 87:085cde657901 522 * @brief Clear the RTC Alarm's pending flags.
mbed_official 87:085cde657901 523 * @param __HANDLE__: specifies the RTC handle.
mbed_official 87:085cde657901 524 * @param __FLAG__: specifies the RTC Alarm Flag sources to be enabled or disabled.
mbed_official 87:085cde657901 525 * This parameter can be:
mbed_official 87:085cde657901 526 * @arg RTC_FLAG_ALRAF
mbed_official 87:085cde657901 527 * @arg RTC_FLAG_ALRBF
mbed_official 87:085cde657901 528 * @retval None
mbed_official 87:085cde657901 529 */
mbed_official 87:085cde657901 530 #define __HAL_RTC_ALARM_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->ISR) = (~(((__FLAG__) | RTC_ISR_INIT)& 0x0000FFFF)|((__HANDLE__)->Instance->ISR & RTC_ISR_INIT))
mbed_official 87:085cde657901 531
mbed_official 87:085cde657901 532
mbed_official 87:085cde657901 533 /**
mbed_official 532:fe11edbda85c 534 * @brief Check whether the specified RTC Alarm interrupt has been enabled or not.
mbed_official 532:fe11edbda85c 535 * @param __HANDLE__: specifies the RTC handle.
mbed_official 532:fe11edbda85c 536 * @param __INTERRUPT__: specifies the RTC Alarm interrupt sources to check.
mbed_official 87:085cde657901 537 * This parameter can be:
mbed_official 532:fe11edbda85c 538 * @arg RTC_IT_ALRA: Alarm A interrupt
mbed_official 532:fe11edbda85c 539 * @arg RTC_IT_ALRB: Alarm B interrupt
mbed_official 87:085cde657901 540 * @retval None
mbed_official 369:2e96f1b71984 541 */
mbed_official 532:fe11edbda85c 542 #define __HAL_RTC_ALARM_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) (((((__HANDLE__)->Instance->CR) & (__INTERRUPT__)) != RESET) ? SET : RESET)
mbed_official 87:085cde657901 543
mbed_official 87:085cde657901 544 /**
mbed_official 532:fe11edbda85c 545 * @brief Enable interrupt on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 546 * @retval None
mbed_official 532:fe11edbda85c 547 */
mbed_official 532:fe11edbda85c 548 #define __HAL_RTC_ALARM_EXTI_ENABLE_IT() (EXTI->IMR |= RTC_EXTI_LINE_ALARM_EVENT)
mbed_official 532:fe11edbda85c 549
mbed_official 532:fe11edbda85c 550 /**
mbed_official 532:fe11edbda85c 551 * @brief Disable interrupt on the RTC Alarm associated Exti line.
mbed_official 87:085cde657901 552 * @retval None
mbed_official 87:085cde657901 553 */
mbed_official 532:fe11edbda85c 554 #define __HAL_RTC_ALARM_EXTI_DISABLE_IT() (EXTI->IMR &= ~(RTC_EXTI_LINE_ALARM_EVENT))
mbed_official 532:fe11edbda85c 555
mbed_official 532:fe11edbda85c 556 /**
mbed_official 532:fe11edbda85c 557 * @brief Enable event on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 558 * @retval None.
mbed_official 532:fe11edbda85c 559 */
mbed_official 532:fe11edbda85c 560 #define __HAL_RTC_ALARM_EXTI_ENABLE_EVENT() (EXTI->EMR |= RTC_EXTI_LINE_ALARM_EVENT)
mbed_official 532:fe11edbda85c 561
mbed_official 532:fe11edbda85c 562 /**
mbed_official 532:fe11edbda85c 563 * @brief Disable event on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 564 * @retval None.
mbed_official 532:fe11edbda85c 565 */
mbed_official 532:fe11edbda85c 566 #define __HAL_RTC_ALARM_EXTI_DISABLE_EVENT() (EXTI->EMR &= ~(RTC_EXTI_LINE_ALARM_EVENT))
mbed_official 369:2e96f1b71984 567
mbed_official 532:fe11edbda85c 568 /**
mbed_official 532:fe11edbda85c 569 * @brief Enable falling edge trigger on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 570 * @retval None.
mbed_official 532:fe11edbda85c 571 */
mbed_official 532:fe11edbda85c 572 #define __HAL_RTC_ALARM_EXTI_ENABLE_FALLING_EDGE() (EXTI->FTSR |= RTC_EXTI_LINE_ALARM_EVENT)
mbed_official 532:fe11edbda85c 573
mbed_official 532:fe11edbda85c 574 /**
mbed_official 532:fe11edbda85c 575 * @brief Disable falling edge trigger on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 576 * @retval None.
mbed_official 532:fe11edbda85c 577 */
mbed_official 532:fe11edbda85c 578 #define __HAL_RTC_ALARM_EXTI_DISABLE_FALLING_EDGE() (EXTI->FTSR &= ~(RTC_EXTI_LINE_ALARM_EVENT))
mbed_official 532:fe11edbda85c 579
mbed_official 532:fe11edbda85c 580 /**
mbed_official 532:fe11edbda85c 581 * @brief Enable rising edge trigger on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 582 * @retval None.
mbed_official 532:fe11edbda85c 583 */
mbed_official 532:fe11edbda85c 584 #define __HAL_RTC_ALARM_EXTI_ENABLE_RISING_EDGE() (EXTI->RTSR |= RTC_EXTI_LINE_ALARM_EVENT)
mbed_official 369:2e96f1b71984 585
mbed_official 369:2e96f1b71984 586 /**
mbed_official 532:fe11edbda85c 587 * @brief Disable rising edge trigger on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 588 * @retval None.
mbed_official 369:2e96f1b71984 589 */
mbed_official 532:fe11edbda85c 590 #define __HAL_RTC_ALARM_EXTI_DISABLE_RISING_EDGE() (EXTI->RTSR &= ~(RTC_EXTI_LINE_ALARM_EVENT))
mbed_official 532:fe11edbda85c 591
mbed_official 532:fe11edbda85c 592 /**
mbed_official 532:fe11edbda85c 593 * @brief Enable rising & falling edge trigger on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 594 * @retval None.
mbed_official 532:fe11edbda85c 595 */
mbed_official 532:fe11edbda85c 596 #define __HAL_RTC_ALARM_EXTI_ENABLE_RISING_FALLING_EDGE() __HAL_RTC_ALARM_EXTI_ENABLE_RISING_EDGE();__HAL_RTC_ALARM_EXTI_ENABLE_FALLING_EDGE();
mbed_official 532:fe11edbda85c 597
mbed_official 532:fe11edbda85c 598 /**
mbed_official 532:fe11edbda85c 599 * @brief Disable rising & falling edge trigger on the RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 600 * @retval None.
mbed_official 532:fe11edbda85c 601 */
mbed_official 532:fe11edbda85c 602 #define __HAL_RTC_ALARM_EXTI_DISABLE_RISING_FALLING_EDGE() __HAL_RTC_ALARM_EXTI_DISABLE_RISING_EDGE();__HAL_RTC_ALARM_EXTI_DISABLE_FALLING_EDGE();
mbed_official 87:085cde657901 603
mbed_official 87:085cde657901 604 /**
mbed_official 532:fe11edbda85c 605 * @brief Check whether the RTC Alarm associated Exti line interrupt flag is set or not.
mbed_official 532:fe11edbda85c 606 * @retval Line Status.
mbed_official 532:fe11edbda85c 607 */
mbed_official 532:fe11edbda85c 608 #define __HAL_RTC_ALARM_EXTI_GET_FLAG() (EXTI->PR & RTC_EXTI_LINE_ALARM_EVENT)
mbed_official 532:fe11edbda85c 609
mbed_official 532:fe11edbda85c 610 /**
mbed_official 532:fe11edbda85c 611 * @brief Clear the RTC Alarm associated Exti line flag.
mbed_official 532:fe11edbda85c 612 * @retval None.
mbed_official 87:085cde657901 613 */
mbed_official 532:fe11edbda85c 614 #define __HAL_RTC_ALARM_EXTI_CLEAR_FLAG() (EXTI->PR = RTC_EXTI_LINE_ALARM_EVENT)
mbed_official 369:2e96f1b71984 615
mbed_official 532:fe11edbda85c 616 /**
mbed_official 532:fe11edbda85c 617 * @brief Generate a Software interrupt on RTC Alarm associated Exti line.
mbed_official 532:fe11edbda85c 618 * @retval None.
mbed_official 532:fe11edbda85c 619 */
mbed_official 532:fe11edbda85c 620 #define __HAL_RTC_ALARM_EXTI_GENERATE_SWIT() (EXTI->SWIER |= RTC_EXTI_LINE_ALARM_EVENT)
mbed_official 532:fe11edbda85c 621 /**
mbed_official 532:fe11edbda85c 622 * @}
mbed_official 532:fe11edbda85c 623 */
mbed_official 87:085cde657901 624
mbed_official 87:085cde657901 625 /* Include RTC HAL Extension module */
mbed_official 87:085cde657901 626 #include "stm32f4xx_hal_rtc_ex.h"
mbed_official 87:085cde657901 627
mbed_official 87:085cde657901 628 /* Exported functions --------------------------------------------------------*/
mbed_official 532:fe11edbda85c 629 /** @addtogroup RTC_Exported_Functions
mbed_official 532:fe11edbda85c 630 * @{
mbed_official 532:fe11edbda85c 631 */
mbed_official 87:085cde657901 632
mbed_official 532:fe11edbda85c 633 /** @addtogroup RTC_Exported_Functions_Group1
mbed_official 532:fe11edbda85c 634 * @{
mbed_official 532:fe11edbda85c 635 */
mbed_official 87:085cde657901 636 /* Initialization and de-initialization functions ****************************/
mbed_official 87:085cde657901 637 HAL_StatusTypeDef HAL_RTC_Init(RTC_HandleTypeDef *hrtc);
mbed_official 87:085cde657901 638 HAL_StatusTypeDef HAL_RTC_DeInit(RTC_HandleTypeDef *hrtc);
mbed_official 106:ced8cbb51063 639 void HAL_RTC_MspInit(RTC_HandleTypeDef *hrtc);
mbed_official 106:ced8cbb51063 640 void HAL_RTC_MspDeInit(RTC_HandleTypeDef *hrtc);
mbed_official 532:fe11edbda85c 641 /**
mbed_official 532:fe11edbda85c 642 * @}
mbed_official 532:fe11edbda85c 643 */
mbed_official 87:085cde657901 644
mbed_official 532:fe11edbda85c 645 /** @addtogroup RTC_Exported_Functions_Group2
mbed_official 532:fe11edbda85c 646 * @{
mbed_official 532:fe11edbda85c 647 */
mbed_official 87:085cde657901 648 /* RTC Time and Date functions ************************************************/
mbed_official 87:085cde657901 649 HAL_StatusTypeDef HAL_RTC_SetTime(RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format);
mbed_official 87:085cde657901 650 HAL_StatusTypeDef HAL_RTC_GetTime(RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format);
mbed_official 87:085cde657901 651 HAL_StatusTypeDef HAL_RTC_SetDate(RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format);
mbed_official 87:085cde657901 652 HAL_StatusTypeDef HAL_RTC_GetDate(RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format);
mbed_official 532:fe11edbda85c 653 /**
mbed_official 532:fe11edbda85c 654 * @}
mbed_official 532:fe11edbda85c 655 */
mbed_official 87:085cde657901 656
mbed_official 532:fe11edbda85c 657 /** @addtogroup RTC_Exported_Functions_Group3
mbed_official 532:fe11edbda85c 658 * @{
mbed_official 532:fe11edbda85c 659 */
mbed_official 87:085cde657901 660 /* RTC Alarm functions ********************************************************/
mbed_official 87:085cde657901 661 HAL_StatusTypeDef HAL_RTC_SetAlarm(RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Format);
mbed_official 87:085cde657901 662 HAL_StatusTypeDef HAL_RTC_SetAlarm_IT(RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Format);
mbed_official 87:085cde657901 663 HAL_StatusTypeDef HAL_RTC_DeactivateAlarm(RTC_HandleTypeDef *hrtc, uint32_t Alarm);
mbed_official 87:085cde657901 664 HAL_StatusTypeDef HAL_RTC_GetAlarm(RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Alarm, uint32_t Format);
mbed_official 87:085cde657901 665 void HAL_RTC_AlarmIRQHandler(RTC_HandleTypeDef *hrtc);
mbed_official 87:085cde657901 666 HAL_StatusTypeDef HAL_RTC_PollForAlarmAEvent(RTC_HandleTypeDef *hrtc, uint32_t Timeout);
mbed_official 106:ced8cbb51063 667 void HAL_RTC_AlarmAEventCallback(RTC_HandleTypeDef *hrtc);
mbed_official 532:fe11edbda85c 668 /**
mbed_official 532:fe11edbda85c 669 * @}
mbed_official 532:fe11edbda85c 670 */
mbed_official 87:085cde657901 671
mbed_official 532:fe11edbda85c 672 /** @addtogroup RTC_Exported_Functions_Group4
mbed_official 532:fe11edbda85c 673 * @{
mbed_official 532:fe11edbda85c 674 */
mbed_official 87:085cde657901 675 /* Peripheral Control functions ***********************************************/
mbed_official 87:085cde657901 676 HAL_StatusTypeDef HAL_RTC_WaitForSynchro(RTC_HandleTypeDef* hrtc);
mbed_official 532:fe11edbda85c 677 /**
mbed_official 532:fe11edbda85c 678 * @}
mbed_official 532:fe11edbda85c 679 */
mbed_official 87:085cde657901 680
mbed_official 532:fe11edbda85c 681 /** @addtogroup RTC_Exported_Functions_Group5
mbed_official 532:fe11edbda85c 682 * @{
mbed_official 532:fe11edbda85c 683 */
mbed_official 87:085cde657901 684 /* Peripheral State functions *************************************************/
mbed_official 87:085cde657901 685 HAL_RTCStateTypeDef HAL_RTC_GetState(RTC_HandleTypeDef *hrtc);
mbed_official 532:fe11edbda85c 686 /**
mbed_official 532:fe11edbda85c 687 * @}
mbed_official 532:fe11edbda85c 688 */
mbed_official 87:085cde657901 689
mbed_official 532:fe11edbda85c 690 /**
mbed_official 532:fe11edbda85c 691 * @}
mbed_official 532:fe11edbda85c 692 */
mbed_official 532:fe11edbda85c 693
mbed_official 532:fe11edbda85c 694 /* Private types -------------------------------------------------------------*/
mbed_official 532:fe11edbda85c 695 /* Private variables ---------------------------------------------------------*/
mbed_official 532:fe11edbda85c 696 /* Private constants ---------------------------------------------------------*/
mbed_official 532:fe11edbda85c 697 /** @defgroup RTC_Private_Constants RTC Private Constants
mbed_official 532:fe11edbda85c 698 * @{
mbed_official 532:fe11edbda85c 699 */
mbed_official 532:fe11edbda85c 700 /* Masks Definition */
mbed_official 532:fe11edbda85c 701 #define RTC_TR_RESERVED_MASK ((uint32_t)0x007F7F7F)
mbed_official 532:fe11edbda85c 702 #define RTC_DR_RESERVED_MASK ((uint32_t)0x00FFFF3F)
mbed_official 532:fe11edbda85c 703 #define RTC_INIT_MASK ((uint32_t)0xFFFFFFFF)
mbed_official 532:fe11edbda85c 704 #define RTC_RSF_MASK ((uint32_t)0xFFFFFF5F)
mbed_official 532:fe11edbda85c 705 #define RTC_FLAGS_MASK ((uint32_t)(RTC_FLAG_TSOVF | RTC_FLAG_TSF | RTC_FLAG_WUTF | \
mbed_official 532:fe11edbda85c 706 RTC_FLAG_ALRBF | RTC_FLAG_ALRAF | RTC_FLAG_INITF | \
mbed_official 532:fe11edbda85c 707 RTC_FLAG_RSF | RTC_FLAG_INITS | RTC_FLAG_WUTWF | \
mbed_official 532:fe11edbda85c 708 RTC_FLAG_ALRBWF | RTC_FLAG_ALRAWF | RTC_FLAG_TAMP1F | \
mbed_official 532:fe11edbda85c 709 RTC_FLAG_RECALPF | RTC_FLAG_SHPF))
mbed_official 532:fe11edbda85c 710
mbed_official 532:fe11edbda85c 711 #define RTC_TIMEOUT_VALUE 1000
mbed_official 532:fe11edbda85c 712
mbed_official 532:fe11edbda85c 713 #define RTC_EXTI_LINE_ALARM_EVENT ((uint32_t)EXTI_IMR_MR17) /*!< External interrupt line 17 Connected to the RTC Alarm event */
mbed_official 532:fe11edbda85c 714 /**
mbed_official 532:fe11edbda85c 715 * @}
mbed_official 532:fe11edbda85c 716 */
mbed_official 532:fe11edbda85c 717
mbed_official 532:fe11edbda85c 718 /* Private macros ------------------------------------------------------------*/
mbed_official 532:fe11edbda85c 719 /** @defgroup RTC_Private_Macros RTC Private Macros
mbed_official 532:fe11edbda85c 720 * @{
mbed_official 532:fe11edbda85c 721 */
mbed_official 532:fe11edbda85c 722
mbed_official 532:fe11edbda85c 723 /** @defgroup RTC_IS_RTC_Definitions RTC Private macros to check input parameters
mbed_official 532:fe11edbda85c 724 * @{
mbed_official 532:fe11edbda85c 725 */
mbed_official 532:fe11edbda85c 726 #define IS_RTC_HOUR_FORMAT(FORMAT) (((FORMAT) == RTC_HOURFORMAT_12) || \
mbed_official 532:fe11edbda85c 727 ((FORMAT) == RTC_HOURFORMAT_24))
mbed_official 532:fe11edbda85c 728 #define IS_RTC_OUTPUT(OUTPUT) (((OUTPUT) == RTC_OUTPUT_DISABLE) || \
mbed_official 532:fe11edbda85c 729 ((OUTPUT) == RTC_OUTPUT_ALARMA) || \
mbed_official 532:fe11edbda85c 730 ((OUTPUT) == RTC_OUTPUT_ALARMB) || \
mbed_official 532:fe11edbda85c 731 ((OUTPUT) == RTC_OUTPUT_WAKEUP))
mbed_official 532:fe11edbda85c 732 #define IS_RTC_OUTPUT_POL(POL) (((POL) == RTC_OUTPUT_POLARITY_HIGH) || \
mbed_official 532:fe11edbda85c 733 ((POL) == RTC_OUTPUT_POLARITY_LOW))
mbed_official 532:fe11edbda85c 734 #define IS_RTC_OUTPUT_TYPE(TYPE) (((TYPE) == RTC_OUTPUT_TYPE_OPENDRAIN) || \
mbed_official 532:fe11edbda85c 735 ((TYPE) == RTC_OUTPUT_TYPE_PUSHPULL))
mbed_official 532:fe11edbda85c 736 #define IS_RTC_HOUR12(HOUR) (((HOUR) > (uint32_t)0) && ((HOUR) <= (uint32_t)12))
mbed_official 532:fe11edbda85c 737 #define IS_RTC_HOUR24(HOUR) ((HOUR) <= (uint32_t)23)
mbed_official 532:fe11edbda85c 738 #define IS_RTC_ASYNCH_PREDIV(PREDIV) ((PREDIV) <= (uint32_t)0x7F)
mbed_official 532:fe11edbda85c 739 #define IS_RTC_SYNCH_PREDIV(PREDIV) ((PREDIV) <= (uint32_t)0x7FFF)
mbed_official 532:fe11edbda85c 740 #define IS_RTC_MINUTES(MINUTES) ((MINUTES) <= (uint32_t)59)
mbed_official 532:fe11edbda85c 741 #define IS_RTC_SECONDS(SECONDS) ((SECONDS) <= (uint32_t)59)
mbed_official 532:fe11edbda85c 742
mbed_official 532:fe11edbda85c 743 #define IS_RTC_HOURFORMAT12(PM) (((PM) == RTC_HOURFORMAT12_AM) || ((PM) == RTC_HOURFORMAT12_PM))
mbed_official 532:fe11edbda85c 744 #define IS_RTC_DAYLIGHT_SAVING(SAVE) (((SAVE) == RTC_DAYLIGHTSAVING_SUB1H) || \
mbed_official 532:fe11edbda85c 745 ((SAVE) == RTC_DAYLIGHTSAVING_ADD1H) || \
mbed_official 532:fe11edbda85c 746 ((SAVE) == RTC_DAYLIGHTSAVING_NONE))
mbed_official 532:fe11edbda85c 747 #define IS_RTC_STORE_OPERATION(OPERATION) (((OPERATION) == RTC_STOREOPERATION_RESET) || \
mbed_official 532:fe11edbda85c 748 ((OPERATION) == RTC_STOREOPERATION_SET))
mbed_official 532:fe11edbda85c 749 #define IS_RTC_FORMAT(FORMAT) (((FORMAT) == RTC_FORMAT_BIN) || ((FORMAT) == RTC_FORMAT_BCD))
mbed_official 532:fe11edbda85c 750 #define IS_RTC_YEAR(YEAR) ((YEAR) <= (uint32_t)99)
mbed_official 532:fe11edbda85c 751 #define IS_RTC_MONTH(MONTH) (((MONTH) >= (uint32_t)1) && ((MONTH) <= (uint32_t)12))
mbed_official 532:fe11edbda85c 752 #define IS_RTC_DATE(DATE) (((DATE) >= (uint32_t)1) && ((DATE) <= (uint32_t)31))
mbed_official 532:fe11edbda85c 753 #define IS_RTC_WEEKDAY(WEEKDAY) (((WEEKDAY) == RTC_WEEKDAY_MONDAY) || \
mbed_official 532:fe11edbda85c 754 ((WEEKDAY) == RTC_WEEKDAY_TUESDAY) || \
mbed_official 532:fe11edbda85c 755 ((WEEKDAY) == RTC_WEEKDAY_WEDNESDAY) || \
mbed_official 532:fe11edbda85c 756 ((WEEKDAY) == RTC_WEEKDAY_THURSDAY) || \
mbed_official 532:fe11edbda85c 757 ((WEEKDAY) == RTC_WEEKDAY_FRIDAY) || \
mbed_official 532:fe11edbda85c 758 ((WEEKDAY) == RTC_WEEKDAY_SATURDAY) || \
mbed_official 532:fe11edbda85c 759 ((WEEKDAY) == RTC_WEEKDAY_SUNDAY))
mbed_official 532:fe11edbda85c 760 #define IS_RTC_ALARM_DATE_WEEKDAY_DATE(DATE) (((DATE) >(uint32_t) 0) && ((DATE) <= (uint32_t)31))
mbed_official 532:fe11edbda85c 761 #define IS_RTC_ALARM_DATE_WEEKDAY_WEEKDAY(WEEKDAY) (((WEEKDAY) == RTC_WEEKDAY_MONDAY) || \
mbed_official 532:fe11edbda85c 762 ((WEEKDAY) == RTC_WEEKDAY_TUESDAY) || \
mbed_official 532:fe11edbda85c 763 ((WEEKDAY) == RTC_WEEKDAY_WEDNESDAY) || \
mbed_official 532:fe11edbda85c 764 ((WEEKDAY) == RTC_WEEKDAY_THURSDAY) || \
mbed_official 532:fe11edbda85c 765 ((WEEKDAY) == RTC_WEEKDAY_FRIDAY) || \
mbed_official 532:fe11edbda85c 766 ((WEEKDAY) == RTC_WEEKDAY_SATURDAY) || \
mbed_official 532:fe11edbda85c 767 ((WEEKDAY) == RTC_WEEKDAY_SUNDAY))
mbed_official 532:fe11edbda85c 768 #define IS_RTC_ALARM_DATE_WEEKDAY_SEL(SEL) (((SEL) == RTC_ALARMDATEWEEKDAYSEL_DATE) || \
mbed_official 532:fe11edbda85c 769 ((SEL) == RTC_ALARMDATEWEEKDAYSEL_WEEKDAY))
mbed_official 532:fe11edbda85c 770 #define IS_RTC_ALARM_MASK(MASK) (((MASK) & 0x7F7F7F7F) == (uint32_t)RESET)
mbed_official 532:fe11edbda85c 771 #define IS_RTC_ALARM(ALARM) (((ALARM) == RTC_ALARM_A) || ((ALARM) == RTC_ALARM_B))
mbed_official 532:fe11edbda85c 772 #define IS_RTC_ALARM_SUB_SECOND_VALUE(VALUE) ((VALUE) <= (uint32_t)0x00007FFF)
mbed_official 532:fe11edbda85c 773
mbed_official 532:fe11edbda85c 774 #define IS_RTC_ALARM_SUB_SECOND_MASK(MASK) (((MASK) == RTC_ALARMSUBSECONDMASK_ALL) || \
mbed_official 532:fe11edbda85c 775 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_1) || \
mbed_official 532:fe11edbda85c 776 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_2) || \
mbed_official 532:fe11edbda85c 777 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_3) || \
mbed_official 532:fe11edbda85c 778 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_4) || \
mbed_official 532:fe11edbda85c 779 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_5) || \
mbed_official 532:fe11edbda85c 780 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_6) || \
mbed_official 532:fe11edbda85c 781 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_7) || \
mbed_official 532:fe11edbda85c 782 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_8) || \
mbed_official 532:fe11edbda85c 783 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_9) || \
mbed_official 532:fe11edbda85c 784 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_10) || \
mbed_official 532:fe11edbda85c 785 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_11) || \
mbed_official 532:fe11edbda85c 786 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_12) || \
mbed_official 532:fe11edbda85c 787 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14_13) || \
mbed_official 532:fe11edbda85c 788 ((MASK) == RTC_ALARMSUBSECONDMASK_SS14) || \
mbed_official 532:fe11edbda85c 789 ((MASK) == RTC_ALARMSUBSECONDMASK_NONE))
mbed_official 532:fe11edbda85c 790 /**
mbed_official 532:fe11edbda85c 791 * @}
mbed_official 532:fe11edbda85c 792 */
mbed_official 532:fe11edbda85c 793
mbed_official 532:fe11edbda85c 794 /**
mbed_official 532:fe11edbda85c 795 * @}
mbed_official 532:fe11edbda85c 796 */
mbed_official 532:fe11edbda85c 797
mbed_official 532:fe11edbda85c 798 /* Private functions ---------------------------------------------------------*/
mbed_official 532:fe11edbda85c 799 /** @defgroup RTC_Private_Functions RTC Private Functions
mbed_official 532:fe11edbda85c 800 * @{
mbed_official 532:fe11edbda85c 801 */
mbed_official 87:085cde657901 802 HAL_StatusTypeDef RTC_EnterInitMode(RTC_HandleTypeDef* hrtc);
mbed_official 87:085cde657901 803 uint8_t RTC_ByteToBcd2(uint8_t Value);
mbed_official 87:085cde657901 804 uint8_t RTC_Bcd2ToByte(uint8_t Value);
mbed_official 532:fe11edbda85c 805 /**
mbed_official 532:fe11edbda85c 806 * @}
mbed_official 532:fe11edbda85c 807 */
mbed_official 87:085cde657901 808
mbed_official 87:085cde657901 809 /**
mbed_official 87:085cde657901 810 * @}
mbed_official 87:085cde657901 811 */
mbed_official 87:085cde657901 812
mbed_official 87:085cde657901 813 /**
mbed_official 87:085cde657901 814 * @}
mbed_official 87:085cde657901 815 */
mbed_official 87:085cde657901 816
mbed_official 87:085cde657901 817 #ifdef __cplusplus
mbed_official 87:085cde657901 818 }
mbed_official 87:085cde657901 819 #endif
mbed_official 87:085cde657901 820
mbed_official 87:085cde657901 821 #endif /* __STM32F4xx_HAL_RTC_H */
mbed_official 87:085cde657901 822
mbed_official 87:085cde657901 823 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/