#include <16F88.h>
#device adc=10
#fuses xt,nowdt,noput,nobrownout,nolvp,noprotect
#use delay(clock=4000000)
#include <lcd.c>
#define LED PIN_B2
void main() {
int16 medicion;
float voltaje;
lcd_init();
while (1) {
{
setup_adc(ADC_CLOCK_INTERNAL);
setup_adc_ports (sAN0); // SI MIRAS EN LA LIBRERIA DEL PIC16F88 VERAS QUE ES "sAN0"
set_adc_channel(0);
delay_us(20);
medicion= voltaje;
medicion = read_adc();
setup_adc (adc_off);
voltaje = 13.8 * medicion / 1024;
printf(lcd_putc
, "\fADC = %4ld", medicion
); printf(lcd_putc
, "\nVoltage = %01.2fV", voltaje
); }
if(input(pin_a1)==0)
output_low(LED);
if(input(pin_a1)==1)
output_high(LED);
if ((voltaje>=12.25) && (voltaje<=13.8)){
output_high(PIN_B0);
delay_ms (1000);
}
else {
output_low(PIN_B0);
}
if ((voltaje>9.7) && (voltaje<12.25)){
output_high(PIN_B1);
delay_ms (1000);
}
else
output_low(PIN_B1);
}
}