Hi HenrikOlsson
1) Can't help without seeing the values.
Here is the values
Code:
Wsave var byte   $70system
Wsave1 var byte  $A0system
Wsave2 var byte  $120system
Wsave3 var byte  $1A0system

STEPCOUNT var byte
STEPCOUNT1 var byte

LED1   VAR  PORTB.1

STEPCOUNT = 0   'pointer for phase one in sinearray
STEPCOUNT1 = 12 'pointer for phase two  in sine array
ADCON0 = %00000000
ADCON1 = %00000000

TRISB = %11111101
TRISC = %11111001  'PMW output for CCP1 AND CCP2
TRISA = %11111111
TMR2 = 0
PR2 = 199 'generate 5khz  'set for 18Khz HPWM
CCP1CON = %00001100 'set CCP1 for PWM OPERATION
CCP2CON = %00001100 'set CCP2 for PWM OPERATION
T2CON = %00000100  'TIMER2ON and prescale of 1:1 

sineval var byte[36]
sineval[0] = 512    
sineval[1] = 583   
sineval[2] = 652
sineval[3] = 717
sineval[4] = 775
sineval[5] = 825
sineval[6] = 866
sineval[7] = 896
sineval[8] = 915
sineval[9] = 921   
sineval[10] =915
sineval[11] =896
sineval[12] =866   
sineval[13] =825
sineval[14] =775
sineval[15] =716
sineval[16] =652
sineval[17] =583
sineval[18] =512   
sineval[19] = 441
sineval[20] = 372
sineval[21] = 308 
sineval[22] = 249
sineval[23] = 199
sineval[24] = 158
sineval[25] = 128
sineval[26] = 109
sineval[27] = 103
sineval[28] = 109 
sineval[29] = 128
sineval[30] = 158
sineval[31] = 199
sineval[32] = 249
sineval[33] = 308
sineval[34] = 372
sineval[35] = 441

timerone var word 
Temp var byte
Temp1 var byte
INCLUDE "DT_INTS-14.bas"     ; Base Interrupt System          emp
'INCLUDE "ReEnterPBP.bas" 
 
ASM
 
INT_LIST  macro    ; IntSource,        Label,  Type, ResetFlag?
        INT_Handler   TMR1_INT,   _sine,   ASM,  yes
    endm
    INT_CREATE               ; Creates the interrupt processor
ENDASM
 
T1CON = 000001                 ; Prescaler = 1;1, TMR1 ON
@   INT_ENABLE  TMR1_INT     ; Enable Timer 1 Interrupts 
 
timerone =  65080' gives1818hz nterruptfrequency or about 50 htz sine 
Main:
       PAUSE 5
 
GOTO Main
 
'---[TMR1_INT - interrupt handler]------------------------------------------

sine:
     T1CON = 000000 'stop the timer

    TMR1L = timerone.byte0  'reload the timer
    TMR1H = timerone.byte1
    T1CON = 000001          ' start the timer
    
    
    TeMP = sineval[STEPCOUNT]
    CCP1CON.4 = Temp.0 ' bit 0
    CCP1CON.5 = Temp.1 ' bit 1       
    CCPR1L = Temp >>2  'Bit 2-7 
    
    TeMP1 = sineval[STEPCOUNT1]
    CCP2CON.4 = Temp1.0 ' bit 0
    CCP2CON.5 = Temp1.1 ' bit 1       
    CCPR2L = Temp1 >>2  'Bit 2-7
    TOGGLE LED1 
    stepcount =  stepcount +1
    stepcount1 =  stepcount1 +1
    
    if stepcount =36 then stepcount =0
    if stepcount1 =36 then stepcount1 =0
     
 
@    INT_RETURN