Está en la página 1de 2

"PROGRAMA PARA EL PIC16F877A QUE CONTROLA EL ENCENDIDO Y APAGADO DE UN VENTILADO R" //-----------------------------------------------------------------------------//----------------CONTROL DE TEMPERATURA (ON - OFF)----------------------------//-----------------------------------------------------------------------------#include <16f877A.

h> #device adc=8 #include <MATH.H> #use delay(clock=20MHz) #include <LCD.c> void main() { // VARIABLES A USAR int8 temp1; float temp; lcd_init(); //INICIALIZA EL LCD lcd_gotoxy(1,1); //COLOCA EL CURSOR EN COLUMNA 1 FILA 1 lcd_putc("ON - OFF VENTILADOR"); //IMPRIME EN PANTALLA delay_ms(5000); //ESPERA 5 SEGUNDOS lcd_putc("\f"); //LIMPIA PANTALLA while(1) { setup_adc(ADC_CLOCK_INTERNAL); Setup_adc_ports(RA0_ANALOG); //PONE PUERTO RA0 ANALOGO set_adc_channel(0); // INDICA EL PIN A LEER RA0 delay_us(20); temp1=read_adc(); //LEE EL VALOR DEL PIN temp=(temp1*0.01960784314*100); //CONVIERTE EL VALOR LEIDO DE HEXA A L REAL el numero 0.01960784314 viene de dividir (5/255) y el resultado se multip lica por 100 para alcanzar 150 grados lcd_gotoxy(1,1); //COLOCA EL CURSOR EN COLUMNA 1 FILA 1 lcd_putc("TEMPERATURA ACTUAL"); //IMPRIME EN PANTALLA lcd_gotoxy(1,2); 2 printf(lcd_putc," T= %2.2f C",temp); //MUESTRA EN EL LCD EL VALOR DE TEMP ERATURA delay_ms (1); if(temp>=28){ output_high(pin_b0); A 28C MANDA UN 1 AL PIN BO } else{ output_low(pin_b0); B0 } }//fin while //COLOCA EL CURSOR EN COLUMNA 4 FILA //PIC A USAR //Usa resolucin de 8 bits //PARA OPERACIONES MATEMATICAS //CRISTAL A UTILIZAR //CONTROLADOR DEL LCD

//SI LA TEMPERATURA ES MAYOR O IGUAL

//DE LO CONTRARIO MANDA UN 0 AL PIN

}//fin main

También podría gustarte