STM32 a FLASH EEPROM emulace

V P vvitty01 na seznam.cz
Středa Říjen 15 00:19:45 CEST 2014


Verze 1.4.0 bude k dispozici za tyden nebo dva.
Bude tam par rozsireni co se tyka podporovanych verzi procesoru a pak nejake
opravy jako obvykle.

Detaily release notes ted zrovna nemam po ruce...

-- 
-----------------------------------------
Pokud máte zájem, navštivte naši stránku o mašinkách - http://www.pojezdy.eu


---------- Původní zpráva ----------
Od: Michal Grunt <michal.grunt na vynet.cz>
Komu: HW-news <hw-list na list.hw.cz>
Datum: 15. 10. 2014 0:12:31
Předmět: RE: STM32 a FLASH EEPROM emulace

"Trošku jsem na to koukal a je tam opravdu nějaký problém v kopírování dat z
page0 do page1. Debug pro F030 nemám zatím rozjetý tak si to nechávám 
vypisovat přes sériový port a ve funkci kopírování dat z page0 do page1 při 
čtení hodnot z page0 to opravdu čte úplné blbosti. No alespoň už vím na co 
se mám zaměřit.

Knihovnu eeprom.h mám v1.0.0. Novější jsem nenašel.
http://www.st.com/web/en/catalog/tools/PF258153

Teď mě ještě napadá jestli není nějaká chyba v peripherals knihovnách. 
Aktuálně pro F030 používám v1.2.0 (zatím nebyl důvod se pídit po 
novějších...). Ale koukám na web ST a jsou k dispozici novější a třeba tento
problém řeší. Vyzkouším.
http://www.st.com/web/en/catalog/tools/PF257884

Ano to pole virtuálních adres je blbost, to už byla jenom taková zoufalost 
převzatá z demo příkladu (i když i tam jsem to použití nějak nechápal, nevím
proč to tam cpaly)... Pak jsem ho odstranil. Teď už zhruba vím jak to má 
fungovat tak snad to dám dohromady (dnes už jsem na to neměl čas, budu 
pokračovat zítra). V první řadě (než budu zkoumat eeprom.h) zkusím 
aktualizovat peripherals knihovny.

Já chápu jak to myslíte s tím napsat si svoje funkce, ale právě že u STM32 
se mi líbí ta podpora od výrobce a tento procesor se mi dost zamlouvá (není 
nutné psát vše od píky a výsledek je relativně brzo vidět - samozřejmě z 
toho pramení určité nevýhody). Naopak Arduino už je takové moc zjednodušené 
a to by mě nebavilo (výsledek by pro mě neměl takovou hodnotu). A STM32 + 
knihovny je tak něco mezi tím (nějaká práce s tím je, ale není to otročina) 
si to vše napsat ručně nebo použít Arduino.

Moc si vážím toho, že se snažíte konstruktivně diskutovat.

MG

________________________________________
Od: Hw-list [hw-list-bounces na list.hw.cz] za uživatele Jan Waclawek [konfera@
efton.sk]
Odesláno: 14. října 2014 21:35
Komu: HW-news
Předmět: Re: STM32 a FLASH EEPROM emulace

> Když už si s tím dal někdo tu práci (předpokládám někdo daleko 
fundovanější než já)
> tak proč psát prakticky to samé.

No ved toto vlakno je snad prave to vysvetlenie, ze preco.

Tak som si tie zdrojaky (od F4, dnes stiahnute - mimochodom, aku rodinu a 
aku verziu tych kniznic pouzivate Vy?) pozrel. Je to naozaj dost zle v 
mnohych ohladoch.

Mate to pole virtualnych adries (co je mimochodom nie prilis pochopitelna 
blbost samo osebe) nainicializovane cele pred tym, ako zacnete zapisovat?

wek



On Tue, 14 Oct 2014 12:12:48 +0000
Michal Grunt <michal.grunt na vynet.cz> wrote:

> Zas tak cizí program to není, je to knihovna od ST... Když už si s tím dal
někdo tu práci (předpokládám někdo daleko fundovanější než já) tak proč psát
prakticky to samé. Nevím jestli se dnes kvůli ubastlení pár blbostí za rok 
vyplatí vytisknout si tisíci stránkový manuál, začít si psát základní funkce
(nejlépe pomocí ASM) a po roce dojít prakticky k tomu samému jako nabízí 
výrobce (viz. úspěšný projekt Arduino)... Třeba by výsledek jedince a jeho 
ročního snažení byl lepší než to co používá x tisíc lidí. Samozřejmě chyby 
se najdou všude, ale u masového produktu se najdou asi daleko rychleji a 
když už nic tak se o nich bude alespoň vědět.
>
> Spíš než chyba ve zdrojáku knihovny to tipuji na nějakou blbost v mém 
zdrojáku nebo nějaký ten timeout (třeba ne úplně povedená série procesoru).
>
> Na timeouty se podívám, stejně tak na zdroják té knihovny (předběžně jsem 
na to koukal, našel jsem smyčku kopírování jedné page do druhé tak to 
prověřím).
>
> Děkuji za pomoc. Dá vědět jak to dopadlo (kdyby na to pak někdo náhodou 
narazil).
>
> ________________________________________
> Od: Hw-list [hw-list-bounces na list.hw.cz] za uživatele Jan Waclawek 
[konfera na efton.sk]
> Odesláno: 14. října 2014 12:44
> Komu: HW-news
> Předmět: RE: STM32 a FLASH EEPROM emulace
>
> 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í page
0. 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/a107
zp.png
> >
> >MG
> >
> >-----Original Message-----
> >From: Hw-list [mailto:hw-list-bounces na 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 v1
echny 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
> >
>
> _______________________________________________
> 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
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list"
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20141015/1747d8be/attachment.html>


Další informace o konferenci Hw-list