RSS

Tag Archives: negative themperature

PENGUKURAN NEGATIVE THEMPERATURE (MINUS) MENGGUNAKAN LM35 DENGAN CODEVISION AVR

Menurut datasheet, LM35 dapat mengukur dengan range -55° sampai 150°C dengan akurasi 0,5°C. Untuk lebih jelasnya dapat dibaca pada datasheet. Untuk mendapatkan datasheet LM35 silakan download disini. Aplikasi ini pun telah saya simulasikan menggunakan software proteus, dan mempunyai hasil yang sangat presisi untuk pembacaannya. Dibawah ini adalah schematic rangkaiannya:

Sedangkan untuk listing program lengkapnya adalah sebagai berikut, pada akhir postingan ini saya juga menyertakan file program dalam codevision AVR serta file simulasi proteus.

#include <mega16.h>
#include <lcd.h>
#include <delay.h>
#include <stdlib.h>

int data1, data2;
float suhu_minus;
char temp[8];

// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x15 ;PORTC
#endasm

#define ADC_VREF_TYPE 0x40

// Read the AD conversion result
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}

void ambil_dataADC()
{
data1=read_adc(0);
data2=read_adc(1);
}

void hitung_suhu_minus()
{
suhu_minus=(float)(data1-data2)/2;//rumus mencari suhu minus
}

void tampil_LDC()
{
lcd_gotoxy(0,0);
lcd_putsf(“ElectrO-cOntrOl”);

ftoa(suhu_minus,1,temp);//float to array
lcd_gotoxy(0,1);  
lcd_puts(temp);

lcd_gotoxy(5,1);
lcd_putchar(0xdf);//menampilkan karakter derajat
lcd_putsf(“C”);
}

void main(void)
{

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC Clock frequency: 750.000 kHz
// ADC Voltage Reference: AVCC pin
// ADC Auto Trigger Source: None
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x84;

// LCD module initialization
lcd_init(16);

while (1)
      {
      ambil_dataADC();
      hitung_suhu_minus();
      tampil_LDC();
      delay_ms(500);
      };
}

Untuk mendapatkan file program dalam bentuk CodeVision AVR dan file simulasi proteus untuk aplikasi pengukuran temperatur negatif silakan download link dibawah ini.

File program CodeVision AVR dan file simulasi Proteus

Semoga bermanfaat…

 
3 Comments

Posted by on June 2, 2011 in AVR Projects

 

Tags: , , ,