Aktivacia defaultneho bootloadera u P89V51RD2, was: Baluova hodinova mania

Jan Waclawek konfera@efton.sk
Pátek Leden 18 11:39:29 CET 2008


Ladislav Vaiz wrote:
> Weku, uznávám, že jsem línej hledat v datasheetu :-)
> U AT89C51ED2 se aktivuje bootloader resetem pøi PSEN=0. Tady nic 
> takového nevidím. Jak se pozná, zda má bìžet bootloader/aplikace?

P89V51RD2 ma dve oblasti FLASH - 64kB application a 8kB boot. Po hardwarovom resete je aktivna bootflash, v ktorej je bootloader. Ten caka nejaku dobu (ani nahodou nie 400ms co je uvedene v datasheete, teda aspon nie s bezne pouzivanymi krystalmi :-) ) na autobaud (klasicke "U"), a ak sa nedocka, urobi softreset ktory (hardwarovo) prepne na application flash.

Toto ma obrovsku vyhodu pri ladeni, ze netreba vobec nijako saskovat s PSENom (ani rucne, ani cez handshake piny RS232). V aplikacii to uz moze byt na skodu, lebo ak nieco do jednocipu furt brble a jednocip sa resetne, moze nechtiac vbehnut do bootload modu co navonok moze vyzerat ze zblbol ci zamrzol; ale nie je to neprekonatelny problem - existuje upgrade bootloadera, ktory umoznuje viazat bootloading na stav na pine, pripadne ho zakazat uplne (prip. sa da bootloader prepisat na svoj vzor, ale to je na dlhsie).

Este chcem podotknut ze v boot flashke je okrem bootloadera (ktory samozrejme zabera len malu cast z tych 8kB) este monitor odvodeny od Keilovskeho FlashMonu, prezyvany SoftICE, ktory umoznuje ladit aplikacie v Keilovskom IDE velmi podobne ako s emulatorom (i ked s urcitymi obmedzeniami, napr. je obmedzene pouzitie seriaku - kedze sa cezen ladi; prip. ako jeden pan kolega pritomny aj tu v konfere zistil, je potrebne na reset adrese 0000 mat ljmp... :-) )


wek





Další informace o konferenci Hw-list