pic16f877 ile termometre yapımı

kaciqq_18

Üye
Katılım
12 Ara 2012
Mesajlar
1
Puanları
1
Yaş
34
Proteus ta lcd de görüntü alıyorum fakat sensör olarak kullandığım Lm35 in değerini değiştirdiğimde lcd deki 501.1 derece değişmiyor.Yardımcı olabilir misiniz

Termometre kodları

#include <16f877.h>


#device ADC=10
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
#use delay (clock=4000000)
#use fast_io(a)
#define use_portb_lcd TRUE
#include <lcd.c>
unsigned long int bilgi;
float voltaj, sicaklik;
void main ( )
{
setup_psp (PSP_DISABLED) ;
setup_spi(SPI_SS_DISABLED);
setup_timer_1(T1_DISABLED) ;
setup_timer_2(T2_DISABLED,0,1) ;
setup_CCP1(CCP_OFF) ;
setup_CCP2(CCP_OFF) ;
set_tris_a(0x01);
setup_adc(adc_clock_div_32);
setup_adc_ports(AN0);
lcd_init();
set_adc_channel(0);
delay_us(20);
printf(lcd_putc,"\fSicaklik=");
while(1)
{
bilgi=read_adc();
voltaj=(0.0048828125*bilgi) *1000;
sicaklik= (voltaj/10) +2;
lcd_gotoxy(10,1);
printf(lcd_putc,"%5.1f'C",sicaklik);
delay_ms(100);
}
}
 
ccs c den pek anlamam ama program akışın doğru. devreni kontrol et ADC yi okuduğun bacağı kontrol et yazılım olarak mantığın doğru devrenin çalışması gerekir.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…