#line 1 "K:/DA CONCLUDERE/MPPT con microcontrollore/Code/MPPT_PIC.c"
char value = 0x01;
unsigned int Corrente, Tensione;
unsigned long PotenzaT1, PotenzaT0;
bit check;

void main() {

 TRISC.F2 = 0;

 PR2 = 0x3F;
 T2CON = 0b00000100;
 CCP1CON = 0b00001100;
 CCPR1L = value;
 ADC_Init();
 check = 1;
 PotenzaT1 = 0;
 PotenzaT0 = 0;
 delay_ms(500);

 while(1){

 Tensione = ADC_Get_Sample(0);
 Corrente = ADC_Get_Sample(1);
 PotenzaT1 = Tensione * Corrente;

 if (check){
 if (PotenzaT1 > PotenzaT0)
 if(value < 0x3D) value ++;

 else{
 check = 0;
 if(value > 0x03) value --;
 }
 }
 else{
 if (PotenzaT1 > PotenzaT0){
 if(value > 0x03) value --;
 else{
 check = 1;
 if(value < 0x3D) value ++;
 }
 }
 }

 PotenzaT0 = PotenzaT1;
 CCPR1L = value;
 delay_ms(100);
 }
}
