FLASH Module¶
The Flash driver provides functions to configure the fallback power modes and the active grace periods of flash banks and pump, and the pump wake-up time. This driver also provides functions to configure the flash wait-states, prefetch, cache and ECC features. It also provides functions to access the Flash ECC test mode registers and the Flash ECC error status registers.
-
group
flash_api Defines
-
FLASHCONFIG_BASE0x00057000U¶ Flash Trim Defines.
-
FLASH_O_TRIMCTL0x1600U¶
-
FLASH_O_TRIMLOCK0x1604U¶
-
FLASH_O_TRIMCOMMIT0x1608U¶
-
FLASH_TRIMCTL_ENABLE_M0x1U¶
-
FLASH_TRIMCTL_ENABLE_S0x0U¶
-
FLASH_TRIMLOCK_TRIMLOCKREAD_TRIMLOCKOTHER_M0x3U¶
-
FLASH_TRIMLOCK_TRIMLOCKREAD_TRIMLOCKOTHER_S0x0U¶
-
FLASH_TRIMCOMMIT_TRIMCOMMITREAD_TRIMCOMMITOTHER_M0x3U¶
-
FLASH_TRIMCOMMIT_TRIMCOMMITREAD_TRIMCOMMITOTHER_S0x0U¶
-
FLASH_DELAY_CONFIG__asm(" RPT #7 || NOP")¶
-
FLASH_SINGLE_BIT_ECC_TEST_EN0x1U¶
-
FLASH_DOUBLE_BIT_ECC_TEST_EN0x3U¶
Functions
-
void
Flash_setWaitstates(uint32_t ctrlBase, uint16_t waitstates)¶ Sets the random read wait state amount.
This function sets the number of wait states for a flash read access. The
waitstates parameter is a number between 0 and 15. It is important to look at your device’s datasheet for information about what the required minimum flash wait-state is for your selected SYSCLK frequency.- Parameters
ctrlBase: is the base address of the flash wrapper control registers.waitstates: is the wait-state value.
By default the wait state amount is configured to the maximum 15.
- Return
None.
-
void
Flash_enablePrefetch(uint32_t ctrlBase)¶ Enables prefetch mechanism.
- Return
None.
- Parameters
ctrlBase: is the base address of the flash wrapper control registers.
-
void
Flash_disablePrefetch(uint32_t ctrlBase)¶ Disables prefetch mechanism.
- Return
None.
- Parameters
ctrlBase: is the base address of the flash wrapper control registers.
-
void
Flash_enableCache(uint32_t ctrlBase)¶ Enables data cache.
- Return
None.
- Parameters
ctrlBase: is the base address of the flash wrapper control registers.
-
void
Flash_disableCache(uint32_t ctrlBase)¶ Disables data cache.
- Return
None.
- Parameters
ctrlBase: is the base address of the flash wrapper control registers.
-
void
Flash_setFLWEPROT(uint32_t ctrlBase)¶ Sets the FLWEPROT value of the FLPROT register.
- Return
None.
- Parameters
ctrlBase: is the base address of the flash wrapper control registers.
-
void
Flash_enableECC(uint32_t eccBase)¶ Enables flash error correction code (ECC) protection.
- Return
None.
- Parameters
eccBase: is the base address of the flash wrapper ECC registers.
-
void
Flash_disableECC(uint32_t eccBase)¶ Disables flash error correction code (ECC) protection.
- Return
None.
- Parameters
eccBase: is the base address of the flash wrapper ECC registers.
-
void
Flash_enableSingleBitECCTestMode(uint32_t eccBase)¶ Enables Single Bit ECC Test mode.
- Return
None.
- Parameters
eccBase: is the base address of the flash wrapper ECC registers.
-
void
Flash_enableDoubleBitECCTestMode(uint32_t eccBase)¶ Enables Double Bit ECC Test mode.
- Return
None.
- Parameters
eccBase: is the base address of the flash wrapper ECC registers.
-
void
Flash_disableSingleBitECCTestMode(uint32_t eccBase)¶ Disables Single Bit ECC Test mode.
- Return
None.
- Parameters
eccBase: is the base address of the flash wrapper ECC registers.
-
void
Flash_disableDoubleBitECCTestMode(uint32_t eccBase)¶ Disables Double Bit ECC Test mode.
- Return
None.
- Parameters
eccBase: is the base address of the flash wrapper ECC registers.
-
void
Flash_initModule(uint32_t ctrlBase, uint32_t eccBase, uint16_t waitstates)¶ Initializes the flash control registers.
This function initializes the flash control registers. At reset bank and pump are in sleep. A flash access will power up the bank and pump automatically. This function will power up Flash bank and pump and set the fallback mode of flash and pump as active.
- Parameters
ctrlBase: is the base address of the flash wrapper control registers.eccBase: is the base address of the flash wrapper ECC registers.waitstates: is the wait-state value.
This function also sets the number of wait-states for a flash access (see Flash_setWaitstates() for more details), and enables cache, the prefetch mechanism, and ECC.
- Return
None.
-
void
Flash_writeTrims(uint32_t reg_offset, uint32_t mask, uint32_t shift, uint32_t value)¶ Initializes the flash trim registers.
- Return
None.
-
The code for this module is contained in driverlib/flash.c, with driverlib/flash.h containing the API declarations for use by applications.