The following is how I do it. works well and is super easy. I see this is an old post, but hey, it might help someone!
Use the tilda ~ before the variable! I use this on a 16F873A and a 16F1503 and the 1824, works great.
'*********** Define ADCIN parameters *************************************
DEFINE OSC 4
DEFINE ADC_BITS 8 ' Set number of bits in result
DEFINE ADC_CLOCK 3 ' Set clock source (3=rc)
DEFINE ADC_SAMPLEUS 15 ' Set sampling time in uS
XADCVAR VAR WORD ' X ADC Result
PWMOUT1 var byte ' PWM CH1
PWMOUT2 VAR BYTE ' PWM CH2
'*********** SET PORTS ************************************************
TRISA = %000001 ' Set PORTA
TRISB = %00000000 ' Set PORTB
TRISC = %00000000 ' Set PORTC
ADCON0 = 0 ' Set up ADCON1
BEGIN:
'*********** CHECK ADC VALUE ******************************************
MAIN:
ADCIN 0, XadcVar ' convert ADC value to a byte value:
PWMOUT1 = XadcVar ' X Axis
PWMOUT2 = ~XadcVar ' Y Axis
Hpwm 1,PWMOUT1,1600
Hpwm 2,PWMOUT2,1600
Goto BEGIN
end




Bookmarks