como puedo compilar este programa que esta en c xfa diganme

es QUE ya le e buscado y no lo puedo compilar y me urge poR QUE es para un trabajo aQUi lEs dEjo el programa espero QUE mE ayuden para simularlo y cargarlo al pic


#include "16f877.h"

#device adc=10 //Usa resolución de 10 bits.
#use delay(clock=4000000)
#fuses xt,nowdt,noput,nobrownout,nolvp,noprotect

#include "lcd.c" //libreria q maneja la lcd 2x16
#use standard_io (D)

void main (void)
{
float A,B,C,DD,D,medicion,medi,TCJ;
// set_tris_b (0x00);

lcd_init(); //Inicia LCD
lcd_putc(" Termometro\n"); //Saca texto
lcd_putc(" Digital"); //Saca texto
delay_ms(1000);
lcd_putc("\f"); //Limpia pantalla

lcd_putc("Temperatura\n"); //Saca texto
lcd_putc("actual"); //Saca texto
delay_ms(1000);
lcd_putc("\f"); //Limpia pantalla

lcd_gotoxy(11,2); //Acomoda cursor LCD
lcd_putc("T4=");

lcd_gotoxy(11,1);
lcd_putc("T2=");

lcd_gotoxy(1,2); //Acomoda cursor LCD
lcd_putc("T3=");

lcd_gotoxy(1,1);
lcd_putc("T1=");

while (1)
{

setup_adc (adc_clock_div_32);

//Elige terminales análogicas
//RA0,RA1,RA2 y RA4 miden, RA3 es Vref (5V)
setup_adc_ports (all_analog);

set_adc_channel (0); //Elige canal a medir RA0
delay_us (20);
medicion=read_adc (); //Hace conversión AD

set_adc_channel (1); //Elige canal a medir RA1
delay_us (20);
DD=read_adc (); //Hace la conversion AD

set_adc_channel (2); //Elige canal a medir RA2
delay_us (20);
TCJ=read_adc (); //Hace la conversion AD

set_adc_channel (4); //Elige canal a medir RA4
delay_us (20);
medi=read_adc (); //Hace la conversion AD

setup_adc (adc_off); //Apaga ADC


A=(medi*(0.48875)); //Pasa binario a °C
B=(medicion*(0.48875));// EL NUMERO (0.48875) viene de dividir (5/1023) y el resultado
C=(TCJ*(0.48875)); // multiplicarlo por 100.el numero 5 sale del voltaje aplicado a Vref,
D=(DD*(0.48875)); //y el numero 1023 sale de los 10 bit q estamos utilizando del ADC del PIC.

lcd_gotoxy(14,2);
lcd_putc(" ");
printf(lcd_putc,"%02.1f",A); //xxx.x °C
delay_ms (1);

lcd_gotoxy(4,1);
lcd_putc(" ");
printf(lcd_putc,"%02.1f",B); //xxx.x °C
delay_ms (1);

lcd_gotoxy(4,2);
lcd_putc(" ");
printf(lcd_putc,"%02.1f",C); //xxx.x °C
delay_ms (1);

lcd_gotoxy(14,1);
lcd_putc(" ");
printf(lcd_putc,"%02.1f",D); //xxx.x °C
delay_ms (1);
}
}
 
Última edición por un moderador:
Atrás
Arriba