#include "D:\lcd\adc.h"
#include
#include
#fuses HS,NOWDT,NOLVP,NOPROTECT,BROWNOUT,NOLVP,PUT
#USE delay(clock=20000000)
unsigned long bat;
float volt=0.0;
void main()
{
setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_DIV_4);
setup_psp(PSP_DISABLED);
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_vref(FALSE);
// TODO: USER CODE!!
lcd_init();
glcd_init(ON);
set_adc_channel(0);
while(true)
{
volt=0;
delay_ms(50);
bat=read_adc();
volt=bat/204.5;
lcd_gotoxy(1,1);
printf(lcd_putc,"Voltaje :%2.2f v" volt);
}
}
obtener valor en voltaje para eso tenemos que hacer una regla de tres
recordemos ke nuestro pic esta configurado con 10 bist esto nos da un
rango de 1022(read_adc())
ke kiere decir esto ke 1022 = 5v ,x = 1v
esto keda x= (1022/5)
despues de encontrar el valor de x la formula para encontra el votaje
es volt=bat/x
donde bat es lo ke devuelve read_adc();
y x el valor calculado anterior
bat=read_adc();
volt=bat/204.5;