STM32F103xB HAL User Manual
Data Structures | Defines | Functions
stm32f1xx_hal_flash_ex.h File Reference

Header file of Flash HAL Extended module. More...

#include "stm32f1xx_hal_def.h"

Go to the source code of this file.

Data Structures

struct  FLASH_EraseInitTypeDef
 FLASH Erase structure definition. More...
struct  FLASH_OBProgramInitTypeDef
 FLASH Options bytes program structure definition. More...

Defines

#define FLASH_SIZE_DATA_REGISTER   0x1FFFF7E0U
#define OBR_REG_INDEX   1U
#define SR_FLAG_MASK   ((uint32_t)(FLASH_SR_BSY | FLASH_SR_PGERR | FLASH_SR_WRPRTERR | FLASH_SR_EOP))
#define IS_FLASH_TYPEERASE(VALUE)   (((VALUE) == FLASH_TYPEERASE_PAGES) || ((VALUE) == FLASH_TYPEERASE_MASSERASE))
#define IS_OPTIONBYTE(VALUE)   (((VALUE) <= (OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER | OPTIONBYTE_DATA)))
#define IS_WRPSTATE(VALUE)   (((VALUE) == OB_WRPSTATE_DISABLE) || ((VALUE) == OB_WRPSTATE_ENABLE))
#define IS_OB_RDP_LEVEL(LEVEL)   (((LEVEL) == OB_RDP_LEVEL_0) || ((LEVEL) == OB_RDP_LEVEL_1))
#define IS_OB_DATA_ADDRESS(ADDRESS)   (((ADDRESS) == OB_DATA_ADDRESS_DATA0) || ((ADDRESS) == OB_DATA_ADDRESS_DATA1))
#define IS_OB_IWDG_SOURCE(SOURCE)   (((SOURCE) == OB_IWDG_SW) || ((SOURCE) == OB_IWDG_HW))
#define IS_OB_STOP_SOURCE(SOURCE)   (((SOURCE) == OB_STOP_NO_RST) || ((SOURCE) == OB_STOP_RST))
#define IS_OB_STDBY_SOURCE(SOURCE)   (((SOURCE) == OB_STDBY_NO_RST) || ((SOURCE) == OB_STDBY_RST))
#define IS_FLASH_NB_PAGES(ADDRESS, NBPAGES)
#define IS_OB_WRP(PAGE)   (((PAGE) != 0x0000000U))
#define IS_FLASH_BANK(BANK)   (((BANK) == FLASH_BANK_1))
#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS)
#define FLASH_PAGE_SIZE   0x400U
#define FLASH_TYPEERASE_PAGES   0x00U
#define FLASH_TYPEERASE_MASSERASE   0x02U
#define FLASH_BANK_1   1U
#define OPTIONBYTE_WRP   0x01U
#define OPTIONBYTE_RDP   0x02U
#define OPTIONBYTE_USER   0x04U
#define OPTIONBYTE_DATA   0x08U
#define OB_WRPSTATE_DISABLE   0x00U
#define OB_WRPSTATE_ENABLE   0x01U
#define OB_WRP_PAGES0TO3   0x00000001U
#define OB_WRP_PAGES4TO7   0x00000002U
#define OB_WRP_PAGES8TO11   0x00000004U
#define OB_WRP_PAGES12TO15   0x00000008U
#define OB_WRP_PAGES16TO19   0x00000010U
#define OB_WRP_PAGES20TO23   0x00000020U
#define OB_WRP_PAGES24TO27   0x00000040U
#define OB_WRP_PAGES28TO31   0x00000080U
#define OB_WRP_PAGES32TO35   0x00000100U
#define OB_WRP_PAGES36TO39   0x00000200U
#define OB_WRP_PAGES40TO43   0x00000400U
#define OB_WRP_PAGES44TO47   0x00000800U
#define OB_WRP_PAGES48TO51   0x00001000U
#define OB_WRP_PAGES52TO55   0x00002000U
#define OB_WRP_PAGES56TO59   0x00004000U
#define OB_WRP_PAGES60TO63   0x00008000U
#define OB_WRP_PAGES64TO67   0x00010000U
#define OB_WRP_PAGES68TO71   0x00020000U
#define OB_WRP_PAGES72TO75   0x00040000U
#define OB_WRP_PAGES76TO79   0x00080000U
#define OB_WRP_PAGES80TO83   0x00100000U
#define OB_WRP_PAGES84TO87   0x00200000U
#define OB_WRP_PAGES88TO91   0x00400000U
#define OB_WRP_PAGES92TO95   0x00800000U
#define OB_WRP_PAGES96TO99   0x01000000U
#define OB_WRP_PAGES100TO103   0x02000000U
#define OB_WRP_PAGES104TO107   0x04000000U
#define OB_WRP_PAGES108TO111   0x08000000U
#define OB_WRP_PAGES112TO115   0x10000000U
#define OB_WRP_PAGES116TO119   0x20000000U
#define OB_WRP_PAGES120TO123   0x40000000U
#define OB_WRP_PAGES124TO127   0x80000000U
#define OB_WRP_ALLPAGES   0xFFFFFFFFU
#define OB_WRP_PAGES0TO31MASK   0x000000FFU
#define OB_WRP_PAGES32TO63MASK   0x0000FF00U
#define OB_WRP_PAGES64TO95MASK   0x00FF0000U
#define OB_WRP_PAGES96TO127MASK   0xFF000000U
#define OB_RDP_LEVEL_0   ((uint8_t)0xA5)
#define OB_RDP_LEVEL_1   ((uint8_t)0x00)
#define OB_IWDG_SW   ((uint16_t)0x0001)
#define OB_IWDG_HW   ((uint16_t)0x0000)
#define OB_STOP_NO_RST   ((uint16_t)0x0002)
#define OB_STOP_RST   ((uint16_t)0x0000)
#define OB_STDBY_NO_RST   ((uint16_t)0x0004)
#define OB_STDBY_RST   ((uint16_t)0x0000)
#define OB_DATA_ADDRESS_DATA0   0x1FFFF804U
#define OB_DATA_ADDRESS_DATA1   0x1FFFF806U
#define FLASH_FLAG_BSY   FLASH_SR_BSY
#define FLASH_FLAG_PGERR   FLASH_SR_PGERR
#define FLASH_FLAG_WRPERR   FLASH_SR_WRPRTERR
#define FLASH_FLAG_EOP   FLASH_SR_EOP
#define FLASH_FLAG_OPTVERR   ((OBR_REG_INDEX << 8U | FLASH_OBR_OPTERR))
#define FLASH_IT_EOP   FLASH_CR_EOPIE
#define FLASH_IT_ERR   FLASH_CR_ERRIE
#define __HAL_FLASH_ENABLE_IT(__INTERRUPT__)   (FLASH->CR |= (__INTERRUPT__))
 Enable the specified FLASH interrupt.
