STM32 a FLASH EEPROM emulace

Michal Grunt michal.grunt na vynet.cz
Úterý Říjen 14 00:01:51 CEST 2014


Mám následující kód:

// eeprom.h

#define EEPROM_START_ADDRESS ((uint32_t)0x08003800)

#define NB_OF_VAR ((uint8_t)50)



// main.c

for (i = 0; i < NB_OF_VAR; i++) VirtAddVarTab[i] = i;



FLASH_Unlock();

EE_Init();



EE_WriteVariable(VirtAddVarTab[0], (uint16_t)0);

EE_WriteVariable(VirtAddVarTab[1], (uint16_t)1);

EE_WriteVariable(VirtAddVarTab[2], (uint16_t)2);

...

EE_WriteVariable(VirtAddVarTab[49], (uint16_t)49);



FLASH_Lock();



Následuje čtení hodnot EE_ReadVariable 0 - 49...



Když provádím restarty tak jeden restart je vše OK a následující mám všechny přečtené hodnoty rovno 0, další už je to opět v pořádku atd.



Neví někdo proč se tak děje? Možná jsem špatně pochopil funkci...



MG
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20141013/fd1500e7/attachment.html>


Další informace o konferenci Hw-list