mbed library sources

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Wed Feb 26 09:45:12 2014 +0000
Revision:
106:ced8cbb51063
Parent:
87:085cde657901
Synchronized with git revision 4222735eff5868389433f0e9271976b39c8115cd

Full URL: https://github.com/mbedmicro/mbed/commit/4222735eff5868389433f0e9271976b39c8115cd/

[NUCLEO_xxx] Update STM32CubeF4 driver V1.0.0 + update license

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_pwr_ex.c
mbed_official 87:085cde657901 4 * @author MCD Application Team
mbed_official 106:ced8cbb51063 5 * @version V1.0.0
mbed_official 106:ced8cbb51063 6 * @date 18-February-2014
mbed_official 87:085cde657901 7 * @brief Extended PWR HAL module driver.
mbed_official 87:085cde657901 8 * This file provides firmware functions to manage the following
mbed_official 87:085cde657901 9 * functionalities of PWR extension peripheral:
mbed_official 87:085cde657901 10 * + Peripheral Extended features functions
mbed_official 87:085cde657901 11 *
mbed_official 87:085cde657901 12 ******************************************************************************
mbed_official 87:085cde657901 13 * @attention
mbed_official 87:085cde657901 14 *
mbed_official 87:085cde657901 15 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
mbed_official 87:085cde657901 16 *
mbed_official 87:085cde657901 17 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 87:085cde657901 18 * are permitted provided that the following conditions are met:
mbed_official 87:085cde657901 19 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 87:085cde657901 20 * this list of conditions and the following disclaimer.
mbed_official 87:085cde657901 21 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 87:085cde657901 22 * this list of conditions and the following disclaimer in the documentation
mbed_official 87:085cde657901 23 * and/or other materials provided with the distribution.
mbed_official 87:085cde657901 24 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 87:085cde657901 25 * may be used to endorse or promote products derived from this software
mbed_official 87:085cde657901 26 * without specific prior written permission.
mbed_official 87:085cde657901 27 *
mbed_official 87:085cde657901 28 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 87:085cde657901 29 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 87:085cde657901 30 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 87:085cde657901 31 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 87:085cde657901 32 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 87:085cde657901 33 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 87:085cde657901 34 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 87:085cde657901 35 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 87:085cde657901 36 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 87:085cde657901 37 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 87:085cde657901 38 *
mbed_official 87:085cde657901 39 ******************************************************************************
mbed_official 87:085cde657901 40 */
mbed_official 87:085cde657901 41
mbed_official 87:085cde657901 42 /* Includes ------------------------------------------------------------------*/
mbed_official 87:085cde657901 43 #include "stm32f4xx_hal.h"
mbed_official 87:085cde657901 44
mbed_official 87:085cde657901 45 /** @addtogroup STM32F4xx_HAL_Driver
mbed_official 87:085cde657901 46 * @{
mbed_official 87:085cde657901 47 */
mbed_official 87:085cde657901 48
mbed_official 87:085cde657901 49 /** @defgroup PWREx
mbed_official 87:085cde657901 50 * @brief PWR HAL module driver
mbed_official 87:085cde657901 51 * @{
mbed_official 87:085cde657901 52 */
mbed_official 87:085cde657901 53
mbed_official 87:085cde657901 54 #ifdef HAL_PWR_MODULE_ENABLED
mbed_official 87:085cde657901 55
mbed_official 87:085cde657901 56 /* Private typedef -----------------------------------------------------------*/
mbed_official 87:085cde657901 57 /* Private define ------------------------------------------------------------*/
mbed_official 87:085cde657901 58 #define PWR_OVERDRIVE_TIMEOUT_VALUE 1000
mbed_official 87:085cde657901 59 #define PWR_BKPREG_TIMEOUT_VALUE 1000
mbed_official 87:085cde657901 60 /* Private macro -------------------------------------------------------------*/
mbed_official 87:085cde657901 61 /* Private variables ---------------------------------------------------------*/
mbed_official 87:085cde657901 62 /* Private function prototypes -----------------------------------------------*/
mbed_official 87:085cde657901 63 /* Private functions ---------------------------------------------------------*/
mbed_official 87:085cde657901 64
mbed_official 87:085cde657901 65 /** @defgroup PWREx_Private_Functions
mbed_official 87:085cde657901 66 * @{
mbed_official 87:085cde657901 67 */
mbed_official 87:085cde657901 68
mbed_official 87:085cde657901 69 /** @defgroup PWREx_Group1 Peripheral Extended features functions
mbed_official 87:085cde657901 70 * @brief Peripheral Extended features functions
mbed_official 87:085cde657901 71 *
mbed_official 87:085cde657901 72 @verbatim
mbed_official 87:085cde657901 73
mbed_official 87:085cde657901 74 ===============================================================================
mbed_official 87:085cde657901 75 ##### Peripheral extended features functions #####
mbed_official 87:085cde657901 76 ===============================================================================
mbed_official 87:085cde657901 77
mbed_official 87:085cde657901 78 *** Main and Backup Regulators configuration ***
mbed_official 87:085cde657901 79 ================================================
mbed_official 87:085cde657901 80 [..]
mbed_official 87:085cde657901 81 (+) The backup domain includes 4 Kbytes of backup SRAM accessible only from
mbed_official 87:085cde657901 82 the CPU, and address in 32-bit, 16-bit or 8-bit mode. Its content is
mbed_official 87:085cde657901 83 retained even in Standby or VBAT mode when the low power backup regulator
mbed_official 87:085cde657901 84 is enabled. It can be considered as an internal EEPROM when VBAT is
mbed_official 87:085cde657901 85 always present. You can use the HAL_PWR_EnableBkUpReg() function to
mbed_official 87:085cde657901 86 enable the low power backup regulator.
mbed_official 87:085cde657901 87
mbed_official 87:085cde657901 88 (+) When the backup domain is supplied by VDD (analog switch connected to VDD)
mbed_official 87:085cde657901 89 the backup SRAM is powered from VDD which replaces the VBAT power supply to
mbed_official 87:085cde657901 90 save battery life.
mbed_official 87:085cde657901 91
mbed_official 87:085cde657901 92 (+) The backup SRAM is not mass erased by a tamper event. It is read
mbed_official 87:085cde657901 93 protected to prevent confidential data, such as cryptographic private
mbed_official 87:085cde657901 94 key, from being accessed. The backup SRAM can be erased only through
mbed_official 87:085cde657901 95 the Flash interface when a protection level change from level 1 to
mbed_official 87:085cde657901 96 level 0 is requested.
mbed_official 87:085cde657901 97 -@- Refer to the description of Read protection (RDP) in the Flash
mbed_official 87:085cde657901 98 programming manual.
mbed_official 87:085cde657901 99
mbed_official 87:085cde657901 100 (+) The main internal regulator can be configured to have a tradeoff between
mbed_official 87:085cde657901 101 performance and power consumption when the device does not operate at
mbed_official 87:085cde657901 102 the maximum frequency. This is done through __HAL_PWR_MAINREGULATORMODE_CONFIG()
mbed_official 87:085cde657901 103 macro which configure VOS bit in PWR_CR register
mbed_official 87:085cde657901 104
mbed_official 87:085cde657901 105 Refer to the product datasheets for more details.
mbed_official 87:085cde657901 106
mbed_official 87:085cde657901 107 *** FLASH Power Down configuration ****
mbed_official 87:085cde657901 108 =======================================
mbed_official 87:085cde657901 109 [..]
mbed_official 87:085cde657901 110 (+) By setting the FPDS bit in the PWR_CR register by using the
mbed_official 87:085cde657901 111 HAL_PWR_EnableFlashPowerDown() function, the Flash memory also enters power
mbed_official 87:085cde657901 112 down mode when the device enters Stop mode. When the Flash memory
mbed_official 87:085cde657901 113 is in power down mode, an additional startup delay is incurred when
mbed_official 87:085cde657901 114 waking up from Stop mode.
mbed_official 87:085cde657901 115
mbed_official 87:085cde657901 116 (+) For STM32F42xxx/43xxx Devices, the scale can be modified only when the PLL
mbed_official 87:085cde657901 117 is OFF and the HSI or HSE clock source is selected as system clock.
mbed_official 87:085cde657901 118 The new value programmed is active only when the PLL is ON.
mbed_official 87:085cde657901 119 When the PLL is OFF, the voltage scale 3 is automatically selected.
mbed_official 87:085cde657901 120 Refer to the datasheets for more details.
mbed_official 87:085cde657901 121
mbed_official 87:085cde657901 122 *** Over-Drive and Under-Drive configuration ****
mbed_official 87:085cde657901 123 =================================================
mbed_official 87:085cde657901 124 [..]
mbed_official 87:085cde657901 125 (+) For STM32F42xxx/43xxx Devices, in Run mode: the main regulator has
mbed_official 87:085cde657901 126 2 operating modes available:
mbed_official 87:085cde657901 127 (++) Normal mode: The CPU and core logic operate at maximum frequency at a given
mbed_official 87:085cde657901 128 voltage scaling (scale 1, scale 2 or scale 3)
mbed_official 87:085cde657901 129 (++) Over-drive mode: This mode allows the CPU and the core logic to operate at a
mbed_official 87:085cde657901 130 higher frequency than the normal mode for a given voltage scaling (scale 1,
mbed_official 87:085cde657901 131 scale 2 or scale 3). This mode is enabled through HAL_PWREx_EnableOverDrive() function and
mbed_official 87:085cde657901 132 disabled by HAL_PWREx_DisableOverDrive() function, to enter or exit from Over-drive mode please follow
mbed_official 87:085cde657901 133 the sequence described in Reference manual.
mbed_official 87:085cde657901 134
mbed_official 87:085cde657901 135 (+) For STM32F42xxx/43xxx Devices, in Stop mode: the main regulator or low power regulator
mbed_official 87:085cde657901 136 supplies a low power voltage to the 1.2V domain, thus preserving the content of registers
mbed_official 87:085cde657901 137 and internal SRAM. 2 operating modes are available:
mbed_official 87:085cde657901 138 (++) Normal mode: the 1.2V domain is preserved in nominal leakage mode. This mode is only
mbed_official 87:085cde657901 139 available when the main regulator or the low power regulator is used in Scale 3 or
mbed_official 87:085cde657901 140 low voltage mode.
mbed_official 87:085cde657901 141 (++) Under-drive mode: the 1.2V domain is preserved in reduced leakage mode. This mode is only
mbed_official 87:085cde657901 142 available when the main regulator or the low power regulator is in low voltage mode.
mbed_official 87:085cde657901 143
mbed_official 87:085cde657901 144 @endverbatim
mbed_official 87:085cde657901 145 * @{
mbed_official 87:085cde657901 146 */
mbed_official 87:085cde657901 147
mbed_official 87:085cde657901 148 /**
mbed_official 87:085cde657901 149 * @brief Enables the Backup Regulator.
mbed_official 87:085cde657901 150 * @param None
mbed_official 87:085cde657901 151 * @retval HAL status
mbed_official 87:085cde657901 152 */
mbed_official 87:085cde657901 153 HAL_StatusTypeDef HAL_PWREx_EnableBkUpReg(void)
mbed_official 87:085cde657901 154 {
mbed_official 87:085cde657901 155 uint32_t timeout = 0;
mbed_official 87:085cde657901 156
mbed_official 87:085cde657901 157 *(__IO uint32_t *) CSR_BRE_BB = (uint32_t)ENABLE;
mbed_official 87:085cde657901 158
mbed_official 87:085cde657901 159 /* Get timeout */
mbed_official 87:085cde657901 160 timeout = HAL_GetTick() + PWR_BKPREG_TIMEOUT_VALUE;
mbed_official 87:085cde657901 161 /* Wait till Backup regulator ready flag is set */
mbed_official 87:085cde657901 162 while(__HAL_PWR_GET_FLAG(PWR_FLAG_BRR) == RESET)
mbed_official 87:085cde657901 163 {
mbed_official 87:085cde657901 164 if(HAL_GetTick() >= timeout)
mbed_official 87:085cde657901 165 {
mbed_official 87:085cde657901 166 return HAL_TIMEOUT;
mbed_official 87:085cde657901 167 }
mbed_official 87:085cde657901 168 }
mbed_official 87:085cde657901 169 return HAL_OK;
mbed_official 87:085cde657901 170 }
mbed_official 87:085cde657901 171
mbed_official 87:085cde657901 172 /**
mbed_official 87:085cde657901 173 * @brief Disables the Backup Regulator.
mbed_official 87:085cde657901 174 * @param None
mbed_official 87:085cde657901 175 * @retval None
mbed_official 87:085cde657901 176 */
mbed_official 87:085cde657901 177 HAL_StatusTypeDef HAL_PWREx_DisableBkUpReg(void)
mbed_official 87:085cde657901 178 {
mbed_official 87:085cde657901 179 uint32_t timeout = 0;
mbed_official 87:085cde657901 180
mbed_official 87:085cde657901 181 *(__IO uint32_t *) CSR_BRE_BB = (uint32_t)DISABLE;
mbed_official 87:085cde657901 182
mbed_official 87:085cde657901 183 /* Get timeout */
mbed_official 87:085cde657901 184 timeout = HAL_GetTick() + PWR_BKPREG_TIMEOUT_VALUE;
mbed_official 87:085cde657901 185 /* Wait till Backup regulator ready flag is set */
mbed_official 87:085cde657901 186 while(__HAL_PWR_GET_FLAG(PWR_FLAG_BRR) != RESET)
mbed_official 87:085cde657901 187 {
mbed_official 87:085cde657901 188 if(HAL_GetTick() >= timeout)
mbed_official 87:085cde657901 189 {
mbed_official 87:085cde657901 190 return HAL_TIMEOUT;
mbed_official 87:085cde657901 191 }
mbed_official 87:085cde657901 192 }
mbed_official 87:085cde657901 193 return HAL_OK;
mbed_official 87:085cde657901 194 }
mbed_official 87:085cde657901 195
mbed_official 87:085cde657901 196 /**
mbed_official 87:085cde657901 197 * @brief Enables the Flash Power Down in Stop mode.
mbed_official 87:085cde657901 198 * @param None
mbed_official 87:085cde657901 199 * @retval None
mbed_official 87:085cde657901 200 */
mbed_official 87:085cde657901 201 void HAL_PWREx_EnableFlashPowerDown(void)
mbed_official 87:085cde657901 202 {
mbed_official 87:085cde657901 203 *(__IO uint32_t *) CR_FPDS_BB = (uint32_t)ENABLE;
mbed_official 87:085cde657901 204 }
mbed_official 87:085cde657901 205
mbed_official 87:085cde657901 206 /**
mbed_official 87:085cde657901 207 * @brief Disables the Flash Power Down in Stop mode.
mbed_official 87:085cde657901 208 * @param None
mbed_official 87:085cde657901 209 * @retval None
mbed_official 87:085cde657901 210 */
mbed_official 87:085cde657901 211 void HAL_PWREx_DisableFlashPowerDown(void)
mbed_official 87:085cde657901 212 {
mbed_official 87:085cde657901 213 *(__IO uint32_t *) CR_FPDS_BB = (uint32_t)DISABLE;
mbed_official 87:085cde657901 214 }
mbed_official 87:085cde657901 215
mbed_official 87:085cde657901 216 #if defined(STM32F427xx) || defined(STM32F437xx) || defined(STM32F429xx) || defined(STM32F439xx)
mbed_official 87:085cde657901 217 /**
mbed_official 87:085cde657901 218 * @brief Activates the Over-Drive mode.
mbed_official 87:085cde657901 219 * @note These macros can be used only for STM32F42xx/STM32F43xx devices.
mbed_official 87:085cde657901 220 * This mode allows the CPU and the core logic to operate at a higher frequency
mbed_official 87:085cde657901 221 * than the normal mode for a given voltage scaling (scale 1, scale 2 or scale 3).
mbed_official 87:085cde657901 222 * @note It is recommended to enter or exit Over-drive mode when the application is not running
mbed_official 87:085cde657901 223 * critical tasks and when the system clock source is either HSI or HSE.
mbed_official 87:085cde657901 224 * During the Over-drive switch activation, no peripheral clocks should be enabled.
mbed_official 87:085cde657901 225 * The peripheral clocks must be enabled once the Over-drive mode is activated.
mbed_official 87:085cde657901 226 * @param None
mbed_official 87:085cde657901 227 * @retval HAL status
mbed_official 87:085cde657901 228 */
mbed_official 87:085cde657901 229 HAL_StatusTypeDef HAL_PWREx_ActivateOverDrive(void)
mbed_official 87:085cde657901 230 {
mbed_official 87:085cde657901 231 uint32_t timeout = 0;
mbed_official 87:085cde657901 232
mbed_official 87:085cde657901 233 __PWR_CLK_ENABLE();
mbed_official 87:085cde657901 234
mbed_official 87:085cde657901 235 /* Enable the Over-drive to extend the clock frequency to 180 Mhz */
mbed_official 87:085cde657901 236 __HAL_PWR_OVERDRIVE_ENABLE();
mbed_official 87:085cde657901 237
mbed_official 87:085cde657901 238 /* Get timeout */
mbed_official 87:085cde657901 239 timeout = HAL_GetTick() + PWR_OVERDRIVE_TIMEOUT_VALUE;
mbed_official 87:085cde657901 240 while(!__HAL_PWR_GET_FLAG(PWR_FLAG_ODRDY))
mbed_official 87:085cde657901 241 {
mbed_official 87:085cde657901 242 if(HAL_GetTick() >= timeout)
mbed_official 87:085cde657901 243 {
mbed_official 87:085cde657901 244 return HAL_TIMEOUT;
mbed_official 87:085cde657901 245 }
mbed_official 87:085cde657901 246 }
mbed_official 87:085cde657901 247
mbed_official 87:085cde657901 248 /* Enable the Over-drive switch */
mbed_official 87:085cde657901 249 __HAL_PWR_OVERDRIVESWITCHING_ENABLE();
mbed_official 87:085cde657901 250
mbed_official 87:085cde657901 251 /* Get timeout */
mbed_official 87:085cde657901 252 timeout = HAL_GetTick() + PWR_OVERDRIVE_TIMEOUT_VALUE;
mbed_official 87:085cde657901 253 while(!__HAL_PWR_GET_FLAG(PWR_FLAG_ODSWRDY))
mbed_official 87:085cde657901 254 {
mbed_official 87:085cde657901 255 if(HAL_GetTick() >= timeout)
mbed_official 87:085cde657901 256 {
mbed_official 87:085cde657901 257 return HAL_TIMEOUT;
mbed_official 87:085cde657901 258 }
mbed_official 87:085cde657901 259 }
mbed_official 87:085cde657901 260 return HAL_OK;
mbed_official 87:085cde657901 261 }
mbed_official 87:085cde657901 262
mbed_official 87:085cde657901 263 /**
mbed_official 87:085cde657901 264 * @brief Deactivates the Over-Drive mode.
mbed_official 87:085cde657901 265 * @note These macros can be used only for STM32F42xx/STM32F43xx devices.
mbed_official 87:085cde657901 266 * This mode allows the CPU and the core logic to operate at a higher frequency
mbed_official 87:085cde657901 267 * than the normal mode for a given voltage scaling (scale 1, scale 2 or scale 3).
mbed_official 87:085cde657901 268 * @note It is recommended to enter or exit Over-drive mode when the application is not running
mbed_official 87:085cde657901 269 * critical tasks and when the system clock source is either HSI or HSE.
mbed_official 87:085cde657901 270 * During the Over-drive switch activation, no peripheral clocks should be enabled.
mbed_official 87:085cde657901 271 * The peripheral clocks must be enabled once the Over-drive mode is activated.
mbed_official 87:085cde657901 272 * @param None
mbed_official 87:085cde657901 273 * @retval HAL status
mbed_official 87:085cde657901 274 */
mbed_official 87:085cde657901 275 HAL_StatusTypeDef HAL_PWREx_DeactivateOverDrive(void)
mbed_official 87:085cde657901 276 {
mbed_official 87:085cde657901 277 uint32_t timeout = 0;
mbed_official 87:085cde657901 278
mbed_official 87:085cde657901 279 __PWR_CLK_ENABLE();
mbed_official 87:085cde657901 280
mbed_official 87:085cde657901 281 /* Disable the Over-drive switch */
mbed_official 87:085cde657901 282 __HAL_PWR_OVERDRIVESWITCHING_DISABLE();
mbed_official 87:085cde657901 283
mbed_official 87:085cde657901 284 /* Get timeout */
mbed_official 87:085cde657901 285 timeout = HAL_GetTick() + PWR_OVERDRIVE_TIMEOUT_VALUE;
mbed_official 87:085cde657901 286
mbed_official 87:085cde657901 287 while(__HAL_PWR_GET_FLAG(PWR_FLAG_ODSWRDY))
mbed_official 87:085cde657901 288 {
mbed_official 87:085cde657901 289 if(HAL_GetTick() >= timeout)
mbed_official 87:085cde657901 290 {
mbed_official 87:085cde657901 291 return HAL_TIMEOUT;
mbed_official 87:085cde657901 292 }
mbed_official 87:085cde657901 293 }
mbed_official 87:085cde657901 294
mbed_official 87:085cde657901 295 /* Disable the Over-drive */
mbed_official 87:085cde657901 296 __HAL_PWR_OVERDRIVE_DISABLE();
mbed_official 87:085cde657901 297
mbed_official 87:085cde657901 298 /* Get timeout */
mbed_official 87:085cde657901 299 timeout = HAL_GetTick() + PWR_OVERDRIVE_TIMEOUT_VALUE;
mbed_official 87:085cde657901 300
mbed_official 87:085cde657901 301 while(__HAL_PWR_GET_FLAG(PWR_FLAG_ODRDY))
mbed_official 87:085cde657901 302 {
mbed_official 87:085cde657901 303 if(HAL_GetTick() >= timeout)
mbed_official 87:085cde657901 304 {
mbed_official 87:085cde657901 305 return HAL_TIMEOUT;
mbed_official 87:085cde657901 306 }
mbed_official 87:085cde657901 307 }
mbed_official 87:085cde657901 308
mbed_official 87:085cde657901 309 return HAL_OK;
mbed_official 87:085cde657901 310 }
mbed_official 87:085cde657901 311 #endif /* STM32F427xx || STM32F437xx || STM32F429xx || STM32F439xx */
mbed_official 87:085cde657901 312 /**
mbed_official 87:085cde657901 313 * @}
mbed_official 87:085cde657901 314 */
mbed_official 87:085cde657901 315
mbed_official 87:085cde657901 316 /**
mbed_official 87:085cde657901 317 * @}
mbed_official 87:085cde657901 318 */
mbed_official 87:085cde657901 319
mbed_official 87:085cde657901 320 #endif /* HAL_PWR_MODULE_ENABLED */
mbed_official 87:085cde657901 321 /**
mbed_official 87:085cde657901 322 * @}
mbed_official 87:085cde657901 323 */
mbed_official 87:085cde657901 324
mbed_official 87:085cde657901 325 /**
mbed_official 87:085cde657901 326 * @}
mbed_official 87:085cde657901 327 */
mbed_official 87:085cde657901 328
mbed_official 87:085cde657901 329 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/