first release for keyboard
Dependencies: F401RE-USBHost2 mbed
FLASH
[STM32F4xx_StdPeriph_Driver]
FLASH driver modules. More...
Modules | |
FLASH_Private_Functions | |
FLASH_Exported_Constants | |
Enumerations | |
enum | FLASH_Status |
FLASH Status. More... | |
Functions | |
void | FLASH_SetLatency (uint32_t FLASH_Latency) |
Sets the code latency value. | |
void | FLASH_PrefetchBufferCmd (FunctionalState NewState) |
Enables or disables the Prefetch Buffer. | |
void | FLASH_InstructionCacheCmd (FunctionalState NewState) |
Enables or disables the Instruction Cache feature. | |
void | FLASH_DataCacheCmd (FunctionalState NewState) |
Enables or disables the Data Cache feature. | |
void | FLASH_InstructionCacheReset (void) |
Resets the Instruction Cache. | |
void | FLASH_DataCacheReset (void) |
Resets the Data Cache. | |
void | FLASH_Unlock (void) |
Unlocks the FLASH control register access. | |
void | FLASH_Lock (void) |
Locks the FLASH control register access. | |
FLASH_Status | FLASH_EraseSector (uint32_t FLASH_Sector, uint8_t VoltageRange) |
Erases a specified FLASH Sector. | |
FLASH_Status | FLASH_EraseAllSectors (uint8_t VoltageRange) |
Erases all FLASH Sectors. | |
FLASH_Status | FLASH_EraseAllBank1Sectors (uint8_t VoltageRange) |
Erases all FLASH Sectors in Bank 1. | |
FLASH_Status | FLASH_EraseAllBank2Sectors (uint8_t VoltageRange) |
Erases all FLASH Sectors in Bank 2. | |
FLASH_Status | FLASH_ProgramDoubleWord (uint32_t Address, uint64_t Data) |
Programs a double word (64-bit) at a specified address. | |
FLASH_Status | FLASH_ProgramWord (uint32_t Address, uint32_t Data) |
Programs a word (32-bit) at a specified address. | |
FLASH_Status | FLASH_ProgramHalfWord (uint32_t Address, uint16_t Data) |
Programs a half word (16-bit) at a specified address. | |
FLASH_Status | FLASH_ProgramByte (uint32_t Address, uint8_t Data) |
Programs a byte (8-bit) at a specified address. | |
void | FLASH_OB_Unlock (void) |
Unlocks the FLASH Option Control Registers access. | |
void | FLASH_OB_Lock (void) |
Locks the FLASH Option Control Registers access. | |
void | FLASH_OB_WRPConfig (uint32_t OB_WRP, FunctionalState NewState) |
Enables or disables the write protection of the desired sectors, for the first 1 Mb of the Flash. | |
void | FLASH_OB_WRP1Config (uint32_t OB_WRP, FunctionalState NewState) |
Enables or disables the write protection of the desired sectors, for the second 1 Mb of the Flash. | |
void | FLASH_OB_PCROPSelectionConfig (uint8_t OB_PcROP) |
Select the Protection Mode (SPRMOD). | |
void | FLASH_OB_PCROPConfig (uint32_t OB_PCROP, FunctionalState NewState) |
Enables or disables the read/write protection (PCROP) of the desired sectors, for the first 1 MB of the Flash. | |
void | FLASH_OB_PCROP1Config (uint32_t OB_PCROP, FunctionalState NewState) |
Enables or disables the read/write protection (PCROP) of the desired sectors. | |
void | FLASH_OB_RDPConfig (uint8_t OB_RDP) |
Sets the read protection level. | |
void | FLASH_OB_UserConfig (uint8_t OB_IWDG, uint8_t OB_STOP, uint8_t OB_STDBY) |
Programs the FLASH User Option Byte: IWDG_SW / RST_STOP / RST_STDBY. | |
void | FLASH_OB_BORConfig (uint8_t OB_BOR) |
Sets the BOR Level. | |
void | FLASH_OB_BootConfig (uint8_t OB_BOOT) |
Configure the Dual Bank Boot. | |
FLASH_Status | FLASH_OB_Launch (void) |
Launch the option byte loading. | |
uint8_t | FLASH_OB_GetUser (void) |
Returns the FLASH User Option Bytes values. | |
uint16_t | FLASH_OB_GetWRP (void) |
Returns the FLASH Write Protection Option Bytes value. | |
uint16_t | FLASH_OB_GetWRP1 (void) |
Returns the FLASH Write Protection Option Bytes value. | |
uint16_t | FLASH_OB_GetPCROP (void) |
Returns the FLASH PC Read/Write Protection Option Bytes value. | |
uint16_t | FLASH_OB_GetPCROP1 (void) |
Returns the FLASH PC Read/Write Protection Option Bytes value. | |
FlagStatus | FLASH_OB_GetRDP (void) |
Returns the FLASH Read Protection level. | |
uint8_t | FLASH_OB_GetBOR (void) |
Returns the FLASH BOR level. | |
void | FLASH_ITConfig (uint32_t FLASH_IT, FunctionalState NewState) |
Enables or disables the specified FLASH interrupts. | |
FlagStatus | FLASH_GetFlagStatus (uint32_t FLASH_FLAG) |
Checks whether the specified FLASH flag is set or not. | |
void | FLASH_ClearFlag (uint32_t FLASH_FLAG) |
Clears the FLASH's pending flags. | |
FLASH_Status | FLASH_GetStatus (void) |
Returns the FLASH Status. | |
FLASH_Status | FLASH_WaitForLastOperation2 (void) |
Waits for a FLASH operation to complete. |
Detailed Description
FLASH driver modules.
Enumeration Type Documentation
enum FLASH_Status |
FLASH Status.
Definition at line 52 of file stm32f4xx_flash.h.
Function Documentation
void FLASH_ClearFlag | ( | uint32_t | FLASH_FLAG ) |
Clears the FLASH's pending flags.
- Parameters:
-
FLASH_FLAG,: specifies the FLASH flags to clear. This parameter can be any combination of the following values: - FLASH_FLAG_EOP: FLASH End of Operation flag
- FLASH_FLAG_OPERR: FLASH operation Error flag
- FLASH_FLAG_WRPERR: FLASH Write protected error flag
- FLASH_FLAG_PGAERR: FLASH Programming Alignment error flag
- FLASH_FLAG_PGPERR: FLASH Programming Parallelism error flag
- FLASH_FLAG_PGSERR: FLASH Programming Sequence error flag
- FLASH_FLAG_RDERR: FLASH Read Protection error flag (STM32F42xx/43xxx and STM32F401xx/411xE devices)
- Return values:
-
None
Definition at line 1517 of file stm32f4xx_flash.c.
void FLASH_DataCacheCmd | ( | FunctionalState | NewState ) |
Enables or disables the Data Cache feature.
- Parameters:
-
NewState,: new state of the Data Cache. This parameter can be: ENABLE or DISABLE.
- Return values:
-
None
Definition at line 335 of file stm32f4xx_flash.c.
void FLASH_DataCacheReset | ( | void | ) |
Resets the Data Cache.
- Note:
- This function must be used only when the Data Cache is disabled.
- Parameters:
-
None
- Return values:
-
None
Definition at line 367 of file stm32f4xx_flash.c.
FLASH_Status FLASH_EraseAllBank1Sectors | ( | uint8_t | VoltageRange ) |
Erases all FLASH Sectors in Bank 1.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices.
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
VoltageRange,: The device voltage range which defines the erase parallelism. This parameter can be one of the following values: - VoltageRange_1: when the device voltage range is 1.8V to 2.1V, the operation will be done by byte (8-bit)
- VoltageRange_2: when the device voltage range is 2.1V to 2.7V, the operation will be done by half word (16-bit)
- VoltageRange_3: when the device voltage range is 2.7V to 3.6V, the operation will be done by word (32-bit)
- VoltageRange_4: when the device voltage range is 2.7V to 3.6V + External Vpp, the operation will be done by double word (64-bit)
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 621 of file stm32f4xx_flash.c.
FLASH_Status FLASH_EraseAllBank2Sectors | ( | uint8_t | VoltageRange ) |
Erases all FLASH Sectors in Bank 2.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices.
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
VoltageRange,: The device voltage range which defines the erase parallelism. This parameter can be one of the following values: - VoltageRange_1: when the device voltage range is 1.8V to 2.1V, the operation will be done by byte (8-bit)
- VoltageRange_2: when the device voltage range is 2.1V to 2.7V, the operation will be done by half word (16-bit)
- VoltageRange_3: when the device voltage range is 2.7V to 3.6V, the operation will be done by word (32-bit)
- VoltageRange_4: when the device voltage range is 2.7V to 3.6V + External Vpp, the operation will be done by double word (64-bit)
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 688 of file stm32f4xx_flash.c.
FLASH_Status FLASH_EraseAllSectors | ( | uint8_t | VoltageRange ) |
Erases all FLASH Sectors.
- Note:
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
VoltageRange,: The device voltage range which defines the erase parallelism. This parameter can be one of the following values: - VoltageRange_1: when the device voltage range is 1.8V to 2.1V, the operation will be done by byte (8-bit)
- VoltageRange_2: when the device voltage range is 2.1V to 2.7V, the operation will be done by half word (16-bit)
- VoltageRange_3: when the device voltage range is 2.7V to 3.6V, the operation will be done by word (32-bit)
- VoltageRange_4: when the device voltage range is 2.7V to 3.6V + External Vpp, the operation will be done by double word (64-bit)
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 540 of file stm32f4xx_flash.c.
FLASH_Status FLASH_EraseSector | ( | uint32_t | FLASH_Sector, |
uint8_t | VoltageRange | ||
) |
Erases a specified FLASH Sector.
- Note:
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
FLASH_Sector,: The Sector number to be erased.
- Note:
- For STM32F405xx/407xx and STM32F415xx/417xx devices this parameter can be a value between FLASH_Sector_0 and FLASH_Sector_11.
For STM32F42xxx/43xxx devices this parameter can be a value between FLASH_Sector_0 and FLASH_Sector_23.
For STM32F401xx devices this parameter can be a value between FLASH_Sector_0 and FLASH_Sector_5.
For STM32F411xE and STM32F412xG devices this parameter can be a value between FLASH_Sector_0 and FLASH_Sector_7.
For STM32F410xx devices this parameter can be a value between FLASH_Sector_0 and FLASH_Sector_4.
- Parameters:
-
VoltageRange,: The device voltage range which defines the erase parallelism. This parameter can be one of the following values: - VoltageRange_1: when the device voltage range is 1.8V to 2.1V, the operation will be done by byte (8-bit)
- VoltageRange_2: when the device voltage range is 2.1V to 2.7V, the operation will be done by half word (16-bit)
- VoltageRange_3: when the device voltage range is 2.7V to 3.6V, the operation will be done by word (32-bit)
- VoltageRange_4: when the device voltage range is 2.7V to 3.6V + External Vpp, the operation will be done by double word (64-bit)
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 472 of file stm32f4xx_flash.c.
FlagStatus FLASH_GetFlagStatus | ( | uint32_t | FLASH_FLAG ) |
Checks whether the specified FLASH flag is set or not.
- Parameters:
-
FLASH_FLAG,: specifies the FLASH flag to check. This parameter can be one of the following values: - FLASH_FLAG_EOP: FLASH End of Operation flag
- FLASH_FLAG_OPERR: FLASH operation Error flag
- FLASH_FLAG_WRPERR: FLASH Write protected error flag
- FLASH_FLAG_PGAERR: FLASH Programming Alignment error flag
- FLASH_FLAG_PGPERR: FLASH Programming Parallelism error flag
- FLASH_FLAG_PGSERR: FLASH Programming Sequence error flag
- FLASH_FLAG_RDERR: FLASH (PCROP) Read Protection error flag (STM32F42xx/43xxx and STM32F401xx/411xE devices)
- FLASH_FLAG_BSY: FLASH Busy flag
- Return values:
-
The new state of FLASH_FLAG (SET or RESET).
Definition at line 1486 of file stm32f4xx_flash.c.
FLASH_Status FLASH_GetStatus | ( | void | ) |
Returns the FLASH Status.
- Parameters:
-
None
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_RD2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 1532 of file stm32f4xx_flash.c.
void FLASH_InstructionCacheCmd | ( | FunctionalState | NewState ) |
Enables or disables the Instruction Cache feature.
- Parameters:
-
NewState,: new state of the Instruction Cache. This parameter can be: ENABLE or DISABLE.
- Return values:
-
None
Definition at line 314 of file stm32f4xx_flash.c.
void FLASH_InstructionCacheReset | ( | void | ) |
Resets the Instruction Cache.
- Note:
- This function must be used only when the Instruction Cache is disabled.
- Parameters:
-
None
- Return values:
-
None
Definition at line 356 of file stm32f4xx_flash.c.
void FLASH_ITConfig | ( | uint32_t | FLASH_IT, |
FunctionalState | NewState | ||
) |
Enables or disables the specified FLASH interrupts.
- Parameters:
-
FLASH_IT,: specifies the FLASH interrupt sources to be enabled or disabled. This parameter can be any combination of the following values: - FLASH_IT_ERR: FLASH Error Interrupt
- FLASH_IT_EOP: FLASH end of operation Interrupt
- Return values:
-
None
Definition at line 1454 of file stm32f4xx_flash.c.
void FLASH_Lock | ( | void | ) |
Locks the FLASH control register access.
- Parameters:
-
None
- Return values:
-
None
Definition at line 429 of file stm32f4xx_flash.c.
void FLASH_OB_BootConfig | ( | uint8_t | OB_BOOT ) |
Configure the Dual Bank Boot.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices.
- Parameters:
-
OB_BOOT,: specifies the Dual Bank Boot Option byte. This parameter can be one of the following values: - OB_Dual_BootEnabled: Dual Bank Boot Enable
- OB_Dual_BootDisabled: Dual Bank Boot Disabled
- Return values:
-
None
Definition at line 1278 of file stm32f4xx_flash.c.
void FLASH_OB_BORConfig | ( | uint8_t | OB_BOR ) |
Sets the BOR Level.
- Parameters:
-
OB_BOR,: specifies the Option Bytes BOR Reset Level. This parameter can be one of the following values: - OB_BOR_LEVEL3: Supply voltage ranges from 2.7 to 3.6 V
- OB_BOR_LEVEL2: Supply voltage ranges from 2.4 to 2.7 V
- OB_BOR_LEVEL1: Supply voltage ranges from 2.1 to 2.4 V
- OB_BOR_OFF: Supply voltage ranges from 1.62 to 2.1 V
- Return values:
-
None
Definition at line 1299 of file stm32f4xx_flash.c.
uint8_t FLASH_OB_GetBOR | ( | void | ) |
Returns the FLASH BOR level.
- Parameters:
-
None
- Return values:
-
The FLASH BOR level: - OB_BOR_LEVEL3: Supply voltage ranges from 2.7 to 3.6 V
- OB_BOR_LEVEL2: Supply voltage ranges from 2.4 to 2.7 V
- OB_BOR_LEVEL1: Supply voltage ranges from 2.1 to 2.4 V
- OB_BOR_OFF : Supply voltage ranges from 1.62 to 2.1 V
Definition at line 1425 of file stm32f4xx_flash.c.
uint16_t FLASH_OB_GetPCROP | ( | void | ) |
Returns the FLASH PC Read/Write Protection Option Bytes value.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices and STM32F401xx/411xE devices.
- Parameters:
-
None
- Return values:
-
The FLASH PC Read/Write Protection Option Bytes value
Definition at line 1374 of file stm32f4xx_flash.c.
uint16_t FLASH_OB_GetPCROP1 | ( | void | ) |
Returns the FLASH PC Read/Write Protection Option Bytes value.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices.
- Parameters:
-
None
- Return values:
-
The FLASH PC Read/Write Protection Option Bytes value
Definition at line 1388 of file stm32f4xx_flash.c.
FlagStatus FLASH_OB_GetRDP | ( | void | ) |
Returns the FLASH Read Protection level.
- Parameters:
-
None
- Return values:
-
FLASH ReadOut Protection Status: - SET, when OB_RDP_Level_1 or OB_RDP_Level_2 is set
- RESET, when OB_RDP_Level_0 is set
Definition at line 1401 of file stm32f4xx_flash.c.
uint8_t FLASH_OB_GetUser | ( | void | ) |
Returns the FLASH User Option Bytes values.
- Parameters:
-
None
- Return values:
-
The FLASH User Option Bytes values: IWDG_SW(Bit0), RST_STOP(Bit1) and RST_STDBY(Bit2).
Definition at line 1335 of file stm32f4xx_flash.c.
uint16_t FLASH_OB_GetWRP | ( | void | ) |
Returns the FLASH Write Protection Option Bytes value.
- Parameters:
-
None
- Return values:
-
The FLASH Write Protection Option Bytes value
Definition at line 1346 of file stm32f4xx_flash.c.
uint16_t FLASH_OB_GetWRP1 | ( | void | ) |
Returns the FLASH Write Protection Option Bytes value.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices.
- Parameters:
-
None
- Return values:
-
The FLASH Write Protection Option Bytes value
Definition at line 1360 of file stm32f4xx_flash.c.
FLASH_Status FLASH_OB_Launch | ( | void | ) |
Launch the option byte loading.
- Parameters:
-
None
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 1316 of file stm32f4xx_flash.c.
void FLASH_OB_Lock | ( | void | ) |
Locks the FLASH Option Control Registers access.
- Parameters:
-
None
- Return values:
-
None
Definition at line 986 of file stm32f4xx_flash.c.
void FLASH_OB_PCROP1Config | ( | uint32_t | OB_PCROP, |
FunctionalState | NewState | ||
) |
Enables or disables the read/write protection (PCROP) of the desired sectors.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices.
- Parameters:
-
OB_PCROP,: specifies the sector(s) to be read/write protected or unprotected. This parameter can be one of the following values: - OB_PCROP: A value between OB_PCROP_Sector12 and OB_PCROP_Sector23
- OB_PCROP_Sector_All
Newstate,: new state of the Write Protection. This parameter can be: ENABLE or DISABLE.
- Return values:
-
None
Definition at line 1169 of file stm32f4xx_flash.c.
void FLASH_OB_PCROPConfig | ( | uint32_t | OB_PCROP, |
FunctionalState | NewState | ||
) |
Enables or disables the read/write protection (PCROP) of the desired sectors, for the first 1 MB of the Flash.
- Note:
- This function can be used only for STM32F42xxx/43xxx , STM32F401xx/411xE and STM32F412xG devices.
- Parameters:
-
OB_PCROP,: specifies the sector(s) to be read/write protected or unprotected. This parameter can be one of the following values: - OB_PCROP: A value between OB_PCROP_Sector0 and OB_PCROP_Sector11 for STM32F42xxx/43xxx devices and between OB_PCROP_Sector0 and OB_PCROP_Sector5 for STM32F401xx/411xE devices.
- OB_PCROP_Sector_All
Newstate,: new state of the Write Protection. This parameter can be: ENABLE or DISABLE.
- Return values:
-
None
Definition at line 1132 of file stm32f4xx_flash.c.
void FLASH_OB_PCROPSelectionConfig | ( | uint8_t | OB_PcROP ) |
Select the Protection Mode (SPRMOD).
- Note:
- This function can be used only for STM32F42xxx/43xxx and STM32F401xx/411xE devices.
- After PCROP activation, Option Byte modification is not possible. Exception made for the global Read Out Protection modification level (level1 to level0)
- Once SPRMOD bit is active unprotection of a protected sector is not possible
- Read a protected sector will set RDERR Flag and write a protected sector will set WRPERR Flag
-
Some Precautions should be taken when activating the PCROP feature : The active value of nWRPi bits is inverted when PCROP mode is active, this means if SPRMOD = 1 and WRPi = 1 (default value), then the user sector i is read/write protected. In order to avoid activation of PCROP Mode for undesired sectors, please follow the below safety sequence :
- Disable PCROP for all Sectors using FLASH_OB_PCROPConfig(OB_PCROP_Sector_All, DISABLE) function for Bank1 or FLASH_OB_PCROP1Config(OB_PCROP_Sector_All, DISABLE) function for Bank2
- Enable PCROP for the desired Sector i using FLASH_OB_PCROPConfig(Sector i, ENABLE) function
- Activate the PCROP Mode FLASH_OB_PCROPSelectionConfig() function.
- Parameters:
-
OB_PCROP,: Select the Protection Mode of nWPRi bits This parameter can be one of the following values: - OB_PcROP_Disable: nWRPi control the write protection of respective user sectors.
- OB_PcROP_Enable: nWRPi control the read&write protection (PCROP) of respective user sectors.
- Return values:
-
None
Definition at line 1101 of file stm32f4xx_flash.c.
void FLASH_OB_RDPConfig | ( | uint8_t | OB_RDP ) |
Sets the read protection level.
- Parameters:
-
OB_RDP,: specifies the read protection level. This parameter can be one of the following values: - OB_RDP_Level_0: No protection
- OB_RDP_Level_1: Read protection of the memory
- OB_RDP_Level_2: Full chip protection
/!\ Warning /!\ When enabling OB_RDP level 2 it's no more possible to go back to level 1 or 0
- Return values:
-
None
Definition at line 1205 of file stm32f4xx_flash.c.
void FLASH_OB_Unlock | ( | void | ) |
Unlocks the FLASH Option Control Registers access.
- Parameters:
-
None
- Return values:
-
None
Definition at line 971 of file stm32f4xx_flash.c.
void FLASH_OB_UserConfig | ( | uint8_t | OB_IWDG, |
uint8_t | OB_STOP, | ||
uint8_t | OB_STDBY | ||
) |
Programs the FLASH User Option Byte: IWDG_SW / RST_STOP / RST_STDBY.
- Parameters:
-
OB_IWDG,: Selects the IWDG mode This parameter can be one of the following values: - OB_IWDG_SW: Software IWDG selected
- OB_IWDG_HW: Hardware IWDG selected
OB_STOP,: Reset event when entering STOP mode. This parameter can be one of the following values: - OB_STOP_NoRST: No reset generated when entering in STOP
- OB_STOP_RST: Reset generated when entering in STOP
OB_STDBY,: Reset event when entering Standby mode. This parameter can be one of the following values: - OB_STDBY_NoRST: No reset generated when entering in STANDBY
- OB_STDBY_RST: Reset generated when entering in STANDBY
- Return values:
-
None
Definition at line 1237 of file stm32f4xx_flash.c.
void FLASH_OB_WRP1Config | ( | uint32_t | OB_WRP, |
FunctionalState | NewState | ||
) |
Enables or disables the write protection of the desired sectors, for the second 1 Mb of the Flash.
- Note:
- This function can be used only for STM32F42xxx/43xxx devices.
- When the memory read out protection is selected (RDP level = 1), it is not possible to program or erase the flash sector i if CortexM4 debug features are connected or boot code is executed in RAM, even if nWRPi = 1
- Active value of nWRPi bits is inverted when PCROP mode is active (SPRMOD =1).
- Parameters:
-
OB_WRP,: specifies the sector(s) to be write protected or unprotected. This parameter can be one of the following values: - OB_WRP: A value between OB_WRP_Sector12 and OB_WRP_Sector23
- OB_WRP_Sector_All
Newstate,: new state of the Write Protection. This parameter can be: ENABLE or DISABLE.
- Return values:
-
None
Definition at line 1051 of file stm32f4xx_flash.c.
void FLASH_OB_WRPConfig | ( | uint32_t | OB_WRP, |
FunctionalState | NewState | ||
) |
Enables or disables the write protection of the desired sectors, for the first 1 Mb of the Flash.
- Note:
- When the memory read protection level is selected (RDP level = 1), it is not possible to program or erase the flash sector i if CortexM4 debug features are connected or boot code is executed in RAM, even if nWRPi = 1
- Active value of nWRPi bits is inverted when PCROP mode is active (SPRMOD =1).
- Parameters:
-
OB_WRP,: specifies the sector(s) to be write protected or unprotected. This parameter can be one of the following values: - OB_WRP: A value between OB_WRP_Sector0 and OB_WRP_Sector11
- OB_WRP_Sector_All
Newstate,: new state of the Write Protection. This parameter can be: ENABLE or DISABLE.
- Return values:
-
None
Definition at line 1009 of file stm32f4xx_flash.c.
void FLASH_PrefetchBufferCmd | ( | FunctionalState | NewState ) |
Enables or disables the Prefetch Buffer.
- Parameters:
-
NewState,: new state of the Prefetch Buffer. This parameter can be: ENABLE or DISABLE.
- Return values:
-
None
Definition at line 292 of file stm32f4xx_flash.c.
FLASH_Status FLASH_ProgramByte | ( | uint32_t | Address, |
uint8_t | Data | ||
) |
Programs a byte (8-bit) at a specified address.
- Note:
- This function can be used within all the device supply voltage ranges.
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
Address,: specifies the address to be programmed. This parameter can be any address in Program memory zone or in OTP zone. Data,: specifies the data to be programmed.
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 872 of file stm32f4xx_flash.c.
FLASH_Status FLASH_ProgramDoubleWord | ( | uint32_t | Address, |
uint64_t | Data | ||
) |
Programs a double word (64-bit) at a specified address.
- Note:
- This function must be used when the device voltage range is from 2.7V to 3.6V and an External Vpp is present.
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
Address,: specifies the address to be programmed. Data,: specifies the data to be programmed.
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 745 of file stm32f4xx_flash.c.
FLASH_Status FLASH_ProgramHalfWord | ( | uint32_t | Address, |
uint16_t | Data | ||
) |
Programs a half word (16-bit) at a specified address.
- Note:
- This function must be used when the device voltage range is from 2.1V to 3.6V.
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
Address,: specifies the address to be programmed. This parameter can be any address in Program memory zone or in OTP zone. Data,: specifies the data to be programmed.
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 830 of file stm32f4xx_flash.c.
FLASH_Status FLASH_ProgramWord | ( | uint32_t | Address, |
uint32_t | Data | ||
) |
Programs a word (32-bit) at a specified address.
- Note:
- This function must be used when the device voltage range is from 2.7V to 3.6V.
- If an erase and a program operations are requested simultaneously, the erase operation is performed before the program one.
- Parameters:
-
Address,: specifies the address to be programmed. This parameter can be any address in Program memory zone or in OTP zone. Data,: specifies the data to be programmed.
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 788 of file stm32f4xx_flash.c.
void FLASH_SetLatency | ( | uint32_t | FLASH_Latency ) |
Sets the code latency value.
- Parameters:
-
FLASH_Latency,: specifies the FLASH Latency value. This parameter can be one of the following values: - FLASH_Latency_0: FLASH Zero Latency cycle
- FLASH_Latency_1: FLASH One Latency cycle
- FLASH_Latency_2: FLASH Two Latency cycles
- FLASH_Latency_3: FLASH Three Latency cycles
- FLASH_Latency_4: FLASH Four Latency cycles
- FLASH_Latency_5: FLASH Five Latency cycles
- FLASH_Latency_6: FLASH Six Latency cycles
- FLASH_Latency_7: FLASH Seven Latency cycles
- FLASH_Latency_8: FLASH Eight Latency cycles
- FLASH_Latency_9: FLASH Nine Latency cycles
- FLASH_Latency_10: FLASH Teen Latency cycles
- FLASH_Latency_11: FLASH Eleven Latency cycles
- FLASH_Latency_12: FLASH Twelve Latency cycles
- FLASH_Latency_13: FLASH Thirteen Latency cycles
- FLASH_Latency_14: FLASH Fourteen Latency cycles
- FLASH_Latency_15: FLASH Fifteen Latency cycles
- Note:
- For STM32F405xx/407xx, STM32F415xx/417xx, STM32F401xx/411xE and STM32F412xG devices this parameter can be a value between FLASH_Latency_0 and FLASH_Latency_7.
- For STM32F42xxx/43xxx devices this parameter can be a value between FLASH_Latency_0 and FLASH_Latency_15.
- Return values:
-
None
Definition at line 277 of file stm32f4xx_flash.c.
void FLASH_Unlock | ( | void | ) |
Unlocks the FLASH control register access.
- Parameters:
-
None
- Return values:
-
None
Definition at line 414 of file stm32f4xx_flash.c.
FLASH_Status FLASH_WaitForLastOperation2 | ( | void | ) |
Waits for a FLASH operation to complete.
- Parameters:
-
None
- Return values:
-
FLASH Status: The returned value can be: FLASH_BUSY2, FLASH_ERROR_PROGRAM2, FLASH_ERROR_WRP2, FLASH_ERROR_OPERATION2 or FLASH_COMPLETE2.
Definition at line 1582 of file stm32f4xx_flash.c.
Generated on Sat Jul 16 2022 08:16:57 by 1.7.2