0 Usuarios y 1 Visitante están viendo este tema.
Codigo:#include <16F876.h>#device adc=10 // Conversión con 10 bits//#device adc=8 // Conversión con 8 bits // Si no se pone ningún device toma 8 bits#fuses XT, NOPROTECT, NOPUT, NOWDT, NOBROWNOUT, NOLVP, NOCPD, WRT#use delay (clock=4000000) #include <LCD.c>void main( void ){ long valor; // float const resoluc= 5.0/256.0; // Conversión es con 8 bits float const resoluc= 5.0/1024.0; // Conversión es con 10 bits float voltios; setup_adc_ports ( ALL_ANALOG ); // Entrada analógica por RA0 setup_adc ( ADC_CLOCK_INTERNAL ); // Reloj interno para el ADC set_adc_channel ( 0 ); // Canal 0 para convertir lcd_init(); while ( 1 ) { valor = read_adc(); lcd_gotoxy(1,1); voltios= valor * resoluc; printf ( lcd_putc, "%1.2f voltios ", voltios ); delay_ms(200); // Convierte cada 200ms }}