I cannot get this example code to compile - syntax error after step 2 . I tried several different versions of the statement, but no luck.
This will be expanded to a much larger program, and used with a 18f2520 once I get this simple part to compile.
I am using PBP 2.60
Code:
DEFINE OSC 4
OSCCON = %11101110 ' USE THIS, AND CHANGE CONFIGS FOR INT OSCILLATOR
@ __CONFIG _CONFIG1H, _OSC_INTIO67_1H & _FCMEN_OFF_1H & _IESO_OFF_1H
TRISC = %00000000
i var byte
ASM
INT_LIST macro ; IntSource, Label, Type, ResetFlag?
INT_Handler HLVD_INT, _LowVolt, PBP, yes
endm
INT_CREATE ; Creates the interrupt processor
ENDASM
MAIN:
' Step 1-Disable the module by clearing HLVDCON.4
HLVDCON.4 = 0 ' Implement Step 1
' Step2
HLVD3:HLVDL0=1101 'Set the trip point at Vdd=4.33 vdc
' Step3
HLVDCON.7=0 'Set VDIRMAG=0 to detect low voltage transition
' Step4 HLVDCON.4=1 'Enable the HLVD module
HLVDCON = %00011101 'Implements Steps 2-4
' Clear the HLVDIF interrupt flag (PIR2<2>)
PIR2.2 = 0
PAUSE 1000
GOTO MAIN
LowVolt:
' Blink LED_RED 5X to indicate Low Battery voltage detected
For i = 0 to 4
HIGH PORTC.0
Pause 500
LOW PORTC.0
PAUSE 500
Next
@ INT_DISABLE HLVD_INT ; This statement very important, else code will lockup on exit
; from the ISR to main program.
' Resume Main Program
@ INT_RETURN
'------------------{ End of Interrupt Handlers }-------------------------
@ INT_ENABLE HLVD_INT ; enable HLVD interrupt
Bookmarks