STM32 a FLASH EEPROM emulace

Jan Waclawek konfera na efton.sk
Úterý Říjen 14 12:44:13 CEST 2014


No tak to bude asi chyba v tej kniznici. Zdrojaky mate, nie? Potom by malo
byt snad pomerne lahke odladit, ked uz viete, kde hladat.

Inak je to zasluzeny trest za to, ze chcete pouzivat cudzie programy (bez
smajlika).

wek



----- Original Message ---------------

>Už jsem na to pøišel (ne proè, ale kdy se tak dìje).
>
>Mám jednoduchý program, kde zapíšu 50 hodnot (25x dvojku a 25x pìtku) . Pøes ST Link utilitu vymažu mcu (komplet erase), nahraji program a pustím ho. Vše je OK. Kouknu pøes ST Link utilitu do pamìti a vše je v poøádku. Provedu restart a opìt je vše OK. A tak to pokraèuje dokud se nezaplní page0. Když je page0 zaplnìná (5x50 hodnot) a provedu 6. restart page0 se vymaže a èást obsahu (ale divného obsahu) se pøesune do page1. A právì tam je ten problém. Na zaèátku page1 je 50 hodnot (0002) s podivným indexem (0000).
>
>5. restart (page0 zaplnìna) http://i58.tinypic.com/2a5dmoz.png
>6. restart (page0 vymazána a naplnìní page1) http://i57.tinypic.com/a107zp.png
>
>MG
>
>-----Original Message-----
>From: Hw-list [mailto:hw-list-bounces at list.hw.cz] On Behalf Of Jan Waclawek
>Sent: Tuesday, October 14, 2014 9:17 AM
>To: HW-news
>Subject: Re: STM32 a FLASH EEPROM emulace
>
>Skuste neignorovat navratove hodnoty.
>
>wek
>
>
>----- Original Message ---------------
>>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 etení hodnot EE_ReadVariable 0 - 49...
>>
>>
>>
>>Kdy3 provádím restarty tak jeden restart je v1e OK a následující mám v1echny poeetené hodnoty rovno 0, dal1í u3 je to opit v pooádku atd.
>>
>>
>>
>>Neví nikdo proe se tak dije? Mo3ná jsem 1patni pochopil funkci...
>>
>>
>>
>>MG
>



Další informace o konferenci Hw-list