miércoles, 14 de octubre de 2009

Volmetro

A qui les dejo el código para hacer un volmetro con un pic 16f877a proyecto para interfacez, uso de adc interno de este pic

#include "D:\lcd\adc.h"

#include
#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;






No hay comentarios:

Publicar un comentario