[elektro] PIC18F reset vector

Kovács Árpád arpad.kovacs at freemail.hu
Sat Apr 5 13:47:15 CEST 2008


Köszi a segítséget, egyszerű és ravasz megoldás, úgy tűnik túl akartam 
bonyolítani :) Egyébként azért gondoltam, hogy az elejére rakom a 
bootloadert, mert ha a végén van és frissítésnél valami hiba történik és az 
első blokk törlése után nem tudom újraprogramozni azt (legkevesebb egyidőben 
törölhető terület 1024 byte) akkor elveszíthetem a bootloaderre mutató 
ugrást, bár ennek kicsi az esélye. Illetve még azt is lehet, hogy az első 
blokkot úgy ahogy van inkább békénhagyom. :)

Köszi mégegyszer,

Árpi


----- Original Message ----- 
From: "Moczik Gabor" <pm_levlista at progzmaster.hu>
To: <elektro at tesla.hu>
Sent: Saturday, April 05, 2008 12:39 AM
Subject: Re: [elektro] PIC18F reset vector


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 )))

-----------------------------------------
          elektro[-flame|-etc]



More information about the Elektro mailing list