stm32f1xx_HBL/drivers/flash.h

40 lines
989 B
C

/** @file flash.h
* Module handling flash memory interface registers.
*
* The module provides functions to configure the flash and perform read and
* writes
*/
#ifndef _FLASH_H_
#define _FLASH_H_
//--includes--------------------------------------------------------------------
#include "stdint.h"
//--type definitions------------------------------------------------------------
/**
* Available flash configuration presets
*/
enum FlashPreset {
FLASH_PRESET_LOW_CLOCK_SPEED, //for 0 < clock <= 24Mz
FLASH_PRESET_MEDIUM_CLOCK_SPEED, //for 24MHz < clock <= 48MHz
FLASH_PRESET_HIGH_CLOCK_SPEED, //for 48MHz < clock <= 72MHz
};
//--functions-------------------------------------------------------------------
/**
* Configure the flash according to the given preset. Warning: calling this
* function with a sysclk higher than 24Mhz may cause the system to crash,
* please lower the clocks first
*/
void flash_configure(enum FlashPreset preset);
#endif //_FLASH_H_