libopencm3
A free/libre/open-source firmware library for various ARM Cortex-M3 microcontrollers.
|
Defined Constants and Types for the STM32G0xx Flash Control More...
Functions | |
void | flash_clear_progerr_flag (void) |
Clear the Programming Error Status Flag. More... | |
void | flash_clear_pgserr_flag (void) |
Clear the Programming Sequence Error Flag. More... | |
void | flash_clear_size_flag (void) |
Clear programming size error flag. More... | |
void | flash_clear_pgaerr_flag (void) |
Clear the Programming Alignment Error Flag. More... | |
void | flash_clear_wrperr_flag (void) |
Clear the Write Protected Error Flag. More... | |
void | flash_clear_operr_flag (void) |
Clear the Operation Error Status Flag. More... | |
void | flash_clear_eop_flag (void) |
Clear the End of Operation Flag. More... | |
void | flash_clear_status_flags (void) |
Clear All Status Flags. More... | |
void | flash_wait_for_last_operation (void) |
Wait until Last Flash Operation has Ended. More... | |
void | flash_program_double_word (uint32_t address, uint64_t data) |
Program a 64bits word to FLASH. More... | |
void | flash_program (uint32_t address, uint8_t *data, uint32_t len) |
Program a Data Block to FLASH. More... | |
void | flash_erase_page (uint32_t page) |
Erase a page of FLASH. More... | |
void | flash_erase_all_pages (void) |
Erase All FLASH This performs all operations necessary to erase all sectors in the FLASH memory. More... | |
void | flash_icache_enable (void) |
Enable instruction cache. More... | |
void | flash_icache_disable (void) |
Disable instruction cache. More... | |
void | flash_icache_reset (void) |
Reset instruction cache. More... | |
void | flash_unlock_progmem (void) |
Unlock program memory. More... | |
void | flash_lock_progmem (void) |
lock program memory More... | |
void | flash_lock_option_bytes (void) |
Lock Option Byte Access. More... | |
Defined Constants and Types for the STM32G0xx Flash Control
LGPL License Terms libopencm3 License
void flash_clear_eop_flag | ( | void | ) |
Clear the End of Operation Flag.
Definition at line 121 of file flash.c.
References FLASH_SR, and FLASH_SR_EOP.
Referenced by flash_clear_status_flags().
void flash_clear_operr_flag | ( | void | ) |
Clear the Operation Error Status Flag.
Definition at line 155 of file flash.c.
References FLASH_SR, and FLASH_SR_OPERR.
Referenced by flash_clear_status_flags().
void flash_clear_pgaerr_flag | ( | void | ) |
Clear the Programming Alignment Error Flag.
Definition at line 134 of file flash.c.
References FLASH_SR, and FLASH_SR_PGAERR.
Referenced by flash_clear_status_flags().
void flash_clear_pgserr_flag | ( | void | ) |
Clear the Programming Sequence Error Flag.
Definition at line 115 of file flash.c.
References FLASH_SR, and FLASH_SR_PGSERR.
Referenced by flash_clear_status_flags().
void flash_clear_progerr_flag | ( | void | ) |
Clear the Programming Error Status Flag.
Definition at line 148 of file flash.c.
References FLASH_SR, and FLASH_SR_PROGERR.
Referenced by flash_clear_status_flags().
void flash_clear_size_flag | ( | void | ) |
Clear programming size error flag.
Definition at line 127 of file flash.c.
References FLASH_SR, and FLASH_SR_SIZERR.
Referenced by flash_clear_status_flags().
void flash_clear_status_flags | ( | void | ) |
Clear All Status Flags.
Definition at line 161 of file flash.c.
References flash_clear_eop_flag(), flash_clear_operr_flag(), flash_clear_pgaerr_flag(), flash_clear_pgserr_flag(), flash_clear_progerr_flag(), flash_clear_size_flag(), and flash_clear_wrperr_flag().
void flash_clear_wrperr_flag | ( | void | ) |
Clear the Write Protected Error Flag.
Definition at line 141 of file flash.c.
References FLASH_SR, and FLASH_SR_WRPERR.
Referenced by flash_clear_status_flags().
void flash_erase_all_pages | ( | void | ) |
Erase All FLASH This performs all operations necessary to erase all sectors in the FLASH memory.
Definition at line 103 of file flash.c.
References FLASH_CR, FLASH_CR_MER, FLASH_CR_STRT, and flash_wait_for_last_operation().
void flash_erase_page | ( | uint32_t | page | ) |
Erase a page of FLASH.
[in] | page |
Definition at line 82 of file flash.c.
References FLASH_CR, FLASH_CR_PER, FLASH_CR_PNB_MASK, FLASH_CR_PNB_SHIFT, FLASH_CR_STRT, and flash_wait_for_last_operation().
void flash_icache_disable | ( | void | ) |
void flash_icache_enable | ( | void | ) |
Enable instruction cache.
Definition at line 172 of file flash.c.
References FLASH_ACR, and FLASH_ACR_ICEN.
void flash_icache_reset | ( | void | ) |
Reset instruction cache.
Definition at line 182 of file flash.c.
References FLASH_ACR, and FLASH_ACR_ICRST.
void flash_lock_option_bytes | ( | void | ) |
Lock Option Byte Access.
Definition at line 198 of file flash.c.
References FLASH_CR, and FLASH_CR_OPTLOCK.
Referenced by flash_lock().
void flash_lock_progmem | ( | void | ) |
lock program memory
Definition at line 193 of file flash.c.
References FLASH_CR, and FLASH_CR_LOCK.
Referenced by flash_lock().
void flash_program | ( | uint32_t | address, |
uint8_t * | data, | ||
uint32_t | len | ||
) |
Program a Data Block to FLASH.
This programs an arbitrary length data block to FLASH memory. The program error flag should be checked separately for the event that memory was not properly erased.
[in] | address | Starting address in Flash. |
[in] | data | Pointer to start of data block. |
[in] | len | Length of data block in bytes (multiple of 8). |
Definition at line 72 of file flash.c.
References flash_program_double_word().
void flash_program_double_word | ( | uint32_t | address, |
uint64_t | data | ||
) |
Program a 64bits word to FLASH.
Program a 64bit word to FLASH memory. Flash programing error must be checked and cleared if needed before starting programming.
[in] | address | Address in FLASH |
[in] | data | Double word to write |
Definition at line 48 of file flash.c.
References FLASH_CR, FLASH_CR_PG, flash_wait_for_last_operation(), and MMIO32.
Referenced by flash_program().
void flash_unlock_progmem | ( | void | ) |
Unlock program memory.
Definition at line 187 of file flash.c.
References FLASH_KEYR, FLASH_KEYR_KEY1, and FLASH_KEYR_KEY2.
Referenced by flash_unlock().
void flash_wait_for_last_operation | ( | void | ) |
Wait until Last Flash Operation has Ended.
Definition at line 34 of file flash.c.
References FLASH_SR, and FLASH_SR_BSY.
Referenced by flash_erase_all_pages(), flash_erase_page(), and flash_program_double_word().