Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

Lm 35 ile eksi deger okuma

Başlatan sifirzero, 02 Aralık 2016, 16:52:40

sifirzero

Merhaba arkadaşlar serdar hocanin lm35 devresi var. Onu eksi deger okuyabilirmiyiz
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

vitruvius


sifirzero

Ustam saolasın ccs c de kodları varmı mantığini anladım
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

vitruvius

Daha ne kadar hazıra konulabilir diyordum içimden ilk mesajda cevabı gecikmedi :)

Mantığını anladıysan kodunu da yazarsın.


sifirzero

Ustam ccs c de yazarsam kodları paylaşayım
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

sifirzero

sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

sifirzero

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);
   }
}
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

sifirzero

sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

sifirzero

@vitruvius  ustam sitemde paylaştım bakabilirisin
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir