Sida 1 av 1

avbryta avbrott

Postat: 12 februari 2016, 08:03:12
av persika
På flera ställen i databladet för pic 16f1829 står det:

Kod: Markera allt

BCF INTCON, GIE ;Disable INTs
för att slå från interrupt.

Om man läser An576 så förespråkas en metod:

Kod: Markera allt

LOOP BCF INTCON, GIE ; Disable Global Interrupt
BTFSC INTCON, GIE ; Global Interrupt Disabled?
GOTO LOOP ; NO, try again
: ; YES, continue with program flow
An576 är sen 1997 och gäller pic16Cxxx.

Det är när ett interrupt inträffar precis efter att instruktionen
BCF INTCON, GIE ;Disable INTs påbörjats.
Då kommer instruktionen först göras klar med slå från GIE och sen utförs
interrupt-rutinen och den avslutar med att slå till GIE, sen utförs nästa
instruktion efter BCF INTCON, GIE.


Är det inget "problem" längre med de nya 16F1xxxx ?

Re: avbryta avbrott

Postat: 23 maj 2016, 20:05:17
av bos