Segítség! "pikkel" rám a PIC-em

safi safi at mail.externet.hu
Tue May 6 17:40:20 CEST 2003


Sziasztok!
Kellene NAGYON egy kis segítség !!!
Mi a szokásos eljárás a megszakítási rutin kezdetén és végén a
rendszerváltozók mentésére és visszaállítására PIC16F876A-nál ????      (Az
enyémnél néha "elkóborol" a program !!!!!)
Amit alkalmaztam (sikertelenül) az a következő:
******* megszakítási rutin kezdete ***************
        MOVWF   WSAVE
        SWAPF   STATUS,0
        CLRF    STATUS
        MOVWF   SSAVE
        MOVF    PCLATH,0
        MOVWF   PSAVE
        MOVF    FSR,0
        MOVWF   FSRSAVE


****** ez a megszakítási rutin belseje **************


       MOVF    FSRSAVE,0
        MOVWF   FSR
        MOVF    PSAVE,0
        MOVWF   PCLATH
        SWAPF   SSAVE,0
        MOVWF   STATUS
        SWAPF   WSAVE,1
        SWAPF   WSAVE,0
        RETFIE

******* megszakítási rutin vége ***************

WSAVE változónak minden regiszterbankban az első memóriahely van lefoglalva
($20, $A0, $120, $1A0)

PSAVE,  SSAVE, FSRSAVE   változóknak a  BANK0-ban van lefoglalva hely.

Másodpercenként lefut egy TMR1-es megszakítás, és minden 6-8 megszakításból
1-2 alkalommal rossz helyen fut tovább a program. !!!!!
Mit hibáztam ?
Kérem segítsen aki tud .
Kösz:

 safi  (Sáfár Miklós)




More information about the Elektro mailing list