STM32F4xx HAL Documentation
Hardware Abstraction Layer for STM32F4 familiy
Loading...
Searching...
No Matches
stm32f4xx_hal_flash_ex.h File Reference

Header file of FLASH HAL Extension module. More...

Include dependency graph for stm32f4xx_hal_flash_ex.h:

Go to the source code of this file.

Data Structures

struct  FLASH_EraseInitTypeDef
 FLASH Erase structure definition. More...
 
struct  FLASH_OBProgramInitTypeDef
 FLASH Option Bytes Program structure definition. More...
 
struct  FLASH_AdvOBProgramInitTypeDef
 FLASH Advanced Option Bytes Program structure definition. More...
 

Macros

#define FLASH_TYPEERASE_SECTORS   0x00000000U
 
#define FLASH_TYPEERASE_MASSERASE   0x00000001U
 
#define FLASH_VOLTAGE_RANGE_1   0x00000000U
 
#define FLASH_VOLTAGE_RANGE_2   0x00000001U
 
#define FLASH_VOLTAGE_RANGE_3   0x00000002U
 
#define FLASH_VOLTAGE_RANGE_4   0x00000003U
 
#define OB_WRPSTATE_DISABLE   0x00000000U
 
#define OB_WRPSTATE_ENABLE   0x00000001U
 
#define OPTIONBYTE_WRP   0x00000001U
 
#define OPTIONBYTE_RDP   0x00000002U
 
#define OPTIONBYTE_USER   0x00000004U
 
#define OPTIONBYTE_BOR   0x00000008U
 
#define OB_RDP_LEVEL_0   ((uint8_t)0xAA)
 
#define OB_RDP_LEVEL_1   ((uint8_t)0x55)
 
#define OB_RDP_LEVEL_2   ((uint8_t)0xCC)
 
#define OB_IWDG_SW   ((uint8_t)0x20)
 
#define OB_IWDG_HW   ((uint8_t)0x00)
 
#define OB_STOP_NO_RST   ((uint8_t)0x40)
 
#define OB_STOP_RST   ((uint8_t)0x00)
 
#define OB_STDBY_NO_RST   ((uint8_t)0x80)
 
#define OB_STDBY_RST   ((uint8_t)0x00)
 
#define OB_BOR_LEVEL3   ((uint8_t)0x00)
 
#define OB_BOR_LEVEL2   ((uint8_t)0x04)
 
#define OB_BOR_LEVEL1   ((uint8_t)0x08)
 
#define OB_BOR_OFF   ((uint8_t)0x0C)
 
#define OB_PCROP_STATE_DISABLE   0x00000000U
 
#define OB_PCROP_STATE_ENABLE   0x00000001U
 
#define OPTIONBYTE_PCROP   0x00000001U
 
#define FLASH_LATENCY_0   FLASH_ACR_LATENCY_0WS
 
#define FLASH_LATENCY_1   FLASH_ACR_LATENCY_1WS
 
#define FLASH_LATENCY_2   FLASH_ACR_LATENCY_2WS
 
#define FLASH_LATENCY_3   FLASH_ACR_LATENCY_3WS
 
#define FLASH_LATENCY_4   FLASH_ACR_LATENCY_4WS
 
#define FLASH_LATENCY_5   FLASH_ACR_LATENCY_5WS
 
#define FLASH_LATENCY_6   FLASH_ACR_LATENCY_6WS
 
#define FLASH_LATENCY_7   FLASH_ACR_LATENCY_7WS
 
#define FLASH_LATENCY_8   FLASH_ACR_LATENCY_8WS
 
#define FLASH_LATENCY_9   FLASH_ACR_LATENCY_9WS
 
#define FLASH_LATENCY_10   FLASH_ACR_LATENCY_10WS
 
#define FLASH_LATENCY_11   FLASH_ACR_LATENCY_11WS
 
#define FLASH_LATENCY_12   FLASH_ACR_LATENCY_12WS
 
#define FLASH_LATENCY_13   FLASH_ACR_LATENCY_13WS
 
#define FLASH_LATENCY_14   FLASH_ACR_LATENCY_14WS
 
#define FLASH_LATENCY_15   FLASH_ACR_LATENCY_15WS
 
#define FLASH_BANK_1   1U
 
#define FLASH_MER_BIT   (FLASH_CR_MER)
 
#define FLASH_SECTOR_0   0U
 
#define FLASH_SECTOR_1   1U
 
#define FLASH_SECTOR_2   2U
 
#define FLASH_SECTOR_3   3U
 
#define FLASH_SECTOR_4   4U
 
