STM32F0xx a počítání zapnutí

Miroslav Mraz mraz na seznam.cz
Úterý Červen 17 13:15:50 CEST 2014


A je nutné dávat to číslo právě do options ?
Jen pro představu jak to funguje - je to podobné jako flash - options se 
napřed musí celé vymazat a pak se tam zpět zapisují hodnoty, které 
chceme. Pokud to zůstane vymazané, celkem se nic neděje, systém použije 
nějaký default a chodí to dál. Horší je, když se tam zapíše omylem 
nějaká pitomost a celé se to zamkne i pro čtení. Může se pak stát, že 
nepomůže ani svěcená voda a procesor můžete vyhodit.
Jde o to, že když budete mít to svoje číslo v hexu (na správné adrese), 
bude ho umět loader použít ?
A protože musí options vymazat, co pak zapíše do ostatních option bytes ?
Zápis do paměti přes SDW/JTAG funguje zhruba takto:
1. Pokud zapisuji do RAM, není problém, to jde přímo.
2. Pokud zapisuji do Flash, systém podle adresy pozná, že jde o zápis do 
Flash a pak nahraje do RAM kousek programu - flash write stub, ten dělá 
vlastní zápis do Flash, včetně čekání na dokončení operace - a data pro 
zápis. Pak stub spustí a čeká na dokončení. Flash musí být předem vymazána.
3. Zápis do option probíhá podobně jako do flash, jen ten stub je jiný. 
Zde opravdu nevím, zda systém dokáže jednoduše podle adresy rozeznat, 
zda má ten stub použít. Co jsem zatím dělal pokusy s OpenOCD, tak pro 
zápis do option se používají speciální povely, nikoli zápis bloku. A 
ještě ke všemu to ne vždy správně funguje.

Samosebou si můžete napsat vlastní program pro zápis do option, není to 
složité, příklady v knihovně jsou.

Mrazík

On 06/17/2014 12:00 PM, HUDA volny wrote:
> Omlouvám se, zapoměl jsem napsat kompilátor. Používám IDE EmBlocks
> a s ním jeho kompilátor, což je asi klon GCC. Na programování buď
> okénkový FlashLoader (myslím, že se tak jmenuje) přes kit discovery,
> nebo řádkový STMFlashLoader přes vlastní FTDI modul.
>
> U option bytes mi jde o nastavení mého čísla, které by se dávalo
> do Data1 a Data0.
>
> HUDA



Další informace o konferenci Hw-list