[elektro] 16F PIC stack

Fuzesi Arnold arnold.fuzesi.lista at gmail.com
Tue Sep 8 21:30:35 CEST 2009


Jaja...uC-knel kulon van a RSTACK meg CSTACK. Elobbi az ugrasi cimek, utobbi az 
adat stack. Ez utobbi szinte majd mindenhol siman sw uton a RAM-bol van 
kialakitva, mig elobbihez van hw tamogatas...

Ezert lehet szepen ledogleszteni egy uC progit ha kicsi a CSTACK es tulfut a 
valtozoteruletre. (CSTACK, HEAP, RAM terulet...AVR-en pl az IAR igy pakolja le)

Watermark-ot, spec pattern-t erdemes a cstack-be tenni, azzal feltolteni 
rendszerindulaskor.
Ezzel a stack kihasznaltsagot lehet monitorozni...

Neha hasznalom ezt nagy programoknal, es ha veletlen tulfut a progi a cstack-en 
akkor azonnal panikolas. Nagyon sunyi hibakat tud okozni....

(Timer Interrupt rutinbol nezem, azt nem erinti ha tulir az ember...)

A.

On 2009. 09. 08. 20:12, Palasik Sandor wrote:
>> nagyon csodálom azt aki annak idején a hcs vevő progit megírta (már
>> nem tom melyik picre, talán c55-c56?) 2 stack mélység, no interrupt!
> 
> Megnéztem, hogy a HITECH fordító mit csinál C55-re, amiben ugye csak két
> mélységű a stack. Kiderült, hogy csinál egy táblázatot csupa ugró
> utasításból és visszatérési címként az ugróutasítás sorszámát tárolja még a
> szubrutinba ugrás előtt. A szubrutin meg előveszi az értéket és arra ugrik.
> Rekurziót persze nem tud, de az még nem hiányzott azoknál a projekteknél,
> ahol PIC-et használtam.
> 
> Mindezzel persze nem a C5X sorozatot vagy a kicsi stacket akarom propagálni
> ;-), másrészt azért nem rossz, hogy egy hat lábú SOT-23 tokba C programot
> lehet tenni (azt hiszem, a 10F2XX sorozatnak ugyanez az utasításkészlete).
> 
> Palasik Sándor
> 
> -----------------------------------------
>           elektro[-flame|-etc]
> 



More information about the Elektro mailing list