#define FLASH_SECTOR_5   5U
 
#define FLASH_SECTOR_6   6U
 
#define FLASH_SECTOR_7   7U
 
#define OB_WRP_SECTOR_0   0x00000001U
 
#define OB_WRP_SECTOR_1   0x00000002U
 
#define OB_WRP_SECTOR_2   0x00000004U
 
#define OB_WRP_SECTOR_3   0x00000008U
 
#define OB_WRP_SECTOR_4   0x00000010U
 
#define OB_WRP_SECTOR_5   0x00000020U
 
#define OB_WRP_SECTOR_6   0x00000040U
 
#define OB_WRP_SECTOR_7   0x00000080U
 
#define OB_WRP_SECTOR_All   0x00000FFFU
 
#define OB_PCROP_SECTOR_0   0x00000001U
 
#define OB_PCROP_SECTOR_1   0x00000002U
 
#define OB_PCROP_SECTOR_2   0x00000004U
 
#define OB_PCROP_SECTOR_3   0x00000008U
 
#define OB_PCROP_SECTOR_4   0x00000010U
 
#define OB_PCROP_SECTOR_5   0x00000020U
 
#define OB_PCROP_SECTOR_6   0x00000040U
 
#define OB_PCROP_SECTOR_7   0x00000080U
 
#define OB_PCROP_SECTOR_All   0x00000FFFU
 
#define OB_PCROP_DESELECTED   ((uint8_t)0x00)
 
#define OB_PCROP_SELECTED   ((uint8_t)0x80)
 
#define FLASH_SECTOR_TOTAL   8U
 
#define IS_FLASH_TYPEERASE(VALUE)
 
#define IS_VOLTAGERANGE(RANGE)
 
#define IS_WRPSTATE(VALUE)
 
#define IS_OPTIONBYTE(VALUE)
 
#define IS_OB_RDP_LEVEL(LEVEL)
 
#define IS_OB_IWDG_SOURCE(SOURCE)
 
#define IS_OB_STOP_SOURCE(SOURCE)
 
#define IS_OB_STDBY_SOURCE(SOURCE)
 
#define IS_OB_BOR_LEVEL(LEVEL)
 
#define IS_PCROPSTATE(VALUE)
 
#define IS_OBEX(VALUE)
 
#define IS_FLASH_LATENCY(LATENCY)
 
#define IS_FLASH_BANK(BANK)
 
#define IS_FLASH_SECTOR(SECTOR)
 
#define IS_FLASH_ADDRESS(ADDRESS)
 
#define IS_FLASH_NBSECTORS(NBSECTORS)
 
#define IS_OB_WRP_SECTOR(SECTOR)
 
#define IS_OB_PCROP(SECTOR)
 
#define IS_OB_PCROP_SELECT(PCROP)
 

Functions

HAL_StatusTypeDef HAL_FLASHEx_Erase (FLASH_EraseInitTypeDef *pEraseInit, uint32_t *SectorError)
 Perform a mass erase or erase the specified FLASH memory sectors.
 
HAL_StatusTypeDef HAL_FLASHEx_Erase_IT (FLASH_EraseInitTypeDef *pEraseInit)
 Perform a mass erase or erase the specified FLASH memory sectors with interrupt enabled.
 
HAL_StatusTypeDef HAL_FLASHEx_OBProgram (FLASH_OBProgramInitTypeDef *pOBInit)
 Program option bytes.
 
void HAL_FLASHEx_OBGetConfig (FLASH_OBProgramInitTypeDef *pOBInit)
 Get the Option byte configuration.
 
HAL_StatusTypeDef HAL_FLASHEx_AdvOBProgram (FLASH_AdvOBProgramInitTypeDef *pAdvOBInit)
 Program option bytes.
 
void HAL_FLASHEx_AdvOBGetConfig (FLASH_AdvOBProgramInitTypeDef *pAdvOBInit)
 Get the OBEX byte configuration.
 
HAL_StatusTypeDef HAL_FLASHEx_OB_SelectPCROP (void)
 Select the Protection Mode.
 
HAL_StatusTypeDef HAL_FLASHEx_OB_DeSelectPCROP (void)
 Deselect the Protection Mode.
 
void FLASH_Erase_Sector (uint32_t Sector, uint8_t VoltageRange)
 Erase the specified FLASH memory sector.
 
void FLASH_FlushCaches (void)
 Flush the instruction and data caches.
 

Detailed Description

Header file of FLASH HAL Extension module.

Author
MCD Application Team
Attention

Copyright (c) 2017 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32f4xx_hal_flash_ex.h.