Merhaba arkadaşlar serdar hocanin lm35 devresi var. Onu eksi deger okuyabilirmiyiz
Datasheet'i okudun mu?
Nette araştırdın mı?
https://www.picproje.org/index.php?topic=58716.0 (https://www.picproje.org/index.php?topic=58716.0)
Ustam saolasın ccs c de kodları varmı mantığini anladım
Daha ne kadar hazıra konulabilir diyordum içimden ilk mesajda cevabı gecikmedi :)
Mantığını anladıysan kodunu da yazarsın.
Hazır kodda varmış.
https://ozcanfatih.wordpress.com/2013/02/13/lm35-ile-negatif-sicaklik-olcumu/
Ustam ccs c de yazarsam kodları paylaşayım
Çok saolasınız arkadaşlar
arkadaşlar ccs c ile eksi değer okuma uzun uğraşlar sonrası yazabildim.lm35 in datasheetteki eksi değer okuma devresine göre yaptım.isteyen arkadaşlar alabilir.kendi sitemde genel çaplı paylaşım yapacam.ama ilk önce forumda paylaşmak istedim.
#include <16f877a.h>
#device ADC=10
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
#use delay (clock=4000000)
#use fast_io(e)
#define use_portb_lcd TRUE
#include <lcd.c>
unsigned long int bilgi;
float voltaj,volta,sonuc;
void main ( )
{
setup_psp(PSP_DISABLED);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_CCP1(CCP_OFF);
setup_CCP2(CCP_OFF);
set_tris_a(0xFF);
setup_adc(adc_clock_div_32);
setup_adc_ports(ALL_ANALOG);
enable_interrupts(INT_AD);
enable_interrupts(GLOBAL);
lcd_init();
while(true)
{
set_adc_channel(0);
delay_us(20);
bilgi=read_adc();
voltaj=0.0048828125*bilgi*100;
set_adc_channel(1);
delay_us(20);
bilgi=read_adc();
volta=0.0048828125*bilgi*100;
sonuc=voltaj-volta;
printf(lcd_putc,"\nDerece=%f C",sonuc);
delay_ms(1000);
}
}
@vitruvius @kantirici ustalarım bakın istersen
@vitruvius ustam sitemde paylaştım bakabilirisin