#include <16F886.h>
//#device adc=16 //65536
#device adc=10 //1024
//#device adc=8 //255

#FUSES NOWDT                    //No Watch Dog Timer
#FUSES INTRC_IO                 //Internal RC Osc, no CLKOUT
#FUSES NOPUT                    //No Power Up Timer
#FUSES NOMCLR                   //Master Clear pin used for I/O
#FUSES NOPROTECT                //Code not protected from reading
#FUSES NOCPD                    //No EE protection
#FUSES NOBROWNOUT               //No brownout reset
#FUSES IESO                     //Internal External Switch Over mode enabled
#FUSES NOFCMEN                  //Fail-safe clock monitor disabled
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NODEBUG                  //No Debug mode for ICD
#FUSES NOWRT                    //Program memory not write protected
#FUSES BORV21                   //Brownout reset at 2.1V

#use delay(clock=8000000)
#use rs232(baud=9600,parity=N,xmit=PIN_C4,rcv=PIN_C5,bits=8)

int cnt=0;
float aaa, adc_0,adc_1, volts,ampers;

void main()
{

   setup_adc_ports(sAN0|sAN1|VSS_Vref); //an_o voltmérés és Vref-et használok
   setup_adc(ADC_CLOCK_DIV_32);
   setup_spi(SPI_SS_DISABLED);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_comparator(NC_NC_NC_NC);
   setup_oscillator(OSC_8MHZ);

   printf("\f");
   
   while(1)
  {
  
   set_adc_channel (0);
   adc_0 = read_adc();
   delay_us(160);
     
   volts = (float)((adc_0/1024)*2.5)*24;   //AD/10bites *Vref * Osztó
   //ha csak 
   //volts=(float)(adc_0); -t használok, akkor stabil a kijelzés és ne ugrál
   printf("%3.2fV ", volts);
   delay_ms(1000);
 
   printf("\n\r");
   //... etc...
   } 

}
