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

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Fri May 26 12:30:20 2017 +0100
Revision:
143:86740a56073b
Child:
170:e95d10626187
Release 143 of the mbed library.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 143:86740a56073b 1 /**
AnnaBridge 143:86740a56073b 2 ******************************************************************************
AnnaBridge 143:86740a56073b 3 * @file stm32f1xx_ll_iwdg.h
AnnaBridge 143:86740a56073b 4 * @author MCD Application Team
AnnaBridge 143:86740a56073b 5 * @version V1.1.0
AnnaBridge 143:86740a56073b 6 * @date 14-April-2017
AnnaBridge 143:86740a56073b 7 * @brief Header file of IWDG LL module.
AnnaBridge 143:86740a56073b 8 ******************************************************************************
AnnaBridge 143:86740a56073b 9 * @attention
AnnaBridge 143:86740a56073b 10 *
AnnaBridge 143:86740a56073b 11 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
AnnaBridge 143:86740a56073b 12 *
AnnaBridge 143:86740a56073b 13 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 143:86740a56073b 14 * are permitted provided that the following conditions are met:
AnnaBridge 143:86740a56073b 15 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 143:86740a56073b 16 * this list of conditions and the following disclaimer.
AnnaBridge 143:86740a56073b 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 143:86740a56073b 18 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 143:86740a56073b 19 * and/or other materials provided with the distribution.
AnnaBridge 143:86740a56073b 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 143:86740a56073b 21 * may be used to endorse or promote products derived from this software
AnnaBridge 143:86740a56073b 22 * without specific prior written permission.
AnnaBridge 143:86740a56073b 23 *
AnnaBridge 143:86740a56073b 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 143:86740a56073b 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 143:86740a56073b 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 143:86740a56073b 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 143:86740a56073b 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 143:86740a56073b 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 143:86740a56073b 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 143:86740a56073b 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 143:86740a56073b 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 143:86740a56073b 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 143:86740a56073b 34 *
AnnaBridge 143:86740a56073b 35 ******************************************************************************
AnnaBridge 143:86740a56073b 36 */
AnnaBridge 143:86740a56073b 37
AnnaBridge 143:86740a56073b 38 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 143:86740a56073b 39 #ifndef __STM32F1xx_LL_IWDG_H
AnnaBridge 143:86740a56073b 40 #define __STM32F1xx_LL_IWDG_H
AnnaBridge 143:86740a56073b 41
AnnaBridge 143:86740a56073b 42 #ifdef __cplusplus
AnnaBridge 143:86740a56073b 43 extern "C" {
AnnaBridge 143:86740a56073b 44 #endif
AnnaBridge 143:86740a56073b 45
AnnaBridge 143:86740a56073b 46 /* Includes ------------------------------------------------------------------*/
AnnaBridge 143:86740a56073b 47 #include "stm32f1xx.h"
AnnaBridge 143:86740a56073b 48
AnnaBridge 143:86740a56073b 49 /** @addtogroup STM32F1xx_LL_Driver
AnnaBridge 143:86740a56073b 50 * @{
AnnaBridge 143:86740a56073b 51 */
AnnaBridge 143:86740a56073b 52
AnnaBridge 143:86740a56073b 53 #if defined(IWDG)
AnnaBridge 143:86740a56073b 54
AnnaBridge 143:86740a56073b 55 /** @defgroup IWDG_LL IWDG
AnnaBridge 143:86740a56073b 56 * @{
AnnaBridge 143:86740a56073b 57 */
AnnaBridge 143:86740a56073b 58
AnnaBridge 143:86740a56073b 59 /* Private types -------------------------------------------------------------*/
AnnaBridge 143:86740a56073b 60 /* Private variables ---------------------------------------------------------*/
AnnaBridge 143:86740a56073b 61
AnnaBridge 143:86740a56073b 62 /* Private constants ---------------------------------------------------------*/
AnnaBridge 143:86740a56073b 63 /** @defgroup IWDG_LL_Private_Constants IWDG Private Constants
AnnaBridge 143:86740a56073b 64 * @{
AnnaBridge 143:86740a56073b 65 */
AnnaBridge 143:86740a56073b 66
AnnaBridge 143:86740a56073b 67 #define LL_IWDG_KEY_RELOAD 0x0000AAAAU /*!< IWDG Reload Counter Enable */
AnnaBridge 143:86740a56073b 68 #define LL_IWDG_KEY_ENABLE 0x0000CCCCU /*!< IWDG Peripheral Enable */
AnnaBridge 143:86740a56073b 69 #define LL_IWDG_KEY_WR_ACCESS_ENABLE 0x00005555U /*!< IWDG KR Write Access Enable */
AnnaBridge 143:86740a56073b 70 #define LL_IWDG_KEY_WR_ACCESS_DISABLE 0x00000000U /*!< IWDG KR Write Access Disable */
AnnaBridge 143:86740a56073b 71
AnnaBridge 143:86740a56073b 72 /**
AnnaBridge 143:86740a56073b 73 * @}
AnnaBridge 143:86740a56073b 74 */
AnnaBridge 143:86740a56073b 75
AnnaBridge 143:86740a56073b 76 /* Private macros ------------------------------------------------------------*/
AnnaBridge 143:86740a56073b 77
AnnaBridge 143:86740a56073b 78 /* Exported types ------------------------------------------------------------*/
AnnaBridge 143:86740a56073b 79 /* Exported constants --------------------------------------------------------*/
AnnaBridge 143:86740a56073b 80 /** @defgroup IWDG_LL_Exported_Constants IWDG Exported Constants
AnnaBridge 143:86740a56073b 81 * @{
AnnaBridge 143:86740a56073b 82 */
AnnaBridge 143:86740a56073b 83
AnnaBridge 143:86740a56073b 84 /** @defgroup IWDG_LL_EC_GET_FLAG Get Flags Defines
AnnaBridge 143:86740a56073b 85 * @brief Flags defines which can be used with LL_IWDG_ReadReg function
AnnaBridge 143:86740a56073b 86 * @{
AnnaBridge 143:86740a56073b 87 */
AnnaBridge 143:86740a56073b 88 #define LL_IWDG_SR_PVU IWDG_SR_PVU /*!< Watchdog prescaler value update */
AnnaBridge 143:86740a56073b 89 #define LL_IWDG_SR_RVU IWDG_SR_RVU /*!< Watchdog counter reload value update */
AnnaBridge 143:86740a56073b 90
AnnaBridge 143:86740a56073b 91 /**
AnnaBridge 143:86740a56073b 92 * @}
AnnaBridge 143:86740a56073b 93 */
AnnaBridge 143:86740a56073b 94
AnnaBridge 143:86740a56073b 95 /** @defgroup IWDG_LL_EC_PRESCALER Prescaler Divider
AnnaBridge 143:86740a56073b 96 * @{
AnnaBridge 143:86740a56073b 97 */
AnnaBridge 143:86740a56073b 98 #define LL_IWDG_PRESCALER_4 0x00000000U /*!< Divider by 4 */
AnnaBridge 143:86740a56073b 99 #define LL_IWDG_PRESCALER_8 (IWDG_PR_PR_0) /*!< Divider by 8 */
AnnaBridge 143:86740a56073b 100 #define LL_IWDG_PRESCALER_16 (IWDG_PR_PR_1) /*!< Divider by 16 */
AnnaBridge 143:86740a56073b 101 #define LL_IWDG_PRESCALER_32 (IWDG_PR_PR_1 | IWDG_PR_PR_0) /*!< Divider by 32 */
AnnaBridge 143:86740a56073b 102 #define LL_IWDG_PRESCALER_64 (IWDG_PR_PR_2) /*!< Divider by 64 */
AnnaBridge 143:86740a56073b 103 #define LL_IWDG_PRESCALER_128 (IWDG_PR_PR_2 | IWDG_PR_PR_0) /*!< Divider by 128 */
AnnaBridge 143:86740a56073b 104 #define LL_IWDG_PRESCALER_256 (IWDG_PR_PR_2 | IWDG_PR_PR_1) /*!< Divider by 256 */
AnnaBridge 143:86740a56073b 105 /**
AnnaBridge 143:86740a56073b 106 * @}
AnnaBridge 143:86740a56073b 107 */
AnnaBridge 143:86740a56073b 108
AnnaBridge 143:86740a56073b 109 /**
AnnaBridge 143:86740a56073b 110 * @}
AnnaBridge 143:86740a56073b 111 */
AnnaBridge 143:86740a56073b 112
AnnaBridge 143:86740a56073b 113 /* Exported macro ------------------------------------------------------------*/
AnnaBridge 143:86740a56073b 114 /** @defgroup IWDG_LL_Exported_Macros IWDG Exported Macros
AnnaBridge 143:86740a56073b 115 * @{
AnnaBridge 143:86740a56073b 116 */
AnnaBridge 143:86740a56073b 117
AnnaBridge 143:86740a56073b 118 /** @defgroup IWDG_LL_EM_WRITE_READ Common Write and read registers Macros
AnnaBridge 143:86740a56073b 119 * @{
AnnaBridge 143:86740a56073b 120 */
AnnaBridge 143:86740a56073b 121
AnnaBridge 143:86740a56073b 122 /**
AnnaBridge 143:86740a56073b 123 * @brief Write a value in IWDG register
AnnaBridge 143:86740a56073b 124 * @param __INSTANCE__ IWDG Instance
AnnaBridge 143:86740a56073b 125 * @param __REG__ Register to be written
AnnaBridge 143:86740a56073b 126 * @param __VALUE__ Value to be written in the register
AnnaBridge 143:86740a56073b 127 * @retval None
AnnaBridge 143:86740a56073b 128 */
AnnaBridge 143:86740a56073b 129 #define LL_IWDG_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
AnnaBridge 143:86740a56073b 130
AnnaBridge 143:86740a56073b 131 /**
AnnaBridge 143:86740a56073b 132 * @brief Read a value in IWDG register
AnnaBridge 143:86740a56073b 133 * @param __INSTANCE__ IWDG Instance
AnnaBridge 143:86740a56073b 134 * @param __REG__ Register to be read
AnnaBridge 143:86740a56073b 135 * @retval Register value
AnnaBridge 143:86740a56073b 136 */
AnnaBridge 143:86740a56073b 137 #define LL_IWDG_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__)
AnnaBridge 143:86740a56073b 138 /**
AnnaBridge 143:86740a56073b 139 * @}
AnnaBridge 143:86740a56073b 140 */
AnnaBridge 143:86740a56073b 141
AnnaBridge 143:86740a56073b 142 /**
AnnaBridge 143:86740a56073b 143 * @}
AnnaBridge 143:86740a56073b 144 */
AnnaBridge 143:86740a56073b 145
AnnaBridge 143:86740a56073b 146
AnnaBridge 143:86740a56073b 147 /* Exported functions --------------------------------------------------------*/
AnnaBridge 143:86740a56073b 148 /** @defgroup IWDG_LL_Exported_Functions IWDG Exported Functions
AnnaBridge 143:86740a56073b 149 * @{
AnnaBridge 143:86740a56073b 150 */
AnnaBridge 143:86740a56073b 151 /** @defgroup IWDG_LL_EF_Configuration Configuration
AnnaBridge 143:86740a56073b 152 * @{
AnnaBridge 143:86740a56073b 153 */
AnnaBridge 143:86740a56073b 154
AnnaBridge 143:86740a56073b 155 /**
AnnaBridge 143:86740a56073b 156 * @brief Start the Independent Watchdog
AnnaBridge 143:86740a56073b 157 * @note Except if the hardware watchdog option is selected
AnnaBridge 143:86740a56073b 158 * @rmtoll KR KEY LL_IWDG_Enable
AnnaBridge 143:86740a56073b 159 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 160 * @retval None
AnnaBridge 143:86740a56073b 161 */
AnnaBridge 143:86740a56073b 162 __STATIC_INLINE void LL_IWDG_Enable(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 163 {
AnnaBridge 143:86740a56073b 164 WRITE_REG(IWDG->KR, LL_IWDG_KEY_ENABLE);
AnnaBridge 143:86740a56073b 165 }
AnnaBridge 143:86740a56073b 166
AnnaBridge 143:86740a56073b 167 /**
AnnaBridge 143:86740a56073b 168 * @brief Reloads IWDG counter with value defined in the reload register
AnnaBridge 143:86740a56073b 169 * @rmtoll KR KEY LL_IWDG_ReloadCounter
AnnaBridge 143:86740a56073b 170 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 171 * @retval None
AnnaBridge 143:86740a56073b 172 */
AnnaBridge 143:86740a56073b 173 __STATIC_INLINE void LL_IWDG_ReloadCounter(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 174 {
AnnaBridge 143:86740a56073b 175 WRITE_REG(IWDG->KR, LL_IWDG_KEY_RELOAD);
AnnaBridge 143:86740a56073b 176 }
AnnaBridge 143:86740a56073b 177
AnnaBridge 143:86740a56073b 178 /**
AnnaBridge 143:86740a56073b 179 * @brief Enable write access to IWDG_PR, IWDG_RLR and IWDG_WINR registers
AnnaBridge 143:86740a56073b 180 * @rmtoll KR KEY LL_IWDG_EnableWriteAccess
AnnaBridge 143:86740a56073b 181 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 182 * @retval None
AnnaBridge 143:86740a56073b 183 */
AnnaBridge 143:86740a56073b 184 __STATIC_INLINE void LL_IWDG_EnableWriteAccess(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 185 {
AnnaBridge 143:86740a56073b 186 WRITE_REG(IWDG->KR, LL_IWDG_KEY_WR_ACCESS_ENABLE);
AnnaBridge 143:86740a56073b 187 }
AnnaBridge 143:86740a56073b 188
AnnaBridge 143:86740a56073b 189 /**
AnnaBridge 143:86740a56073b 190 * @brief Disable write access to IWDG_PR, IWDG_RLR and IWDG_WINR registers
AnnaBridge 143:86740a56073b 191 * @rmtoll KR KEY LL_IWDG_DisableWriteAccess
AnnaBridge 143:86740a56073b 192 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 193 * @retval None
AnnaBridge 143:86740a56073b 194 */
AnnaBridge 143:86740a56073b 195 __STATIC_INLINE void LL_IWDG_DisableWriteAccess(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 196 {
AnnaBridge 143:86740a56073b 197 WRITE_REG(IWDG->KR, LL_IWDG_KEY_WR_ACCESS_DISABLE);
AnnaBridge 143:86740a56073b 198 }
AnnaBridge 143:86740a56073b 199
AnnaBridge 143:86740a56073b 200 /**
AnnaBridge 143:86740a56073b 201 * @brief Select the prescaler of the IWDG
AnnaBridge 143:86740a56073b 202 * @rmtoll PR PR LL_IWDG_SetPrescaler
AnnaBridge 143:86740a56073b 203 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 204 * @param Prescaler This parameter can be one of the following values:
AnnaBridge 143:86740a56073b 205 * @arg @ref LL_IWDG_PRESCALER_4
AnnaBridge 143:86740a56073b 206 * @arg @ref LL_IWDG_PRESCALER_8
AnnaBridge 143:86740a56073b 207 * @arg @ref LL_IWDG_PRESCALER_16
AnnaBridge 143:86740a56073b 208 * @arg @ref LL_IWDG_PRESCALER_32
AnnaBridge 143:86740a56073b 209 * @arg @ref LL_IWDG_PRESCALER_64
AnnaBridge 143:86740a56073b 210 * @arg @ref LL_IWDG_PRESCALER_128
AnnaBridge 143:86740a56073b 211 * @arg @ref LL_IWDG_PRESCALER_256
AnnaBridge 143:86740a56073b 212 * @retval None
AnnaBridge 143:86740a56073b 213 */
AnnaBridge 143:86740a56073b 214 __STATIC_INLINE void LL_IWDG_SetPrescaler(IWDG_TypeDef *IWDGx, uint32_t Prescaler)
AnnaBridge 143:86740a56073b 215 {
AnnaBridge 143:86740a56073b 216 WRITE_REG(IWDGx->PR, IWDG_PR_PR & Prescaler);
AnnaBridge 143:86740a56073b 217 }
AnnaBridge 143:86740a56073b 218
AnnaBridge 143:86740a56073b 219 /**
AnnaBridge 143:86740a56073b 220 * @brief Get the selected prescaler of the IWDG
AnnaBridge 143:86740a56073b 221 * @rmtoll PR PR LL_IWDG_GetPrescaler
AnnaBridge 143:86740a56073b 222 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 223 * @retval Returned value can be one of the following values:
AnnaBridge 143:86740a56073b 224 * @arg @ref LL_IWDG_PRESCALER_4
AnnaBridge 143:86740a56073b 225 * @arg @ref LL_IWDG_PRESCALER_8
AnnaBridge 143:86740a56073b 226 * @arg @ref LL_IWDG_PRESCALER_16
AnnaBridge 143:86740a56073b 227 * @arg @ref LL_IWDG_PRESCALER_32
AnnaBridge 143:86740a56073b 228 * @arg @ref LL_IWDG_PRESCALER_64
AnnaBridge 143:86740a56073b 229 * @arg @ref LL_IWDG_PRESCALER_128
AnnaBridge 143:86740a56073b 230 * @arg @ref LL_IWDG_PRESCALER_256
AnnaBridge 143:86740a56073b 231 */
AnnaBridge 143:86740a56073b 232 __STATIC_INLINE uint32_t LL_IWDG_GetPrescaler(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 233 {
AnnaBridge 143:86740a56073b 234 return (uint32_t)(READ_REG(IWDGx->PR));
AnnaBridge 143:86740a56073b 235 }
AnnaBridge 143:86740a56073b 236
AnnaBridge 143:86740a56073b 237 /**
AnnaBridge 143:86740a56073b 238 * @brief Specify the IWDG down-counter reload value
AnnaBridge 143:86740a56073b 239 * @rmtoll RLR RL LL_IWDG_SetReloadCounter
AnnaBridge 143:86740a56073b 240 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 241 * @param Counter Value between Min_Data=0 and Max_Data=0x0FFF
AnnaBridge 143:86740a56073b 242 * @retval None
AnnaBridge 143:86740a56073b 243 */
AnnaBridge 143:86740a56073b 244 __STATIC_INLINE void LL_IWDG_SetReloadCounter(IWDG_TypeDef *IWDGx, uint32_t Counter)
AnnaBridge 143:86740a56073b 245 {
AnnaBridge 143:86740a56073b 246 WRITE_REG(IWDGx->RLR, IWDG_RLR_RL & Counter);
AnnaBridge 143:86740a56073b 247 }
AnnaBridge 143:86740a56073b 248
AnnaBridge 143:86740a56073b 249 /**
AnnaBridge 143:86740a56073b 250 * @brief Get the specified IWDG down-counter reload value
AnnaBridge 143:86740a56073b 251 * @rmtoll RLR RL LL_IWDG_GetReloadCounter
AnnaBridge 143:86740a56073b 252 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 253 * @retval Value between Min_Data=0 and Max_Data=0x0FFF
AnnaBridge 143:86740a56073b 254 */
AnnaBridge 143:86740a56073b 255 __STATIC_INLINE uint32_t LL_IWDG_GetReloadCounter(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 256 {
AnnaBridge 143:86740a56073b 257 return (uint32_t)(READ_REG(IWDGx->RLR));
AnnaBridge 143:86740a56073b 258 }
AnnaBridge 143:86740a56073b 259
AnnaBridge 143:86740a56073b 260
AnnaBridge 143:86740a56073b 261 /**
AnnaBridge 143:86740a56073b 262 * @}
AnnaBridge 143:86740a56073b 263 */
AnnaBridge 143:86740a56073b 264
AnnaBridge 143:86740a56073b 265 /** @defgroup IWDG_LL_EF_FLAG_Management FLAG_Management
AnnaBridge 143:86740a56073b 266 * @{
AnnaBridge 143:86740a56073b 267 */
AnnaBridge 143:86740a56073b 268
AnnaBridge 143:86740a56073b 269 /**
AnnaBridge 143:86740a56073b 270 * @brief Check if flag Prescaler Value Update is set or not
AnnaBridge 143:86740a56073b 271 * @rmtoll SR PVU LL_IWDG_IsActiveFlag_PVU
AnnaBridge 143:86740a56073b 272 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 273 * @retval State of bit (1 or 0).
AnnaBridge 143:86740a56073b 274 */
AnnaBridge 143:86740a56073b 275 __STATIC_INLINE uint32_t LL_IWDG_IsActiveFlag_PVU(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 276 {
AnnaBridge 143:86740a56073b 277 return (READ_BIT(IWDGx->SR, IWDG_SR_PVU) == (IWDG_SR_PVU));
AnnaBridge 143:86740a56073b 278 }
AnnaBridge 143:86740a56073b 279
AnnaBridge 143:86740a56073b 280 /**
AnnaBridge 143:86740a56073b 281 * @brief Check if flag Reload Value Update is set or not
AnnaBridge 143:86740a56073b 282 * @rmtoll SR RVU LL_IWDG_IsActiveFlag_RVU
AnnaBridge 143:86740a56073b 283 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 284 * @retval State of bit (1 or 0).
AnnaBridge 143:86740a56073b 285 */
AnnaBridge 143:86740a56073b 286 __STATIC_INLINE uint32_t LL_IWDG_IsActiveFlag_RVU(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 287 {
AnnaBridge 143:86740a56073b 288 return (READ_BIT(IWDGx->SR, IWDG_SR_RVU) == (IWDG_SR_RVU));
AnnaBridge 143:86740a56073b 289 }
AnnaBridge 143:86740a56073b 290
AnnaBridge 143:86740a56073b 291
AnnaBridge 143:86740a56073b 292 /**
AnnaBridge 143:86740a56073b 293 * @brief Check if all flags Prescaler, Reload & Window Value Update are reset or not
AnnaBridge 143:86740a56073b 294 * @rmtoll SR PVU LL_IWDG_IsReady\n
AnnaBridge 143:86740a56073b 295 * SR RVU LL_IWDG_IsReady
AnnaBridge 143:86740a56073b 296 * @param IWDGx IWDG Instance
AnnaBridge 143:86740a56073b 297 * @retval State of bits (1 or 0).
AnnaBridge 143:86740a56073b 298 */
AnnaBridge 143:86740a56073b 299 __STATIC_INLINE uint32_t LL_IWDG_IsReady(IWDG_TypeDef *IWDGx)
AnnaBridge 143:86740a56073b 300 {
AnnaBridge 143:86740a56073b 301 return (READ_BIT(IWDGx->SR, IWDG_SR_PVU | IWDG_SR_RVU) == 0U);
AnnaBridge 143:86740a56073b 302 }
AnnaBridge 143:86740a56073b 303
AnnaBridge 143:86740a56073b 304 /**
AnnaBridge 143:86740a56073b 305 * @}
AnnaBridge 143:86740a56073b 306 */
AnnaBridge 143:86740a56073b 307
AnnaBridge 143:86740a56073b 308
AnnaBridge 143:86740a56073b 309 /**
AnnaBridge 143:86740a56073b 310 * @}
AnnaBridge 143:86740a56073b 311 */
AnnaBridge 143:86740a56073b 312
AnnaBridge 143:86740a56073b 313 /**
AnnaBridge 143:86740a56073b 314 * @}
AnnaBridge 143:86740a56073b 315 */
AnnaBridge 143:86740a56073b 316
AnnaBridge 143:86740a56073b 317 #endif /* IWDG) */
AnnaBridge 143:86740a56073b 318
AnnaBridge 143:86740a56073b 319 /**
AnnaBridge 143:86740a56073b 320 * @}
AnnaBridge 143:86740a56073b 321 */
AnnaBridge 143:86740a56073b 322
AnnaBridge 143:86740a56073b 323 #ifdef __cplusplus
AnnaBridge 143:86740a56073b 324 }
AnnaBridge 143:86740a56073b 325 #endif
AnnaBridge 143:86740a56073b 326
AnnaBridge 143:86740a56073b 327 #endif /* __STM32F1xx_LL_IWDG_H */
AnnaBridge 143:86740a56073b 328
AnnaBridge 143:86740a56073b 329 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/