VOLTIMETRO CON GLCD
VOLTIMETRO DIGITAL GLCD 128 X 64
#include <16F877A.h>
#device adc=10
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=20000000)
#include <HDM64GS12.c>
#include <graphics.c>
char nombre[]="FUENTE LABORATORIO";
char parametro[]=" [V] [A] ";
char voltaje[9];
char corriente[9];
int16 voltajeADC, voltajeADC_ant,corrienteADC, corrienteADC_ant;
void main(){
setup_adc_ports(all_analog);
setup_adc(ADC_CLOCK_DIV_32);
glcd_init(ON);
glcd_rect(1, 1, 127, 63, NO, ON);
glcd_rect(3, 3, 125, 13, NO, ON);
glcd_text57(10, 5, nombre, 1, ON);
glcd_rect(3, 15, 125, 25, NO, ON);
glcd_text57(8, 17, parametro, 1, ON);
glcd_rect(3, 27, 125, 61, NO, ON);
while(true){
set_adc_channel(0);
delay_us(10);
voltajeADC=read_adc();
voltajeADC=(voltajeADC*5/1023.0)*22.15715;
if(voltajeADC_ant != voltajeADC){
glcd_text57(13, 38, voltaje, 2, OFF);
//sprintf(voltaje, "%1.2f", (float)voltajeADC*5/1023.0);
sprintf(voltaje, "%1.2f", (float)voltajeADC);
voltaje[4] = '\0';
glcd_text57(13, 38, voltaje, 2, ON);
voltajeADC_ant=voltajeADC;
}
set_adc_channel(1);
delay_us(10);
corrienteADC=read_adc();
corrienteADC=(corrienteADC*5/1023.0)*22.15715;
if(corrienteADC_ant != corrienteADC){
glcd_text57(70, 38, corriente, 2, OFF);
//sprintf(corriente, "%1.2f", (float)corrienteADC*5/1023.0);
sprintf(corriente, "%1.2f", (float)corrienteADC*5/1023.0);
corriente[4] = '\0';
glcd_text57(70, 38, corriente, 2, ON);
corrienteADC_ant=corrienteADC;
}
}
}
#include <16F877A.h>
#device adc=10
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=20000000)
#include <HDM64GS12.c>
#include <graphics.c>
char nombre[]="FUENTE LABORATORIO";
char parametro[]=" [V] [A] ";
char voltaje[9];
char corriente[9];
int16 voltajeADC, voltajeADC_ant,corrienteADC, corrienteADC_ant;
void main(){
setup_adc_ports(all_analog);
setup_adc(ADC_CLOCK_DIV_32);
glcd_init(ON);
glcd_rect(1, 1, 127, 63, NO, ON);
glcd_rect(3, 3, 125, 13, NO, ON);
glcd_text57(10, 5, nombre, 1, ON);
glcd_rect(3, 15, 125, 25, NO, ON);
glcd_text57(8, 17, parametro, 1, ON);
glcd_rect(3, 27, 125, 61, NO, ON);
while(true){
set_adc_channel(0);
delay_us(10);
voltajeADC=read_adc();
voltajeADC=(voltajeADC*5/1023.0)*22.15715;
if(voltajeADC_ant != voltajeADC){
glcd_text57(13, 38, voltaje, 2, OFF);
//sprintf(voltaje, "%1.2f", (float)voltajeADC*5/1023.0);
sprintf(voltaje, "%1.2f", (float)voltajeADC);
voltaje[4] = '\0';
glcd_text57(13, 38, voltaje, 2, ON);
voltajeADC_ant=voltajeADC;
}
set_adc_channel(1);
delay_us(10);
corrienteADC=read_adc();
corrienteADC=(corrienteADC*5/1023.0)*22.15715;
if(corrienteADC_ant != corrienteADC){
glcd_text57(70, 38, corriente, 2, OFF);
//sprintf(corriente, "%1.2f", (float)corrienteADC*5/1023.0);
sprintf(corriente, "%1.2f", (float)corrienteADC*5/1023.0);
corriente[4] = '\0';
glcd_text57(70, 38, corriente, 2, ON);
corrienteADC_ant=corrienteADC;
}
}
}
Comentarios
Publicar un comentario