Macros | Functions
eeprom.h File Reference
#include "stm32f4xx.h"

Go to the source code of this file.

Macros

#define PAGE_SIZE   (uint32_t)0x4000 /* Page size = 16KByte */
 
#define VOLTAGE_RANGE   (uint8_t)VoltageRange_3
 
#define EEPROM_START_ADDRESS
 
#define PAGE0_BASE_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + 0x0000))
 
#define PAGE0_END_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + (PAGE_SIZE - 1)))
 
#define PAGE0_ID   FLASH_Sector_1
 
#define PAGE1_BASE_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + 0x4000))
 
#define PAGE1_END_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + (2 * PAGE_SIZE - 1)))
 
#define PAGE1_ID   FLASH_Sector_2
 
#define PAGE0   ((uint16_t)0x0000)
 
#define PAGE1   ((uint16_t)0x0001)
 
#define NO_VALID_PAGE   ((uint16_t)0x00AB)
 
#define ERASED   ((uint16_t)0xFFFF) /* Page is empty */
 
#define RECEIVE_DATA   ((uint16_t)0xEEEE) /* Page is marked to receive data */
 
#define VALID_PAGE   ((uint16_t)0x0000) /* Page containing valid data */
 
#define READ_FROM_VALID_PAGE   ((uint8_t)0x00)
 
#define WRITE_IN_VALID_PAGE   ((uint8_t)0x01)
 
#define PAGE_FULL   ((uint8_t)0x80)
 
#define NB_OF_VAR   ((uint8_t)160)
 

Functions

uint16_t EE_Init (void)
 Restore the pages to a known good state in case of page's status corruption after a power loss. More...
 
uint16_t EE_ReadVariable (uint16_t VirtAddress, uint16_t *Data)
 Returns the last stored variable data, if found, which correspond to the passed virtual address. More...
 
uint16_t EE_WriteVariable (uint16_t VirtAddress, uint16_t Data)
 Writes/upadtes variable data in EEPROM. More...
 

Macro Definition Documentation

#define EEPROM_START_ADDRESS
Value:
((uint32_t)0x08004000) /* EEPROM emulation start address:
from sector1 : after 16KByte of used
Flash memory */
#define ERASED   ((uint16_t)0xFFFF) /* Page is empty */
#define NB_OF_VAR   ((uint8_t)160)
#define NO_VALID_PAGE   ((uint16_t)0x00AB)
#define PAGE0   ((uint16_t)0x0000)
#define PAGE0_BASE_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + 0x0000))
#define PAGE0_END_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + (PAGE_SIZE - 1)))
#define PAGE0_ID   FLASH_Sector_1
#define PAGE1   ((uint16_t)0x0001)
#define PAGE1_BASE_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + 0x4000))
#define PAGE1_END_ADDRESS   ((uint32_t)(EEPROM_START_ADDRESS + (2 * PAGE_SIZE - 1)))
#define PAGE1_ID   FLASH_Sector_2
#define PAGE_FULL   ((uint8_t)0x80)
#define PAGE_SIZE   (uint32_t)0x4000 /* Page size = 16KByte */
#define READ_FROM_VALID_PAGE   ((uint8_t)0x00)
#define RECEIVE_DATA   ((uint16_t)0xEEEE) /* Page is marked to receive data */
#define VALID_PAGE   ((uint16_t)0x0000) /* Page containing valid data */
#define VOLTAGE_RANGE   (uint8_t)VoltageRange_3
#define WRITE_IN_VALID_PAGE   ((uint8_t)0x01)