#include <xc.h>
#include "main.h"
#include "adc_trimer.h"

volatile char trimer1; // volatile not using 
						// from other
						// functions

void trimer(void)
{	trimer1 = 0;	// set variable to zero = 0
	ADFM = 0; 		// left arenged result in ADRESH:ADRESL
	CHS4=0;CHS3=0;CHS2=0;CHS1=0;CHS0=0; // select ADC channel
	__delay_ms(10); // IMPORTANT THIS IS AQUISITION TIME !!!!
	GO = 1;			// start mesuring temp ADC value
	trimer1 = ADRESH; // save in ADRESH and using only
						//ADRESH value to vaiable
	
	if(trimer1 == 0)	// make checkout of variable
	{ led_1 = 0; led_2 = 0; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 > 1 && trimer1 <= 31) // if value is between 1 AND 31
	{ led_1 = 1; led_2 = 0; led_3 = 0; led_4 = 0; // set led_1 to light 1
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}// others stay dark 0
	else if(trimer1 > 32 && trimer1 <= 63)
	{ led_1 = 0; led_2 = 1; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 64 && trimer1 <= 95)
	{ led_1 = 0; led_2 = 0; led_3 = 1; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 96 && trimer1 <= 127)
	{ led_1 = 0; led_2 = 0; led_3 = 0; led_4 = 1;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 128 && trimer1 <= 159)
	{ led_1 = 0; led_2 = 0; led_3 = 0; led_4 = 0;
	  led_5 = 1; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 160 && trimer1 <= 191)
	{ led_1 = 0; led_2 = 0; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 1; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 192 && trimer1 <= 223)
	{ led_1 = 0; led_2 = 0; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 1; led_8 = 0;}
	else if(trimer1 >= 224 && trimer1 <= 255)
	{ led_1 = 0; led_2 = 0; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 1;}
	
}

void trimer2(void)	// same function but lights are different
{	trimer1 = 0;	// IMPORTANT !!! clear value before USE IT !!!!
	ADFM = 0; // left arenged result in ADRESH:ADRESL
	CHS4=0;CHS3=0;CHS2=0;CHS1=0;CHS0=0;
	__delay_ms(10);
	GO = 1;
	trimer1 = ADRESH; // using only result in ADRESH
	
	if(trimer1 == 0)
	{ led_1 = 0; led_2 = 0; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 > 1 && trimer1 <= 31)
	{ led_1 = 1; led_2 = 0; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 > 32 && trimer1 <= 63)
	{ led_1 = 1; led_2 = 1; led_3 = 0; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 64 && trimer1 <= 95)
	{ led_1 = 1; led_2 = 1; led_3 = 1; led_4 = 0;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 96 && trimer1 <= 127)
	{ led_1 = 1; led_2 = 1; led_3 = 1; led_4 = 1;
	  led_5 = 0; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 128 && trimer1 <= 159)
	{ led_1 = 1; led_2 = 1; led_3 = 1; led_4 = 1;
	  led_5 = 1; led_6 = 0; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 160 && trimer1 <= 191)
	{ led_1 = 1; led_2 = 1; led_3 = 1; led_4 = 1;
	  led_5 = 1; led_6 = 1; led_7 = 0; led_8 = 0;}
	else if(trimer1 >= 192 && trimer1 <= 223)
	{ led_1 = 1; led_2 = 1; led_3 = 1; led_4 = 1;
	  led_5 = 1; led_6 = 1; led_7 = 1; led_8 = 0;}
	else if(trimer1 >= 224 && trimer1 <= 255)
	{ led_1 = 1; led_2 = 1; led_3 = 1; led_4 = 1;
	  led_5 = 1; led_6 = 1; led_7 = 1; led_8 = 1;}
	
	// this code here is from another program
	// check the code and search in inet for see what
	// a command are use here
	// while(GO)continue;
	// TIME DELAY OFF - 1min-10min
	// trimer1 = (trimer1 >> 5); // bit moving rigth with 5
					// from 8 bits after moving they are only 3 = 111
	// decimal 7 max = 1800 sec = 3 minute
	// delayOFF = trimer1 + 1; // 7 + 1 = 8 // if + 1 = 1800 sec max
	// delayOFF = delayOFF * 600; // 8 * 600 = 4800 = 10 minuti
	
	/* ADFM = 0;
	CHS4=0;CHS3=0;CHS2=0;CHS1=0;CHS0=1;
	__delay_ms(20);
	GO = 1;
	while(GO)continue;
	trimer2 = ADRESH; // TIME DELAY ON - 3s-10s
	trimer2 = (trimer2 >> 4); // bit moving rigth with 4
					// from 8 after moving they are only 4 = 1111
	delayON = trimer2; */
}

