mbed official / mbed

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

Committer:
Kojto
Date:
Thu Jul 07 14:34:11 2016 +0100
Revision:
122:f9eeca106725
Parent:
93:e188a91d3eaa
Child:
123:b0220dba8be7
Release 122 of the mbed library

Changes:
- new targets - Nucleo L432KC, Beetle, Nucleo F446ZE, Nucleo L011K4
- Thread safety addition - mbed API should contain a statement about thread safety
- critical section API addition
- CAS API (core_util_atomic_incr/decr)
- DEVICE_ are generated from targets.json file, device.h deprecated
- Callback replaces FunctionPointer to provide std like interface
- mbed HAL API docs improvements
- toolchain - prexif attributes with MBED_
- add new attributes - packed, weak, forcedinline, align
- target.json - contains targets definitions
- ST - L1XX - Cube update to 1.5
- SPI clock selection fix (clock from APB domain)
- F7 - Cube update v1.4.0
- L0 - baudrate init fix
- L1 - Cube update v1.5
- F3 - baudrate init fix, 3 targets CAN support
- F4 - Cube update v1.12.0, 3 targets CAN support
- L4XX - Cube update v1.5.1
- F0 - update Cube to v1.5.0
- L4 - 2 targets (L476RG/VG) CAN support
- NXP - pwm clock fix for KSDK2 MCU
- LPC2368 - remove ARM toolchain support - due to regression
- KSDK2 - fix SPI , I2C address and repeat start
- Silabs - some fixes backported from mbed 3
- Renesas - RZ_A1H - SystemCoreClockUpdate addition

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 93:e188a91d3eaa 1 /**
Kojto 93:e188a91d3eaa 2 ******************************************************************************
Kojto 93:e188a91d3eaa 3 * @file stm32f3xx_hal_flash_ex.h
Kojto 93:e188a91d3eaa 4 * @author MCD Application Team
Kojto 122:f9eeca106725 5 * @version V1.2.1
Kojto 122:f9eeca106725 6 * @date 29-April-2015
Kojto 93:e188a91d3eaa 7 * @brief Header file of Flash HAL Extended module.
Kojto 93:e188a91d3eaa 8 ******************************************************************************
Kojto 93:e188a91d3eaa 9 * @attention
Kojto 93:e188a91d3eaa 10 *
Kojto 122:f9eeca106725 11 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
Kojto 93:e188a91d3eaa 12 *
Kojto 93:e188a91d3eaa 13 * Redistribution and use in source and binary forms, with or without modification,
Kojto 93:e188a91d3eaa 14 * are permitted provided that the following conditions are met:
Kojto 93:e188a91d3eaa 15 * 1. Redistributions of source code must retain the above copyright notice,
Kojto 93:e188a91d3eaa 16 * this list of conditions and the following disclaimer.
Kojto 93:e188a91d3eaa 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
Kojto 93:e188a91d3eaa 18 * this list of conditions and the following disclaimer in the documentation
Kojto 93:e188a91d3eaa 19 * and/or other materials provided with the distribution.
Kojto 93:e188a91d3eaa 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
Kojto 93:e188a91d3eaa 21 * may be used to endorse or promote products derived from this software
Kojto 93:e188a91d3eaa 22 * without specific prior written permission.
Kojto 93:e188a91d3eaa 23 *
Kojto 93:e188a91d3eaa 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Kojto 93:e188a91d3eaa 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Kojto 93:e188a91d3eaa 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
Kojto 93:e188a91d3eaa 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
Kojto 93:e188a91d3eaa 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Kojto 93:e188a91d3eaa 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
Kojto 93:e188a91d3eaa 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Kojto 93:e188a91d3eaa 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Kojto 93:e188a91d3eaa 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Kojto 93:e188a91d3eaa 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Kojto 93:e188a91d3eaa 34 *
Kojto 93:e188a91d3eaa 35 ******************************************************************************
Kojto 93:e188a91d3eaa 36 */
Kojto 93:e188a91d3eaa 37
Kojto 93:e188a91d3eaa 38 /* Define to prevent recursive inclusion -------------------------------------*/
Kojto 93:e188a91d3eaa 39 #ifndef __STM32F3xx_HAL_FLASH_EX_H
Kojto 93:e188a91d3eaa 40 #define __STM32F3xx_HAL_FLASH_EX_H
Kojto 93:e188a91d3eaa 41
Kojto 93:e188a91d3eaa 42 #ifdef __cplusplus
Kojto 93:e188a91d3eaa 43 extern "C" {
Kojto 93:e188a91d3eaa 44 #endif
Kojto 93:e188a91d3eaa 45
Kojto 93:e188a91d3eaa 46 /* Includes ------------------------------------------------------------------*/
Kojto 93:e188a91d3eaa 47 #include "stm32f3xx_hal_def.h"
Kojto 93:e188a91d3eaa 48
Kojto 93:e188a91d3eaa 49 /** @addtogroup STM32F3xx_HAL_Driver
Kojto 93:e188a91d3eaa 50 * @{
Kojto 93:e188a91d3eaa 51 */
Kojto 93:e188a91d3eaa 52
Kojto 122:f9eeca106725 53 /** @addtogroup FLASHEx
Kojto 93:e188a91d3eaa 54 * @{
Kojto 93:e188a91d3eaa 55 */
Kojto 93:e188a91d3eaa 56
Kojto 122:f9eeca106725 57 /** @addtogroup FLASHEx_Private_Constants
Kojto 93:e188a91d3eaa 58 * @{
Kojto 122:f9eeca106725 59 */
Kojto 122:f9eeca106725 60
Kojto 93:e188a91d3eaa 61 #define FLASH_SIZE_DATA_REGISTER ((uint32_t)0x1FFFF7CC)
Kojto 122:f9eeca106725 62
Kojto 93:e188a91d3eaa 63 /**
Kojto 93:e188a91d3eaa 64 * @}
Kojto 122:f9eeca106725 65 */
Kojto 93:e188a91d3eaa 66
Kojto 122:f9eeca106725 67 /** @addtogroup FLASHEx_Private_Macros
Kojto 93:e188a91d3eaa 68 * @{
Kojto 93:e188a91d3eaa 69 */
Kojto 122:f9eeca106725 70 #define IS_FLASH_TYPEERASE(VALUE) (((VALUE) == FLASH_TYPEERASE_PAGES) || \
Kojto 122:f9eeca106725 71 ((VALUE) == FLASH_TYPEERASE_MASSERASE))
Kojto 122:f9eeca106725 72
Kojto 122:f9eeca106725 73 #define IS_OPTIONBYTE(VALUE) ((VALUE) <= (OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER | OPTIONBYTE_DATA))
Kojto 122:f9eeca106725 74
Kojto 122:f9eeca106725 75 #define IS_WRPSTATE(VALUE) (((VALUE) == OB_WRPSTATE_DISABLE) || \
Kojto 122:f9eeca106725 76 ((VALUE) == OB_WRPSTATE_ENABLE))
Kojto 122:f9eeca106725 77
Kojto 122:f9eeca106725 78 #define IS_OB_DATA_ADDRESS(ADDRESS) (((ADDRESS) == OB_DATA_ADDRESS_DATA0) || ((ADDRESS) == OB_DATA_ADDRESS_DATA1))
Kojto 122:f9eeca106725 79
Kojto 122:f9eeca106725 80 #define IS_OB_RDP_LEVEL(LEVEL) (((LEVEL) == OB_RDP_LEVEL_0) ||\
Kojto 122:f9eeca106725 81 ((LEVEL) == OB_RDP_LEVEL_1))/*||\
Kojto 122:f9eeca106725 82 ((LEVEL) == OB_RDP_LEVEL_2))*/
Kojto 122:f9eeca106725 83
Kojto 122:f9eeca106725 84 #define IS_OB_IWDG_SOURCE(SOURCE) (((SOURCE) == OB_IWDG_SW) || ((SOURCE) == OB_IWDG_HW))
Kojto 122:f9eeca106725 85
Kojto 122:f9eeca106725 86 #define IS_OB_STOP_SOURCE(SOURCE) (((SOURCE) == OB_STOP_NO_RST) || ((SOURCE) == OB_STOP_RST))
Kojto 122:f9eeca106725 87
Kojto 122:f9eeca106725 88 #define IS_OB_STDBY_SOURCE(SOURCE) (((SOURCE) == OB_STDBY_NO_RST) || ((SOURCE) == OB_STDBY_RST))
Kojto 122:f9eeca106725 89
Kojto 122:f9eeca106725 90 #define IS_OB_BOOT1(BOOT1) (((BOOT1) == OB_BOOT1_RESET) || ((BOOT1) == OB_BOOT1_SET))
Kojto 122:f9eeca106725 91
Kojto 122:f9eeca106725 92 #define IS_OB_VDDA_ANALOG(ANALOG) (((ANALOG) == OB_VDDA_ANALOG_ON) || ((ANALOG) == OB_VDDA_ANALOG_OFF))
Kojto 122:f9eeca106725 93
Kojto 122:f9eeca106725 94 #define IS_OB_SRAM_PARITY(PARITY) (((PARITY) == OB_SRAM_PARITY_SET) || ((PARITY) == OB_SRAM_PARITY_RESET))
Kojto 122:f9eeca106725 95
Kojto 122:f9eeca106725 96
Kojto 122:f9eeca106725 97 #if defined(FLASH_OBR_SDADC12_VDD_MONITOR)
Kojto 122:f9eeca106725 98 #define IS_OB_SDACD_VDD_MONITOR(VDD_MONITOR) (((VDD_MONITOR) == OB_SDACD_VDD_MONITOR_SET) || \
Kojto 122:f9eeca106725 99 ((VDD_MONITOR) == OB_SDACD_VDD_MONITOR_RESET))
Kojto 122:f9eeca106725 100 #endif /* FLASH_OBR_SDADC12_VDD_MONITOR */
Kojto 122:f9eeca106725 101
Kojto 122:f9eeca106725 102 #define IS_OB_WRP(PAGE) (((PAGE) != 0x0000000))
Kojto 122:f9eeca106725 103
Kojto 122:f9eeca106725 104 #if defined(STM32F302xC) || defined(STM32F303xC) || defined(STM32F358xx) \
Kojto 122:f9eeca106725 105 || defined(STM32F373xC) || defined(STM32F378xx)
Kojto 122:f9eeca106725 106 #define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x100) ? \
Kojto 93:e188a91d3eaa 107 ((ADDRESS) <= 0x0803FFFF) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80) ? \
Kojto 93:e188a91d3eaa 108 ((ADDRESS) <= 0x0801FFFF) : ((ADDRESS) <= 0x0800FFFF))))
Kojto 93:e188a91d3eaa 109 #endif /* STM32F302xC || STM32F303xC || STM32F358xx || */
Kojto 93:e188a91d3eaa 110 /* STM32F373xC || STM32F378xx */
Kojto 93:e188a91d3eaa 111
Kojto 93:e188a91d3eaa 112 #if defined(STM32F302xE) || defined(STM32F303xE) || defined(STM32F398xx)
Kojto 122:f9eeca106725 113 #define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && ((ADDRESS) <= 0x0807FFFF))
Kojto 93:e188a91d3eaa 114 #endif /* STM32F302xE || STM32F303xE || STM32F398xx */
Kojto 93:e188a91d3eaa 115
Kojto 122:f9eeca106725 116 #if defined(STM32F301x8) || defined(STM32F302x8) || defined(STM32F318xx) \
Kojto 122:f9eeca106725 117 || defined(STM32F303x8) || defined(STM32F334x8) || defined(STM32F328xx)
Kojto 122:f9eeca106725 118 #define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x40) ? \
Kojto 93:e188a91d3eaa 119 ((ADDRESS) <= 0x0800FFFF) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20) ? \
Kojto 93:e188a91d3eaa 120 ((ADDRESS) <= 0x08007FFF) : ((ADDRESS) <= 0x08003FFF))))
Kojto 93:e188a91d3eaa 121 #endif /* STM32F301x8 || STM32F302x8 || STM32F318xx || */
Kojto 93:e188a91d3eaa 122 /* STM32F303x8 || STM32F334x8 || STM32F328xx */
Kojto 93:e188a91d3eaa 123
Kojto 122:f9eeca106725 124 #if defined(STM32F302xC) || defined(STM32F303xC) || defined(STM32F358xx) \
Kojto 122:f9eeca106725 125 || defined(STM32F373xC) || defined(STM32F378xx)
Kojto 93:e188a91d3eaa 126 #define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x100) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0803FFFF) : \
Kojto 93:e188a91d3eaa 127 (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0801FFFF) : \
Kojto 93:e188a91d3eaa 128 ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0800FFFF)))
Kojto 93:e188a91d3eaa 129 #endif /* STM32F302xC || STM32F303xC || STM32F358xx || */
Kojto 93:e188a91d3eaa 130 /* STM32F373xC || STM32F378xx */
Kojto 93:e188a91d3eaa 131
Kojto 93:e188a91d3eaa 132 #if defined(STM32F302xE) || defined(STM32F303xE) || defined(STM32F398xx)
Kojto 93:e188a91d3eaa 133 #define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0807FFFF)
Kojto 93:e188a91d3eaa 134 #endif /* STM32F302xE || STM32F303xE || STM32F398xx */
Kojto 93:e188a91d3eaa 135
Kojto 122:f9eeca106725 136 #if defined(STM32F301x8) || defined(STM32F302x8) || defined(STM32F318xx) \
Kojto 122:f9eeca106725 137 || defined(STM32F303x8) || defined(STM32F334x8) || defined(STM32F328xx)
Kojto 93:e188a91d3eaa 138 #define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x40) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0800FFFF) : \
Kojto 93:e188a91d3eaa 139 (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x08007FFF) : \
Kojto 93:e188a91d3eaa 140 ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x08003FFF)))
Kojto 93:e188a91d3eaa 141 #endif /* STM32F301x8 || STM32F302x8 || STM32F318xx || */
Kojto 93:e188a91d3eaa 142 /* STM32F303x8 || STM32F334x8 || STM32F328xx */
Kojto 122:f9eeca106725 143
Kojto 93:e188a91d3eaa 144 /**
Kojto 93:e188a91d3eaa 145 * @}
Kojto 93:e188a91d3eaa 146 */
Kojto 93:e188a91d3eaa 147
Kojto 122:f9eeca106725 148 /* Exported types ------------------------------------------------------------*/
Kojto 122:f9eeca106725 149 /** @defgroup FLASHEx_Exported_Types FLASHEx Exported Types
Kojto 122:f9eeca106725 150 * @{
Kojto 122:f9eeca106725 151 */
Kojto 122:f9eeca106725 152 /**
Kojto 122:f9eeca106725 153 * @brief FLASH Erase structure definition
Kojto 122:f9eeca106725 154 */
Kojto 122:f9eeca106725 155 typedef struct
Kojto 122:f9eeca106725 156 {
Kojto 122:f9eeca106725 157 uint32_t TypeErase; /*!< TypeErase: Mass erase or page erase.
Kojto 122:f9eeca106725 158 This parameter can be a value of @ref FLASHEx_Type_Erase */
Kojto 122:f9eeca106725 159
Kojto 122:f9eeca106725 160 uint32_t PageAddress; /*!< PageAdress: Initial FLASH page address to erase when mass erase is disabled
Kojto 122:f9eeca106725 161 This parameter must be a number between Min_Data = FLASH_BASE and Max_Data = FLASH_BANK1_END */
Kojto 122:f9eeca106725 162
Kojto 122:f9eeca106725 163 uint32_t NbPages; /*!< NbPages: Number of pagess to be erased.
Kojto 122:f9eeca106725 164 This parameter must be a value between Min_Data = 1 and Max_Data = (max number of pages - value of initial page)*/
Kojto 122:f9eeca106725 165
Kojto 122:f9eeca106725 166 } FLASH_EraseInitTypeDef;
Kojto 122:f9eeca106725 167
Kojto 122:f9eeca106725 168 /**
Kojto 122:f9eeca106725 169 * @brief FLASH Options bytes program structure definition
Kojto 122:f9eeca106725 170 */
Kojto 122:f9eeca106725 171 typedef struct
Kojto 122:f9eeca106725 172 {
Kojto 122:f9eeca106725 173 uint32_t OptionType; /*!< OptionType: Option byte to be configured.
Kojto 122:f9eeca106725 174 This parameter can be a value of @ref FLASHEx_OB_Type */
Kojto 122:f9eeca106725 175
Kojto 122:f9eeca106725 176 uint32_t WRPState; /*!< WRPState: Write protection activation or deactivation.
Kojto 122:f9eeca106725 177 This parameter can be a value of @ref FLASHEx_OB_WRP_State */
Kojto 122:f9eeca106725 178
Kojto 122:f9eeca106725 179 uint32_t WRPPage; /*!< WRPPage: specifies the page(s) to be write protected
Kojto 122:f9eeca106725 180 This parameter can be a value of @ref FLASHEx_OB_Write_Protection */
Kojto 122:f9eeca106725 181
Kojto 122:f9eeca106725 182 uint8_t RDPLevel; /*!< RDPLevel: Set the read protection level..
Kojto 122:f9eeca106725 183 This parameter can be a value of @ref FLASHEx_OB_Read_Protection */
Kojto 122:f9eeca106725 184
Kojto 122:f9eeca106725 185 uint8_t USERConfig; /*!< USERConfig: Program the FLASH User Option Byte:
Kojto 122:f9eeca106725 186 IWDG / STOP / STDBY / BOOT1 / VDDA_ANALOG / SRAM_PARITY / SDADC12_VDD_MONITOR
Kojto 122:f9eeca106725 187 This parameter can be a combination of @ref FLASHEx_OB_IWatchdog, @ref FLASHEx_OB_nRST_STOP,
Kojto 122:f9eeca106725 188 @ref FLASHEx_OB_nRST_STDBY, @ref FLASHEx_OB_BOOT1, @ref FLASHEx_OB_VDDA_Analog_Monitoring,
Kojto 122:f9eeca106725 189 @ref FLASHEx_OB_RAM_Parity_Check_Enable.
Kojto 122:f9eeca106725 190 @if STM32F373xC
Kojto 122:f9eeca106725 191 And @ref FLASHEx_OB_SDADC12_VDD_MONITOR (only for STM32F373xC & STM32F378xx devices)
Kojto 122:f9eeca106725 192 @endif
Kojto 122:f9eeca106725 193 @if STM32F378xx
Kojto 122:f9eeca106725 194 And @ref FLASHEx_OB_SDADC12_VDD_MONITOR (only for STM32F373xC & STM32F378xx devices)
Kojto 122:f9eeca106725 195 @endif
Kojto 122:f9eeca106725 196 */
Kojto 122:f9eeca106725 197
Kojto 122:f9eeca106725 198 uint32_t DATAAddress; /*!< DATAAddress: Address of the option byte DATA to be programmed
Kojto 122:f9eeca106725 199 This parameter can be a value of @ref FLASHEx_OB_Data_Address */
Kojto 122:f9eeca106725 200
Kojto 122:f9eeca106725 201 uint8_t DATAData; /*!< DATAData: Data to be stored in the option byte DATA
Kojto 122:f9eeca106725 202 This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF */
Kojto 122:f9eeca106725 203 } FLASH_OBProgramInitTypeDef;
Kojto 122:f9eeca106725 204 /**
Kojto 122:f9eeca106725 205 * @}
Kojto 122:f9eeca106725 206 */
Kojto 122:f9eeca106725 207
Kojto 122:f9eeca106725 208 /* Exported constants --------------------------------------------------------*/
Kojto 122:f9eeca106725 209 /** @defgroup FLASHEx_Exported_Constants FLASHEx Exported Constants
Kojto 122:f9eeca106725 210 * @{
Kojto 122:f9eeca106725 211 */
Kojto 122:f9eeca106725 212
Kojto 122:f9eeca106725 213 /** @defgroup FLASHEx_Page_Size FLASHEx Page Size
Kojto 122:f9eeca106725 214 * @{
Kojto 122:f9eeca106725 215 */
Kojto 122:f9eeca106725 216 #define FLASH_PAGE_SIZE 0x800
Kojto 122:f9eeca106725 217 /**
Kojto 122:f9eeca106725 218 * @}
Kojto 122:f9eeca106725 219 */
Kojto 122:f9eeca106725 220
Kojto 122:f9eeca106725 221 /** @defgroup FLASHEx_Type_Erase FLASH Type Erase
Kojto 122:f9eeca106725 222 * @{
Kojto 122:f9eeca106725 223 */
Kojto 122:f9eeca106725 224 #define FLASH_TYPEERASE_PAGES ((uint32_t)0x00) /*!<Pages erase only*/
Kojto 122:f9eeca106725 225 #define FLASH_TYPEERASE_MASSERASE ((uint32_t)0x01) /*!<Flash mass erase activation*/
Kojto 122:f9eeca106725 226
Kojto 122:f9eeca106725 227 /**
Kojto 122:f9eeca106725 228 * @}
Kojto 122:f9eeca106725 229 */
Kojto 122:f9eeca106725 230
Kojto 122:f9eeca106725 231 /** @defgroup FLASHEx_OptionByte_Constants Option Byte Constants
Kojto 122:f9eeca106725 232 * @{
Kojto 122:f9eeca106725 233 */
Kojto 122:f9eeca106725 234
Kojto 122:f9eeca106725 235 /** @defgroup FLASHEx_OB_Type Option Bytes Type
Kojto 122:f9eeca106725 236 * @{
Kojto 122:f9eeca106725 237 */
Kojto 122:f9eeca106725 238 #define OPTIONBYTE_WRP ((uint32_t)0x01) /*!<WRP option byte configuration*/
Kojto 122:f9eeca106725 239 #define OPTIONBYTE_RDP ((uint32_t)0x02) /*!<RDP option byte configuration*/
Kojto 122:f9eeca106725 240 #define OPTIONBYTE_USER ((uint32_t)0x04) /*!<USER option byte configuration*/
Kojto 122:f9eeca106725 241 #define OPTIONBYTE_DATA ((uint32_t)0x08) /*!<DATA option byte configuration*/
Kojto 122:f9eeca106725 242
Kojto 122:f9eeca106725 243 /**
Kojto 122:f9eeca106725 244 * @}
Kojto 122:f9eeca106725 245 */
Kojto 122:f9eeca106725 246
Kojto 122:f9eeca106725 247 /** @defgroup FLASHEx_OB_WRP_State Option Byte WRP State
Kojto 122:f9eeca106725 248 * @{
Kojto 122:f9eeca106725 249 */
Kojto 122:f9eeca106725 250 #define OB_WRPSTATE_DISABLE ((uint32_t)0x00) /*!<Disable the write protection of the desired pages*/
Kojto 122:f9eeca106725 251 #define OB_WRPSTATE_ENABLE ((uint32_t)0x01) /*!<Enable the write protection of the desired pagess*/
Kojto 122:f9eeca106725 252
Kojto 122:f9eeca106725 253 /**
Kojto 122:f9eeca106725 254 * @}
Kojto 122:f9eeca106725 255 */
Kojto 122:f9eeca106725 256
Kojto 122:f9eeca106725 257 /** @defgroup FLASHEx_OB_Write_Protection FLASHEx OB Write Protection
Kojto 93:e188a91d3eaa 258 * @{
Kojto 93:e188a91d3eaa 259 */
Kojto 93:e188a91d3eaa 260 #define OB_WRP_PAGES0TO1 ((uint32_t)0x00000001) /* Write protection of page 0 to 1 */
Kojto 93:e188a91d3eaa 261 #define OB_WRP_PAGES2TO3 ((uint32_t)0x00000002) /* Write protection of page 2 to 3 */
Kojto 93:e188a91d3eaa 262 #define OB_WRP_PAGES4TO5 ((uint32_t)0x00000004) /* Write protection of page 4 to 5 */
Kojto 93:e188a91d3eaa 263 #define OB_WRP_PAGES6TO7 ((uint32_t)0x00000008) /* Write protection of page 6 to 7 */
Kojto 93:e188a91d3eaa 264 #define OB_WRP_PAGES8TO9 ((uint32_t)0x00000010) /* Write protection of page 8 to 9 */
Kojto 93:e188a91d3eaa 265 #define OB_WRP_PAGES10TO11 ((uint32_t)0x00000020) /* Write protection of page 10 to 11 */
Kojto 93:e188a91d3eaa 266 #define OB_WRP_PAGES12TO13 ((uint32_t)0x00000040) /* Write protection of page 12 to 13 */
Kojto 93:e188a91d3eaa 267 #define OB_WRP_PAGES14TO15 ((uint32_t)0x00000080) /* Write protection of page 14 to 15 */
Kojto 93:e188a91d3eaa 268 #define OB_WRP_PAGES16TO17 ((uint32_t)0x00000100) /* Write protection of page 16 to 17 */
Kojto 93:e188a91d3eaa 269 #define OB_WRP_PAGES18TO19 ((uint32_t)0x00000200) /* Write protection of page 18 to 19 */
Kojto 93:e188a91d3eaa 270 #define OB_WRP_PAGES20TO21 ((uint32_t)0x00000400) /* Write protection of page 20 to 21 */
Kojto 93:e188a91d3eaa 271 #define OB_WRP_PAGES22TO23 ((uint32_t)0x00000800) /* Write protection of page 22 to 23 */
Kojto 93:e188a91d3eaa 272 #define OB_WRP_PAGES24TO25 ((uint32_t)0x00001000) /* Write protection of page 24 to 25 */
Kojto 93:e188a91d3eaa 273 #define OB_WRP_PAGES26TO27 ((uint32_t)0x00002000) /* Write protection of page 26 to 27 */
Kojto 93:e188a91d3eaa 274 #define OB_WRP_PAGES28TO29 ((uint32_t)0x00004000) /* Write protection of page 28 to 29 */
Kojto 93:e188a91d3eaa 275 #define OB_WRP_PAGES30TO31 ((uint32_t)0x00008000) /* Write protection of page 30 to 31 */
Kojto 93:e188a91d3eaa 276
Kojto 122:f9eeca106725 277 #if defined(STM32F302xC) || defined(STM32F303xC) || defined(STM32F358xx) \
Kojto 122:f9eeca106725 278 || defined(STM32F373xC) || defined(STM32F378xx)
Kojto 93:e188a91d3eaa 279 #define OB_WRP_PAGES32TO33 ((uint32_t)0x00010000) /* Write protection of page 32 to 33 */
Kojto 93:e188a91d3eaa 280 #define OB_WRP_PAGES34TO35 ((uint32_t)0x00020000) /* Write protection of page 34 to 35 */
Kojto 93:e188a91d3eaa 281 #define OB_WRP_PAGES36TO37 ((uint32_t)0x00040000) /* Write protection of page 36 to 37 */
Kojto 93:e188a91d3eaa 282 #define OB_WRP_PAGES38TO39 ((uint32_t)0x00080000) /* Write protection of page 38 to 39 */
Kojto 93:e188a91d3eaa 283 #define OB_WRP_PAGES40TO41 ((uint32_t)0x00100000) /* Write protection of page 40 to 41 */
Kojto 93:e188a91d3eaa 284 #define OB_WRP_PAGES42TO43 ((uint32_t)0x00200000) /* Write protection of page 42 to 43 */
Kojto 93:e188a91d3eaa 285 #define OB_WRP_PAGES44TO45 ((uint32_t)0x00400000) /* Write protection of page 44 to 45 */
Kojto 93:e188a91d3eaa 286 #define OB_WRP_PAGES46TO47 ((uint32_t)0x00800000) /* Write protection of page 46 to 47 */
Kojto 93:e188a91d3eaa 287 #define OB_WRP_PAGES48TO49 ((uint32_t)0x01000000) /* Write protection of page 48 to 49 */
Kojto 93:e188a91d3eaa 288 #define OB_WRP_PAGES50TO51 ((uint32_t)0x02000000) /* Write protection of page 50 to 51 */
Kojto 93:e188a91d3eaa 289 #define OB_WRP_PAGES52TO53 ((uint32_t)0x04000000) /* Write protection of page 52 to 53 */
Kojto 93:e188a91d3eaa 290 #define OB_WRP_PAGES54TO55 ((uint32_t)0x08000000) /* Write protection of page 54 to 55 */
Kojto 93:e188a91d3eaa 291 #define OB_WRP_PAGES56TO57 ((uint32_t)0x10000000) /* Write protection of page 56 to 57 */
Kojto 93:e188a91d3eaa 292 #define OB_WRP_PAGES58TO59 ((uint32_t)0x20000000) /* Write protection of page 58 to 59 */
Kojto 93:e188a91d3eaa 293 #define OB_WRP_PAGES60TO61 ((uint32_t)0x40000000) /* Write protection of page 60 to 61 */
Kojto 122:f9eeca106725 294 #define OB_WRP_PAGES62TO127 ((uint32_t)0x80000000U) /* Write protection of page 62 to 127 */
Kojto 93:e188a91d3eaa 295 #endif /* STM32F302xC || STM32F303xC || STM32F358xx || */
Kojto 93:e188a91d3eaa 296 /* STM32F373xC || STM32F378xx */
Kojto 93:e188a91d3eaa 297
Kojto 93:e188a91d3eaa 298 #if defined(STM32F302xE) || defined(STM32F303xE) || defined(STM32F398xx)
Kojto 93:e188a91d3eaa 299 #define OB_WRP_PAGES32TO33 ((uint32_t)0x00010000) /* Write protection of page 32 to 33 */
Kojto 93:e188a91d3eaa 300 #define OB_WRP_PAGES34TO35 ((uint32_t)0x00020000) /* Write protection of page 34 to 35 */
Kojto 93:e188a91d3eaa 301 #define OB_WRP_PAGES36TO37 ((uint32_t)0x00040000) /* Write protection of page 36 to 37 */
Kojto 93:e188a91d3eaa 302 #define OB_WRP_PAGES38TO39 ((uint32_t)0x00080000) /* Write protection of page 38 to 39 */
Kojto 93:e188a91d3eaa 303 #define OB_WRP_PAGES40TO41 ((uint32_t)0x00100000) /* Write protection of page 40 to 41 */
Kojto 93:e188a91d3eaa 304 #define OB_WRP_PAGES42TO43 ((uint32_t)0x00200000) /* Write protection of page 42 to 43 */
Kojto 93:e188a91d3eaa 305 #define OB_WRP_PAGES44TO45 ((uint32_t)0x00400000) /* Write protection of page 44 to 45 */
Kojto 93:e188a91d3eaa 306 #define OB_WRP_PAGES46TO47 ((uint32_t)0x00800000) /* Write protection of page 46 to 47 */
Kojto 93:e188a91d3eaa 307 #define OB_WRP_PAGES48TO49 ((uint32_t)0x01000000) /* Write protection of page 48 to 49 */
Kojto 93:e188a91d3eaa 308 #define OB_WRP_PAGES50TO51 ((uint32_t)0x02000000) /* Write protection of page 50 to 51 */
Kojto 93:e188a91d3eaa 309 #define OB_WRP_PAGES52TO53 ((uint32_t)0x04000000) /* Write protection of page 52 to 53 */
Kojto 93:e188a91d3eaa 310 #define OB_WRP_PAGES54TO55 ((uint32_t)0x08000000) /* Write protection of page 54 to 55 */
Kojto 93:e188a91d3eaa 311 #define OB_WRP_PAGES56TO57 ((uint32_t)0x10000000) /* Write protection of page 56 to 57 */
Kojto 93:e188a91d3eaa 312 #define OB_WRP_PAGES58TO59 ((uint32_t)0x20000000) /* Write protection of page 58 to 59 */
Kojto 93:e188a91d3eaa 313 #define OB_WRP_PAGES60TO61 ((uint32_t)0x40000000) /* Write protection of page 60 to 61 */
Kojto 122:f9eeca106725 314 #define OB_WRP_PAGES62TO255 ((uint32_t)0x80000000U) /* Write protection of page 62 to 255 */
Kojto 93:e188a91d3eaa 315 #endif /* STM32F302xE || STM32F303xE || STM32F398xx */
Kojto 93:e188a91d3eaa 316
Kojto 122:f9eeca106725 317 #define OB_WRP_PAGES0TO15MASK ((uint32_t)0x000000FFU)
Kojto 122:f9eeca106725 318 #define OB_WRP_PAGES16TO31MASK ((uint32_t)0x0000FF00U)
Kojto 93:e188a91d3eaa 319
Kojto 122:f9eeca106725 320 #if defined(STM32F302xC) || defined(STM32F303xC) || defined(STM32F358xx) \
Kojto 122:f9eeca106725 321 || defined(STM32F373xC) || defined(STM32F378xx)
Kojto 122:f9eeca106725 322 #define OB_WRP_PAGES32TO47MASK ((uint32_t)0x00FF0000U)
Kojto 122:f9eeca106725 323 #define OB_WRP_PAGES48TO127MASK ((uint32_t)0xFF000000U)
Kojto 93:e188a91d3eaa 324 #endif /* STM32F302xC || STM32F303xC || STM32F358xx || */
Kojto 93:e188a91d3eaa 325 /* STM32F373xC || STM32F378xx */
Kojto 93:e188a91d3eaa 326
Kojto 93:e188a91d3eaa 327 #if defined(STM32F302xE) || defined(STM32F303xE) || defined(STM32F398xx)
Kojto 122:f9eeca106725 328 #define OB_WRP_PAGES32TO47MASK ((uint32_t)0x00FF0000U)
Kojto 122:f9eeca106725 329 #define OB_WRP_PAGES48TO255MASK ((uint32_t)0xFF000000U)
Kojto 93:e188a91d3eaa 330 #endif /* STM32F302xE || STM32F303xE || STM32F398xx */
Kojto 93:e188a91d3eaa 331
Kojto 122:f9eeca106725 332 #if defined(STM32F302xC) || defined(STM32F303xC) || defined(STM32F358xx) \
Kojto 122:f9eeca106725 333 || defined(STM32F373xC) || defined(STM32F378xx)
Kojto 122:f9eeca106725 334 #define OB_WRP_PAGES32TO47MASK ((uint32_t)0x00FF0000U)
Kojto 122:f9eeca106725 335 #define OB_WRP_PAGES48TO127MASK ((uint32_t)0xFF000000U)
Kojto 93:e188a91d3eaa 336 #endif /* STM32F302xC || STM32F303xC || STM32F358xx || */
Kojto 93:e188a91d3eaa 337 /* STM32F373xC || STM32F378xx */
Kojto 93:e188a91d3eaa 338
Kojto 122:f9eeca106725 339 #if defined(STM32F302xE) || defined(STM32F303xE) || defined(STM32F398xx) \
Kojto 122:f9eeca106725 340 || defined(STM32F302xC) || defined(STM32F303xC) || defined(STM32F358xx) \
Kojto 122:f9eeca106725 341 || defined(STM32F373xC) || defined(STM32F378xx)
Kojto 122:f9eeca106725 342 #define OB_WRP_ALLPAGES ((uint32_t)0xFFFFFFFFU) /*!< Write protection of all pages */
Kojto 93:e188a91d3eaa 343 #endif /* STM32F302xE || STM32F303xE || STM32F398xx || */
Kojto 93:e188a91d3eaa 344 /* STM32F302xC || STM32F303xC || STM32F358xx || */
Kojto 93:e188a91d3eaa 345 /* STM32F373xC || STM32F378xx */
Kojto 93:e188a91d3eaa 346
Kojto 122:f9eeca106725 347 #if defined(STM32F301x8) || defined(STM32F302x8) || defined(STM32F318xx) \
Kojto 122:f9eeca106725 348 || defined(STM32F303x8) || defined(STM32F334x8) || defined(STM32F328xx)
Kojto 93:e188a91d3eaa 349 #define OB_WRP_ALLPAGES ((uint32_t)0x0000FFFF) /*!< Write protection of all pages */
Kojto 93:e188a91d3eaa 350 #endif /* STM32F301x8 || STM32F302x8 || STM32F318xx || */
Kojto 93:e188a91d3eaa 351 /* STM32F303x8 || STM32F334x8 || STM32F328xx */
Kojto 93:e188a91d3eaa 352
Kojto 122:f9eeca106725 353 /**
Kojto 122:f9eeca106725 354 * @}
Kojto 122:f9eeca106725 355 */
Kojto 122:f9eeca106725 356
Kojto 122:f9eeca106725 357 /** @defgroup FLASHEx_OB_Read_Protection Option Byte Read Protection
Kojto 122:f9eeca106725 358 * @{
Kojto 122:f9eeca106725 359 */
Kojto 122:f9eeca106725 360 #define OB_RDP_LEVEL_0 ((uint8_t)0xAA)
Kojto 122:f9eeca106725 361 #define OB_RDP_LEVEL_1 ((uint8_t)0xBB)
Kojto 122:f9eeca106725 362 #define OB_RDP_LEVEL_2 ((uint8_t)0xCC) /*!< Warning: When enabling read protection level 2
Kojto 122:f9eeca106725 363 it's no more possible to go back to level 1 or 0 */
Kojto 122:f9eeca106725 364 /**
Kojto 122:f9eeca106725 365 * @}
Kojto 122:f9eeca106725 366 */
Kojto 122:f9eeca106725 367
Kojto 122:f9eeca106725 368 /** @defgroup FLASHEx_OB_IWatchdog Option Byte IWatchdog
Kojto 122:f9eeca106725 369 * @{
Kojto 122:f9eeca106725 370 */
Kojto 122:f9eeca106725 371 #define OB_IWDG_SW ((uint8_t)0x01) /*!< Software IWDG selected */
Kojto 122:f9eeca106725 372 #define OB_IWDG_HW ((uint8_t)0x00) /*!< Hardware IWDG selected */
Kojto 122:f9eeca106725 373 /**
Kojto 122:f9eeca106725 374 * @}
Kojto 122:f9eeca106725 375 */
Kojto 122:f9eeca106725 376
Kojto 122:f9eeca106725 377 /** @defgroup FLASHEx_OB_nRST_STOP Option Byte nRST STOP
Kojto 122:f9eeca106725 378 * @{
Kojto 122:f9eeca106725 379 */
Kojto 122:f9eeca106725 380 #define OB_STOP_NO_RST ((uint8_t)0x02) /*!< No reset generated when entering in STOP */
Kojto 122:f9eeca106725 381 #define OB_STOP_RST ((uint8_t)0x00) /*!< Reset generated when entering in STOP */
Kojto 93:e188a91d3eaa 382 /**
Kojto 93:e188a91d3eaa 383 * @}
Kojto 93:e188a91d3eaa 384 */
Kojto 93:e188a91d3eaa 385
Kojto 122:f9eeca106725 386 /** @defgroup FLASHEx_OB_nRST_STDBY Option Byte nRST STDBY
Kojto 122:f9eeca106725 387 * @{
Kojto 122:f9eeca106725 388 */
Kojto 122:f9eeca106725 389 #define OB_STDBY_NO_RST ((uint8_t)0x04) /*!< No reset generated when entering in STANDBY */
Kojto 122:f9eeca106725 390 #define OB_STDBY_RST ((uint8_t)0x00) /*!< Reset generated when entering in STANDBY */
Kojto 122:f9eeca106725 391 /**
Kojto 122:f9eeca106725 392 * @}
Kojto 122:f9eeca106725 393 */
Kojto 122:f9eeca106725 394
Kojto 122:f9eeca106725 395 /** @defgroup FLASHEx_OB_BOOT1 Option Byte BOOT1
Kojto 122:f9eeca106725 396 * @{
Kojto 122:f9eeca106725 397 */
Kojto 122:f9eeca106725 398 #define OB_BOOT1_RESET ((uint8_t)0x00) /*!< BOOT1 Reset */
Kojto 122:f9eeca106725 399 #define OB_BOOT1_SET ((uint8_t)0x10) /*!< BOOT1 Set */
Kojto 122:f9eeca106725 400 /**
Kojto 122:f9eeca106725 401 * @}
Kojto 122:f9eeca106725 402 */
Kojto 122:f9eeca106725 403
Kojto 122:f9eeca106725 404 /** @defgroup FLASHEx_OB_VDDA_Analog_Monitoring Option Byte VDDA Analog Monitoring
Kojto 122:f9eeca106725 405 * @{
Kojto 122:f9eeca106725 406 */
Kojto 122:f9eeca106725 407 #define OB_VDDA_ANALOG_ON ((uint8_t)0x20) /*!< Analog monitoring on VDDA Power source ON */
Kojto 122:f9eeca106725 408 #define OB_VDDA_ANALOG_OFF ((uint8_t)0x00) /*!< Analog monitoring on VDDA Power source OFF */
Kojto 122:f9eeca106725 409 /**
Kojto 122:f9eeca106725 410 * @}
Kojto 122:f9eeca106725 411 */
Kojto 122:f9eeca106725 412
Kojto 122:f9eeca106725 413 /** @defgroup FLASHEx_OB_RAM_Parity_Check_Enable Option Byte SRAM Parity Check Enable
Kojto 122:f9eeca106725 414 * @{
Kojto 122:f9eeca106725 415 */
Kojto 122:f9eeca106725 416 #define OB_SRAM_PARITY_SET ((uint8_t)0x00) /*!< SRAM parity check enable set */
Kojto 122:f9eeca106725 417 #define OB_SRAM_PARITY_RESET ((uint8_t)0x40) /*!< SRAM parity check enable reset */
Kojto 122:f9eeca106725 418 /**
Kojto 122:f9eeca106725 419 * @}
Kojto 122:f9eeca106725 420 */
Kojto 122:f9eeca106725 421
Kojto 122:f9eeca106725 422
Kojto 122:f9eeca106725 423 #if defined(FLASH_OBR_SDADC12_VDD_MONITOR)
Kojto 122:f9eeca106725 424 /** @defgroup FLASHEx_OB_SDADC12_VDD_MONITOR OB SDADC12 VDD MONITOR
Kojto 93:e188a91d3eaa 425 * @{
Kojto 93:e188a91d3eaa 426 */
Kojto 93:e188a91d3eaa 427 #define OB_SDACD_VDD_MONITOR_RESET ((uint8_t)0x00) /*!< SDADC VDD Monitor reset */
Kojto 93:e188a91d3eaa 428 #define OB_SDACD_VDD_MONITOR_SET ((uint8_t)0x80) /*!< SDADC VDD Monitor set */
Kojto 93:e188a91d3eaa 429
Kojto 93:e188a91d3eaa 430 /**
Kojto 93:e188a91d3eaa 431 * @}
Kojto 93:e188a91d3eaa 432 */
Kojto 122:f9eeca106725 433 #endif /* FLASH_OBR_SDADC12_VDD_MONITOR */
Kojto 93:e188a91d3eaa 434
Kojto 122:f9eeca106725 435 /** @defgroup FLASHEx_OB_Data_Address Option Byte Data Address
Kojto 93:e188a91d3eaa 436 * @{
Kojto 93:e188a91d3eaa 437 */
Kojto 122:f9eeca106725 438 #define OB_DATA_ADDRESS_DATA0 ((uint32_t)0x1FFFF804)
Kojto 122:f9eeca106725 439 #define OB_DATA_ADDRESS_DATA1 ((uint32_t)0x1FFFF806)
Kojto 93:e188a91d3eaa 440 /**
Kojto 93:e188a91d3eaa 441 * @}
Kojto 93:e188a91d3eaa 442 */
Kojto 93:e188a91d3eaa 443
Kojto 93:e188a91d3eaa 444 /**
Kojto 93:e188a91d3eaa 445 * @}
Kojto 93:e188a91d3eaa 446 */
Kojto 93:e188a91d3eaa 447
Kojto 93:e188a91d3eaa 448 /**
Kojto 93:e188a91d3eaa 449 * @}
Kojto 93:e188a91d3eaa 450 */
Kojto 93:e188a91d3eaa 451
Kojto 122:f9eeca106725 452 /* Exported functions --------------------------------------------------------*/
Kojto 122:f9eeca106725 453 /** @addtogroup FLASHEx_Exported_Functions
Kojto 122:f9eeca106725 454 * @{
Kojto 122:f9eeca106725 455 */
Kojto 122:f9eeca106725 456
Kojto 122:f9eeca106725 457 /** @addtogroup FLASHEx_Exported_Functions_Group1
Kojto 122:f9eeca106725 458 * @{
Kojto 122:f9eeca106725 459 */
Kojto 122:f9eeca106725 460 /* IO operation functions *****************************************************/
Kojto 122:f9eeca106725 461 HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError);
Kojto 122:f9eeca106725 462 HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit);
Kojto 122:f9eeca106725 463
Kojto 122:f9eeca106725 464 /**
Kojto 122:f9eeca106725 465 * @}
Kojto 122:f9eeca106725 466 */
Kojto 122:f9eeca106725 467
Kojto 122:f9eeca106725 468 /** @addtogroup FLASHEx_Exported_Functions_Group2
Kojto 122:f9eeca106725 469 * @{
Kojto 122:f9eeca106725 470 */
Kojto 122:f9eeca106725 471 /* Peripheral Control functions ***********************************************/
Kojto 122:f9eeca106725 472 HAL_StatusTypeDef HAL_FLASHEx_OBErase(void);
Kojto 122:f9eeca106725 473 HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit);
Kojto 122:f9eeca106725 474 void HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit);
Kojto 122:f9eeca106725 475 uint32_t HAL_FLASHEx_OBGetUserData(uint32_t DATAAdress);
Kojto 122:f9eeca106725 476
Kojto 93:e188a91d3eaa 477 /**
Kojto 93:e188a91d3eaa 478 * @}
Kojto 93:e188a91d3eaa 479 */
Kojto 122:f9eeca106725 480
Kojto 122:f9eeca106725 481 /**
Kojto 122:f9eeca106725 482 * @}
Kojto 122:f9eeca106725 483 */
Kojto 122:f9eeca106725 484
Kojto 122:f9eeca106725 485 /**
Kojto 122:f9eeca106725 486 * @}
Kojto 122:f9eeca106725 487 */
Kojto 122:f9eeca106725 488
Kojto 122:f9eeca106725 489 /**
Kojto 122:f9eeca106725 490 * @}
Kojto 122:f9eeca106725 491 */
Kojto 122:f9eeca106725 492
Kojto 93:e188a91d3eaa 493 #ifdef __cplusplus
Kojto 93:e188a91d3eaa 494 }
Kojto 93:e188a91d3eaa 495 #endif
Kojto 93:e188a91d3eaa 496
Kojto 93:e188a91d3eaa 497 #endif /* __STM32F3xx_HAL_FLASH_EX_H */
Kojto 93:e188a91d3eaa 498
Kojto 93:e188a91d3eaa 499 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
Kojto 122:f9eeca106725 500