Transcript
  • UNIVERSIDAD NACIONAL DEL CALLA0FIEE MICRO CONTROLADOR ATMEGA8

    VOLTIMETRO DIGITAL CON PROCESADOR ATMEGA8Descripcin del proyecto a continuacin:Hay seis grandes bloques en el dispositivo:

    El selector de gama potencimetro RMS a DC no se realiza el voltaje se toma de una fuente fija de

    5V ADC de 10 bits configuracin y control por software unidad de microcontrolador (MCU), ATMEGA8 El teclado se remplaza por un potenciometro La pantalla LCD. LCD de 2x16

    El rango de seleccin de las escalas de la tensin de entrada a un valor conocido, bajoel control de la MCU-atmega8.Tambin NO incluye la proteccin de circuitos, para evitar daos en el resto delcircuito en caso de alta tensin que se debe aplicar con un bajo factor de escalaseleccionado.

    El rango de medida es de : 0 -6V

    El selector de entrada de tensin es un potencimetro el cual alimenta a laa la entrada del ADC. El ADC es 10-bits que incorpora el ATMEGA8El ADC del ATMEGA8 es configurado y controlado por software y que tiene quedarse formato de los datos requeridos, la conversin y el almacenamiento de datosAdems, se implementa la interfaz de usuario a travs de un LCD alfanumrico de16x2

    CIRCUITO EXPERIMENTAL

    UNIVERSIDAD NACIONAL DEL CALLA0FIEE MICRO CONTROLADOR ATMEGA8

    VOLTIMETRO DIGITAL CON PROCESADOR ATMEGA8Descripcin del proyecto a continuacin:Hay seis grandes bloques en el dispositivo:

    El selector de gama potencimetro RMS a DC no se realiza el voltaje se toma de una fuente fija de

    5V ADC de 10 bits configuracin y control por software unidad de microcontrolador (MCU), ATMEGA8 El teclado se remplaza por un potenciometro La pantalla LCD. LCD de 2x16

    El rango de seleccin de las escalas de la tensin de entrada a un valor conocido, bajoel control de la MCU-atmega8.Tambin NO incluye la proteccin de circuitos, para evitar daos en el resto delcircuito en caso de alta tensin que se debe aplicar con un bajo factor de escalaseleccionado.

    El rango de medida es de : 0 -6V

    El selector de entrada de tensin es un potencimetro el cual alimenta a laa la entrada del ADC. El ADC es 10-bits que incorpora el ATMEGA8El ADC del ATMEGA8 es configurado y controlado por software y que tiene quedarse formato de los datos requeridos, la conversin y el almacenamiento de datosAdems, se implementa la interfaz de usuario a travs de un LCD alfanumrico de16x2

    CIRCUITO EXPERIMENTAL

    UNIVERSIDAD NACIONAL DEL CALLA0FIEE MICRO CONTROLADOR ATMEGA8

    VOLTIMETRO DIGITAL CON PROCESADOR ATMEGA8Descripcin del proyecto a continuacin:Hay seis grandes bloques en el dispositivo:

    El selector de gama potencimetro RMS a DC no se realiza el voltaje se toma de una fuente fija de

    5V ADC de 10 bits configuracin y control por software unidad de microcontrolador (MCU), ATMEGA8 El teclado se remplaza por un potenciometro La pantalla LCD. LCD de 2x16

    El rango de seleccin de las escalas de la tensin de entrada a un valor conocido, bajoel control de la MCU-atmega8.Tambin NO incluye la proteccin de circuitos, para evitar daos en el resto delcircuito en caso de alta tensin que se debe aplicar con un bajo factor de escalaseleccionado.

    El rango de medida es de : 0 -6V

    El selector de entrada de tensin es un potencimetro el cual alimenta a laa la entrada del ADC. El ADC es 10-bits que incorpora el ATMEGA8El ADC del ATMEGA8 es configurado y controlado por software y que tiene quedarse formato de los datos requeridos, la conversin y el almacenamiento de datosAdems, se implementa la interfaz de usuario a travs de un LCD alfanumrico de16x2

    CIRCUITO EXPERIMENTAL

  • UNIVERSIDAD NACIONAL DEL CALLA0FIEE MICRO CONTROLADOR ATMEGA8

    DESARROLLO DEL PROGRAMA/** voltimt1.c* DESARROLLO DE VOLTIMETRO DE 0 -5V* Created: 13/02/2013 07:37:10* Author: JACOB ASTOCONDOR VILLAR*/

    #include "avr_compiler.h"#include "lcd.h"void adc_setup(void);unsigned int adc_read(char channel);int main(void){

    char cadena[14],cadena2[14];int n,vol1,vol2;float vol;lcd_init();adc_setup();lcd_gotorc(1,1);lcd_puts("ADC:");lcd_gotorc(2,1);lcd_puts("voltaje:");

    while(1){

    n=adc_read(0);vol=n*5.0/1023;vol1=vol;vol2=(vol-vol1)*100;sprintf(cadena,"%0004u",n);lcd_gotorc(1,11);lcd_puts(cadena);sprintf(cadena2 ,"%d.%02d v.",vol1,vol2);lcd_gotorc(2,11);lcd_puts(cadena2);

    }}void adc_setup(void){

    ADMUX=0X40;ADCSRA=0X86;

    }unsigned int adc_read(char channel){

    ADMUX&=0XF8;ADMUX|=channel;ADCSRA|=(1


Top Related