[elektro] PIC18 C + asm
potyo
potyo.ada at gmail.com
Fri Apr 4 17:48:55 CEST 2014
Ha megszakításról van szó, akkor szerintem a fordító látja, hogy az a
regiszter használva van, és lementi. Hogy mivan, ha te belerondítasz, azt
nem tudom, meg kellene nézni az asm listát.
Amúgy én azt csinálnám, hogy addig finomítanám a C kódot, amíg azt nem
kapom az asm listában, ami nekem kell. Lehet, hogy C-ben nem lesz a
legszebb és/vagy legrövidebb a kód, de C18-ban el lehet érni, hogy egész jó
kódot csináljon. Ha viszont XC8-at használsz, akkor ez utóbbi bekezdést
tekintsd tárgytalannak :-((
2014. április 4. 17:12 Zoltán Balla írta, <sdrlab at yandex.ru>:
> Sziasztok
>
> Elméleti jellegű kérdésem lenne.
> Van egy C-s PIC-es programom, melyben a sebességbeli optimalizálás
> érdekében asm betéteket használok. Alapvetően indirekt címzés lehetősége
> miatt használom ezeket az asm betéteket. FSR0 és 1-et érinti ez általában.
> A problémám az, mi van akkor ha pl beüt egy megszakítás, amelyben a
> fordító elegánsan szintén használni szeretné ezeket a regisztereket ?!
> Elmentené őket előzőleg, s a megszakítási rutin végén visszaállítja ?
> Mi van akkor, ha még csak megszakításról sem beszélünk, egyszerűen csak
> előzőleg használja valamelyiket, majd én "belerondítok" az asm
> betétemmel, és amikor folytatná, már rég nem az van benne, amivel
> dolgoznia kéne ?! Hogy kellene ezt szerintetek korrektül megoldani ?
>
> Zoli
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list