CMP_INT -- Comparator Interrupt
Uses PIR2,CMIF, PIE2,CMIE Registers and Control Bits.
Uses PIR1,CMIF, PIE1,CMIE Registers and Control Bits.
Uses PIR2,C1IF, PIE2,C1IE Registers and Control Bits. -- Comparator 1
DT's Interrupts MUST be used with PicBasic Pro and MPASM.
The comparator interrupt flag is set whenever the camparators value changes relative to the last value loaded into CMxOUT bits.
The following block of instructions will establish the interrupt used and the PBP label (your ISR) to jump to once interrupt occurs. Remember; all PBP labels or variables used inside ASM code blocks must be preceded by the underscore,( _GetDig). All instruction to the interrupt processor should be in ASM and preceded by the @ symbol and to the far left column of the editor if not included in other ASM code blocks.
Example:
@ INT_DISABLE CMP_INT
ASM
INT_LIST macro ;IntSource Label, Type, ResetFlag? INT_Handler CMP_INT _GetDig PBP Yes endm INT_CREAT ;Creates the interrupt processor INT_ENABLE CMP_INT ;enables CMP interrupts
ENDASM
Command functions:
INT_CREATE ;Creates the interrupt processor
INT_ENABLE CMP_INT – enable CMP interrupt.
INT_DISABLE CMP_INT – disable CMP interrupt.
INT_CLEAR CMP_INT -- clear flags
INT_RETURN ---------- To restore and return to the program where interrupt was made.
interrupt fires when a conversion is complete.
You should read the CMCON register inside the handler to end the mismatch condition.
<< AD_INT | 14-bit sources | CMP1_INT >>