Bueno y aca lo dejo con el resto de las correcciones.
Ponele atencin a lo que te dice el amigo javisus que tiene mucha razon.
por cierto las sondas en proteus las podes simular con potenciometros que te vallan aciendo variar los valores de tencion a las entradas analogicas (no es lo mismo ,pero es un buen recurso para simular9
saludos juan
#include "16f876.h"
#define use_portb_lcd TRUE
#use delay(clock=4000000)
#include "lcd.c"
#fuses NOLVP,XT,NOWDT,NOPROTECT,PUT
#use fast_io(A)
#use fast_io(B)
#use fast_io(C)
//#BYTE PORTA=5
//#byte_port_b=6
//#byte_port_c=7
//#device adc=8
void main(void){
int temp1,temp2,temp3,temp4;
const int tmp=50;
set_tris_a(0xFF) ; //todos como entrada sondas de temperatura y vref
set_tris_b(0x00); //todos como salida datos lcd
set_tris_c(0x00) ; // pines de control lcd salida todos
setup_adc_ports(all_analog);
setup_adc(ADC_CLOCK_INTERNAL);
while(true){
set_adc_channel(0);
temp1=read_adc();
temp1=(temp1/10)-tmp;
set_adc_channel(1);
temp2=read_adc();
temp2=(temp2/10)-tmp;
set_adc_channel(2);
temp3=read_adc();
temp3=(temp3/10)-tmp;
set_adc_channel(3);
temp4=read_adc();
temp4=(temp4/10)-tmp;
lcd_init();
lcd_gotoxy(0,1); //me posiciono en la linea 1 en el primer caracter
printf(lcd_putc,"T1= %d1 ºC",temp1); //Escribo temperatura del sensor1
delay_ms(500);
lcd_gotoxy(8,1); //me posiciono en la linea 1 , en el octavo caracter
printf(lcd_putc,"T2= %d1 ºC",temp2); //Escribo temperatura del sensor2
delay_ms(500);
lcd_gotoxy(0,2); //me posiciono en la linea 2, en el primer caracter
printf(lcd_putc,"T3= %d1 ºC",temp3); //Escribo temperatura sensor3
delay_ms(500);
lcd_gotoxy(8,2); //me posiciono en la segunda linea , octavo caracter
printf(lcd_putc,"T4= %d1 ºC",temp4); //Escribo temperatura del sensor4
delay_ms(500);
}
}
PD:yo no e probado tu programa por lo que es posible que aun existan algunas fallas pero bueno cuando lo prueves nos cuentas.
PD2: simulalo en proteus como te indico seguro ahorraras tiempo,y si lo montas directamente presta mucha atencion a lo dicho por JavisusII un saludo