39 #ifndef __STM32F7xx_HAL_FLASH_H 40 #define __STM32F7xx_HAL_FLASH_H 108 #define HAL_FLASH_ERROR_NONE ((uint32_t)0x00000000U) 109 #define HAL_FLASH_ERROR_ERS ((uint32_t)0x00000002U) 110 #define HAL_FLASH_ERROR_PGP ((uint32_t)0x00000004U) 111 #define HAL_FLASH_ERROR_PGA ((uint32_t)0x00000008U) 112 #define HAL_FLASH_ERROR_WRP ((uint32_t)0x00000010U) 113 #define HAL_FLASH_ERROR_OPERATION ((uint32_t)0x00000020U) 121 #define FLASH_TYPEPROGRAM_BYTE ((uint32_t)0x00U) 122 #define FLASH_TYPEPROGRAM_HALFWORD ((uint32_t)0x01U) 123 #define FLASH_TYPEPROGRAM_WORD ((uint32_t)0x02U) 124 #define FLASH_TYPEPROGRAM_DOUBLEWORD ((uint32_t)0x03U) 133 #define FLASH_FLAG_EOP FLASH_SR_EOP 134 #define FLASH_FLAG_OPERR FLASH_SR_OPERR 135 #define FLASH_FLAG_WRPERR FLASH_SR_WRPERR 136 #define FLASH_FLAG_PGAERR FLASH_SR_PGAERR 137 #define FLASH_FLAG_PGPERR FLASH_SR_PGPERR 138 #define FLASH_FLAG_ERSERR FLASH_SR_ERSERR 139 #define FLASH_FLAG_BSY FLASH_SR_BSY 148 #define FLASH_IT_EOP FLASH_CR_EOPIE 149 #define FLASH_IT_ERR ((uint32_t)0x02000000U) 157 #define FLASH_PSIZE_BYTE ((uint32_t)0x00000000U) 158 #define FLASH_PSIZE_HALF_WORD ((uint32_t)FLASH_CR_PSIZE_0) 159 #define FLASH_PSIZE_WORD ((uint32_t)FLASH_CR_PSIZE_1) 160 #define FLASH_PSIZE_DOUBLE_WORD ((uint32_t)FLASH_CR_PSIZE) 161 #define CR_PSIZE_MASK ((uint32_t)0xFFFFFCFFU) 169 #define FLASH_KEY1 ((uint32_t)0x45670123U) 170 #define FLASH_KEY2 ((uint32_t)0xCDEF89ABU) 171 #define FLASH_OPT_KEY1 ((uint32_t)0x08192A3BU) 172 #define FLASH_OPT_KEY2 ((uint32_t)0x4C5D6E7FU) 180 #define FLASH_SECTOR_0 ((uint32_t)0U) 181 #define FLASH_SECTOR_1 ((uint32_t)1U) 182 #define FLASH_SECTOR_2 ((uint32_t)2U) 183 #define FLASH_SECTOR_3 ((uint32_t)3U) 184 #define FLASH_SECTOR_4 ((uint32_t)4U) 185 #define FLASH_SECTOR_5 ((uint32_t)5U) 186 #define FLASH_SECTOR_6 ((uint32_t)6U) 187 #define FLASH_SECTOR_7 ((uint32_t)7U) 206 #define __HAL_FLASH_SET_LATENCY(__LATENCY__) \ 207 MODIFY_REG(FLASH->ACR, FLASH_ACR_LATENCY, (uint32_t)(__LATENCY__)) 214 #define __HAL_FLASH_GET_LATENCY() (READ_BIT((FLASH->ACR), FLASH_ACR_LATENCY)) 220 #define __HAL_FLASH_PREFETCH_BUFFER_ENABLE() (FLASH->ACR |= FLASH_ACR_PRFTEN) 226 #define __HAL_FLASH_PREFETCH_BUFFER_DISABLE() (FLASH->ACR &= (~FLASH_ACR_PRFTEN)) 233 #define __HAL_FLASH_ART_ENABLE() SET_BIT(FLASH->ACR, FLASH_ACR_ARTEN) 239 #define __HAL_FLASH_ART_DISABLE() CLEAR_BIT(FLASH->ACR, FLASH_ACR_ARTEN) 247 #define __HAL_FLASH_ART_RESET() (FLASH->ACR |= FLASH_ACR_ARTRST) 257 #define __HAL_FLASH_ENABLE_IT(__INTERRUPT__) (FLASH->CR |= (__INTERRUPT__)) 267 #define __HAL_FLASH_DISABLE_IT(__INTERRUPT__) (FLASH->CR &= ~(uint32_t)(__INTERRUPT__)) 282 #define __HAL_FLASH_GET_FLAG(__FLAG__) ((FLASH->SR & (__FLAG__))) 296 #define __HAL_FLASH_CLEAR_FLAG(__FLAG__) (FLASH->SR = (__FLAG__)) 367 #define OPTCR_BYTE1_ADDRESS ((uint32_t)0x40023C15) 381 #define IS_FLASH_TYPEPROGRAM(VALUE)(((VALUE) == FLASH_TYPEPROGRAM_BYTE) || \ 382 ((VALUE) == FLASH_TYPEPROGRAM_HALFWORD) || \ 383 ((VALUE) == FLASH_TYPEPROGRAM_WORD) || \ 384 ((VALUE) == FLASH_TYPEPROGRAM_DOUBLEWORD))
HAL_StatusTypeDef HAL_FLASH_OB_Lock(void)
void HAL_FLASH_OperationErrorCallback(uint32_t ReturnValue)
HAL_LockTypeDef
HAL Lock structures definition.
void HAL_FLASH_IRQHandler(void)
__IO FLASH_ProcedureTypeDef ProcedureOnGoing
HAL_StatusTypeDef HAL_FLASH_OB_Launch(void)
HAL_StatusTypeDef HAL_FLASH_Program(uint32_t TypeProgram, uint32_t Address, uint64_t Data)
FLASH handle Structure definition.
__IO uint32_t NbSectorsToErase
Header file of FLASH HAL Extension module.
HAL_StatusTypeDef FLASH_WaitForLastOperation(uint32_t Timeout)
uint32_t HAL_FLASH_GetError(void)
void HAL_FLASH_EndOfOperationCallback(uint32_t ReturnValue)
FLASH_ProcedureTypeDef
FLASH Procedure structure definition.
HAL_StatusTypeDef HAL_FLASH_OB_Unlock(void)
__IO uint8_t VoltageForErase
HAL_StatusTypeDef HAL_FLASH_Lock(void)
This file contains HAL common defines, enumeration, macros and structures definitions.
HAL_StatusTypeDef HAL_FLASH_Unlock(void)
HAL_StatusTypeDef
HAL Status structures definition.
HAL_StatusTypeDef HAL_FLASH_Program_IT(uint32_t TypeProgram, uint32_t Address, uint64_t Data)