[elektro] PIC18F reset vector

Moczik Gabor pm_levlista at progzmaster.hu
Sat Apr 5 00:39:00 CEST 2008


Kovács Árpád wrote:
> Csinált már valaki bootloader-es megoldást C18-al? A microchip oldalon csak 
> assembly megoldást találtam.

Nem csinaltam azzal a forditoval, de:
A bootloader ne az elejen legyen, hanem a kodterulet vegen.
Ehhez az interrupt rutinokat nem kell relokalni, egy (ketto) 
ugroutasitassal kevesebb. A 0-s cimre egy ugroutasitas keruljon, ami a 
bootloader-t hivja a kodterulet vegen, a bootloader meg majd inditja a 
tenyleges programot ha nem kell frissiteni.

Hogy hova kell ugrani az onnan tudhato, hogy amikor a firmware-t fel akarod 
tolteni, akkor a fordito elhelyezett egy ugroutasitast a 0-s cimre, ami a 
reset pontra mutat. A bootloader kliens szoftvere ezt kiszedi onnan, 
kicsereli a bootloader kezdocimre ugrasra, az eredeti cimet pedig elhelyezi 
a bootloadernek megfelelo helyen, ezzel tudja hova kell "beugrani" a rendes 
programkodot inditani.

TinyBootloader-t hasznalok, az ezt mind megcsinalja, tulajdonkeppen csak a 
bootloadert egetem be egyszer, utana nem kell torodnom vele programozaskor 
hogy tenylegesen hogyan is kerul majd a prociba a program.

(illetve annyiban, hogy nem lehet teleirni a flash-t, a booloader helyet 
nem lehet elhasznalni, valamint mindent inicializalni kell a main-ban, mert 
a bootloader utan nem default allapotban vannak a regiszterek)

-- 
((( Móczik Gábor  )))--((( E~mail: "pm-01" @AT "progzmaster" .DOT "hu" )))
((( Skype: moczik )))



More information about the Elektro mailing list