STM32 EEPROM Emulation (#3741)
* STM32 EEPROM Emulation - Added EEPROM emulation libaries from libmaple and Arduino_STM32. https://github.com/rogerclarkmelbourne/Arduino_STM32 and https://github.com/leaflabs/libmaple. - Renamed teensy EEPROM library and added conditional selection of library. - Remapped EEPROM memory map for 16 byte blocks (as is with STM32f3xx MCUs). - Added EEPROM initialization in main.c of Chibios. - Added EEPROM format to clear the emulated pages when EEPROM is marked as invalid. * Fixed ifdef
This commit is contained in:
parent
30680c6eb3
commit
621ce29a53
9 changed files with 1035 additions and 1 deletions
|
@ -3,12 +3,20 @@
|
|||
#include "eeprom.h"
|
||||
#include "eeconfig.h"
|
||||
|
||||
#ifdef STM32F303xC
|
||||
#include "hal.h"
|
||||
#include "eeprom_stm32.h"
|
||||
#endif
|
||||
|
||||
/** \brief eeconfig initialization
|
||||
*
|
||||
* FIXME: needs doc
|
||||
*/
|
||||
void eeconfig_init(void)
|
||||
{
|
||||
#ifdef STM32F303xC
|
||||
EEPROM_format();
|
||||
#endif
|
||||
eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER);
|
||||
eeprom_update_byte(EECONFIG_DEBUG, 0);
|
||||
eeprom_update_byte(EECONFIG_DEFAULT_LAYER, 0);
|
||||
|
@ -43,6 +51,9 @@ void eeconfig_enable(void)
|
|||
*/
|
||||
void eeconfig_disable(void)
|
||||
{
|
||||
#ifdef STM32F303xC
|
||||
EEPROM_format();
|
||||
#endif
|
||||
eeprom_update_word(EECONFIG_MAGIC, 0xFFFF);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue