libopencm3
A free/libre/open-source firmware library for various ARM Cortex-M3 microcontrollers.
|
#include <libopencm3/stm32/common/flash_common_all.h>
#include <libopencm3/stm32/common/flash_common_f.h>
Go to the source code of this file.
Macros | |
#define | FLASH_ACR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x00) |
Flash Access Control register. More... | |
#define | FLASH_KEYR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x04) |
Flash Key register. More... | |
#define | FLASH_OPTKEYR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x08) |
Flash Option bytes key register. More... | |
#define | FLASH_SR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x0C) |
Flash Status register. More... | |
#define | FLASH_CR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x10) |
Flash Control register. More... | |
#define | FLASH_AR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x14) |
Flash Address register. More... | |
#define | FLASH_OBR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x1C) |
Flash Option Byte register. More... | |
#define | FLASH_WRPR MMIO32(FLASH_MEM_INTERFACE_BASE + 0x20) |
Flash Write Protection register. More... | |
#define | FLASH_ACR_PRFTBS (1 << 5) |
#define | FLASH_ACR_PRFTBE (1 << 4) |
#define | FLASH_ACR_PRFTEN FLASH_ACR_PRFTBE |
Compatibility alias. More... | |
#define | FLASH_ACR_HLFCYA (1 << 3) |
#define | FLASH_ACR_LATENCY_SHIFT 0 |
#define | FLASH_ACR_LATENCY_MASK 0x0f |
#define | FLASH_ACR_LATENCY(w) ((w) & FLASH_ACR_LATENCY_MASK) |
#define | FLASH_SR_BSY (1 << 0) |
#define | FLASH_SR_ERLYBSY (1 << 1) |
#define | FLASH_SR_PGERR (1 << 2) |
#define | FLASH_SR_WRPRTERR (1 << 4) |
#define | FLASH_SR_EOP (1 << 5) |
#define | FLASH_CR_OBL_LAUNCH (1 << 13) |
#define | FLASH_CR_EOPIE (1 << 12) |
#define | FLASH_CR_ERRIE (1 << 10) |
#define | FLASH_CR_OPTWRE (1 << 9) |
#define | FLASH_CR_LOCK (1 << 7) |
#define | FLASH_CR_STRT (1 << 6) |
#define | FLASH_CR_OPTER (1 << 5) |
#define | FLASH_CR_OPTPG (1 << 4) |
#define | FLASH_CR_MER (1 << 2) |
#define | FLASH_CR_PER (1 << 1) |
#define | FLASH_CR_PG (1 << 0) |
#define | FLASH_KEYR_KEY1 ((uint32_t)0x45670123) |
#define | FLASH_KEYR_KEY2 ((uint32_t)0xcdef89ab) |
#define | FLASH_OPTKEYR_KEY1 FLASH_KEYR_KEY1 |
#define | FLASH_OPTKEYR_KEY2 FLASH_KEYR_KEY2 |
Functions | |
void | flash_clear_pgerr_flag (void) |
void | flash_clear_wrprterr_flag (void) |
void | flash_program_half_word (uint32_t address, uint16_t data) |
void | flash_erase_page (uint32_t page_address) |
void | flash_erase_all_pages (void) |