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