STM32F030 a emulace eeprom

Michal Grunt michal.grunt na vynet.cz
Pátek Září 19 13:35:44 CEST 2014


Pro F0 jsem našel toto:
http://www.st.com/web/en/catalog/tools/PF258153

Z manuálu bych to všechno nastudovat mohl to je pravda, ale volného času je málo. Potřebuji uložit jenom pár dat a po restartu nebo připojení napájení je načíst, nic víc.

Zdrojové kódy z výše uvedeného odkazu jsem zkoušel (konkrétně na STM32f030f4p6) a na první pokus zápis funguje. Koukal jsem do paměti přes st-link utilitu. Teď už se v tom jenom trochu zorientovat.

Zdrojový kód pro zápis do paměti je:

#include "eeprom.h"

uint16_t VirtAddVarTab[NB_OF_VAR] = {0x5555, 0x6666, 0x7777};
uint16_t VarDataTab[NB_OF_VAR] = {0, 0, 0};
uint16_t VarValue = 0;

FLASH_Unlock();
EE_Init();

/* --- Store successively many values of the three variables in the EEPROM ---*/
/* Store 0x1000 values of Variable1 in EEPROM */

for (VarValue = 1; VarValue <= 0x64; VarValue++)
  EE_WriteVariable(VirtAddVarTab[0], VarValue);

// read the last stored variables data
EE_ReadVariable(VirtAddVarTab[0], &VarDataTab[0]);


MG

-----Original Message-----
From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of hamouz na divesoft.cz
Sent: Thursday, September 18, 2014 11:33 PM
To: HW-news
Subject: RE: STM32F030 a emulace eeprom

Tohle nestačí?
http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/CD00165693.pdf

Tomáš


> Děkuji za vysvětlení. Zkusím si o tom ještě něco najít a případně dám 
> vědět jak to dopadlo.
>
> MG
>
> ________________________________________
> Od: Hw-list [hw-list-bounces na list.hw.cz] za uživatele Jan Waclawek 
> [konfera na efton.sk]
> Odesláno: 18. září 2014 16:52
> Komu: HW-news
> Předmět: RE: STM32F030 a emulace eeprom
>
>>Takže pamì od 0x0800 0000 je vyhrazena jenom pro "uživatelskou potøebu"
>> a nic jiného do ni nezasahuje?
>
> Kde som take napisal?
>
> Flash je namapovana od 0x08000000, a po resete je odzrkadlena aj od 
> 0x00000000, odkial sa cita reset vektor. Program je ulozeny prave od 
> adresy 0x08000000. Preto nultu stranku nie je vhodne pouzit na nieco ine.
>
> Na emulaciu EEPROM pouzite najvyssie stranky. Ja osobne by som to 
> robil na dve stranky, a ak nie je nejaka poziadavka na vacsi pocet 
> zapisov a na vyssiu rychlost, tak by som len jednoducho pri poziadavke 
> o zmenu vymazal celu "starsiu" stranku a preprogramoval vsetkych 100 
> byte spolu s indikatorom "cerstvosti".
>
> wek
>
>
>>-----Original Message-----
>>
>>>V refman na strani 38 tabulka pamiti je, ale není mi jasné kterou  
>>>stránku mu3u pou3ít (kterou zaeít) kdy3 je to pro kód i data.
>>
>>To je jedno, su rovnocenne - s vynimkou nultej stranky, odkial sa 
>>spusta  program po resete.
>>
>>>Zde v konferenci jsem v historii na1el, 3e zápis se provádí po word, 
>>>ale  mazat jde jen celá buoka.
>>
>>Tak to ste nasli zle. Zapisuje sa po 16-bitoch (halfword) - RM str. 41  
>>hore. Maze sa po strankach, t.j. 1kByte, str. 42.
>>
>>wek
>>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
> http://list.hw.cz/mailman/listinfo/hw-list
>


_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list