#define __HAL_FLASH_DISABLE_IT(__INTERRUPT__)   (FLASH->CR &= ~(__INTERRUPT__))
 Disable the specified FLASH interrupt.
#define __HAL_FLASH_GET_FLAG(__FLAG__)
 Get the specified FLASH flag status.
#define __HAL_FLASH_CLEAR_FLAG(__FLAG__)
 Clear the specified FLASH flag.

Functions

HAL_StatusTypeDef HAL_FLASHEx_Erase (FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError)
 Perform a mass erase or erase the specified FLASH memory pages.
HAL_StatusTypeDef HAL_FLASHEx_Erase_IT (FLASH_EraseInitTypeDef *pEraseInit)
 Perform a mass erase or erase the specified FLASH memory pages with interrupt enabled.
HAL_StatusTypeDef HAL_FLASHEx_OBErase (void)
 Erases the FLASH option bytes.
HAL_StatusTypeDef HAL_FLASHEx_OBProgram (FLASH_OBProgramInitTypeDef *pOBInit)
 Program option bytes.
void HAL_FLASHEx_OBGetConfig (FLASH_OBProgramInitTypeDef *pOBInit)
 Get the Option byte configuration.
uint32_t HAL_FLASHEx_OBGetUserData (uint32_t DATAAdress)
 Get the Option byte user data.

Detailed Description

Header file of Flash HAL Extended module.

Author:
MCD Application Team
Attention:

© Copyright (c) 2016 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file stm32f1xx_hal_flash_ex.h.