STM32 a FLASH EEPROM emulace

Michal Grunt michal.grunt na vynet.cz
Středa Říjen 15 14:26:42 CEST 2014


Ale když o tom tak přemýšlím tak si asi napíši svoji jednodušší verzi ;-) Mám problém dostat do 16kB flash vše co potřebuji a točit k tomu 2 stránky a ukrojit si z toho mála ještě 2kB (potřebuji ukládat cca 150 hodnot)... Pochopil jsem to tak, že točení stránek je opatření proti opotřebování flash. Data se v mém případě moc často měnit nebudou (jednou se zařízení nastaví a pak už se to moc měnit nebude).

Každopádně předchozí snažení vniveč nepřijde. V hlavě mám pár dalších věcí na které to bude použitelné. A navíc jsem se i něčemu přiučil.

________________________________________
Od: Hw-list [hw-list-bounces na list.hw.cz] za uživatele Michal Grunt [michal.grunt na vynet.cz]
Odesláno: 15. října 2014 11:20
Komu: HW-news
Předmět: RE: STM32 a FLASH EEPROM emulace

Hurá, tak už to maká. Definici VirtAddVarTab z eeprom.c jsem přesunul do eeprom.h a v main.c jsem před FLASH_Unlock(); a EE_Init(); inicializoval VirtAddVarTab  "for (i = 0; i < NB_OF_VAR; i++) VirtAddVarTab[i] = i;". Elegantnější by to asi bylo dát indexaci rovnou do eeprom.c EE_Init();

Stejně je to divně udělaný, protože VirtAddVarTab je deklarován v eeprom.c a není v tomto souboru nikde indexován. Deklarace a indexování VirtAddVarTab v main.c (jako je uvedeno v demo příkladu) je samozřejmě úplně mimo... Ale že se o tom nikdo nikde nezmiňuje (ani v oficiálním PDF o tom nikde není zmínka, že je to nutnost) . Co jsem koukal na příklady z jiných vygooglených zdrojáků tak u všech dekladují VirtAddVarTab v main.c.

Děkuji za pomoc!

MG

-----Original Message-----
From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jan Waclawek
Sent: Wednesday, October 15, 2014 8:00 AM
To: HW-news
Subject: RE: STM32 a FLASH EEPROM emulace

> Ano to pole virtuálních adres je blbost, to už byla jenom taková
> zoufalost pevzatá z demo píkladu (i když i tam jsem to použití njak nechápal, nevím pro to tam cpaly)...
> Pak jsem ho odstranil.

Tak to rychlo dajte spat. To kopirovanie do novej stranky to priamo vyzaduje, a ak to pole explicitne neinicializujete na navzajom rozdielne hodnoty, tak to presne takto musi kopirovat vela nulovych adries. Alebo si u-/o-pravte tu "kniznicu".

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


Další informace o konferenci Hw-list