STM32F1xx vlastn bootloader

Miroslav Mraz mraz na seznam.cz
Pátek Květen 16 21:30:12 CEST 2014


Něco podobného jsem řešil přes sériový port - v režimu half duplex po 1
pinu. Jde to, ale :
1. Vektory sice nejdou přesměrovat, ale jde to obejít nepřímým voláním.
Je to jen víc práce.
2. Celý bootloader běží v přerušení, což může při mazání bloku flash
(prodleva) rušit komunikaci.
3. Protože přepisuji oblast ze které běží kód, musím to napřed někam
"zaparkovat" a po upgrade udělat reset.
4. Pokud je v novém firmware kritická chyba, už se z toho jednoduše
nevyhrabu. Je to možné řešit, ale bez manuálního zásahu se to neobejde.
Alespoň jsem nepřišel na to jak.
5. Oblast bootloderu je dobré zamknout proti přepsání.

Mrazík

Jaroslav Buchta píše v Pá 16. 05. 2014 v 19:36 +0200:
> Neresil nekdo? Nejak me nenapada, jak to udelat, aby v procesoru vzdycky 
> zustal funkcni zavadec. Vektory predpokladam presmerovat nejdou a 
> nezbyva, nez program ukladat od adresy 0, cili pokud to selze je to v 
> pytli. Na tohle jsou dobre AVR.
> Na jedne desce jsem k tomuto ucelu pouzil dalsi ATMEGA8, ktery tam 
> nasype program z UART nebo externi FLASH, ale to je ponekud tezkopadne. 
> Melo by to byt ovladatelne pouze pres USB procesoru, asi v rezimu VCP.
> 
> ---
> This email is free from viruses and malware because avast! Antivirus protection is active.
> http://www.avast.com
> 




Další informace o konferenci Hw-list