APLIKASI PEMBACA SUHU LM35 DENGAN MENAMPILKAN LCD MENGGUNAKAN CODEVISION AVR
Nama : A.RACHIM
Kelas : 1 CD
Nim :
061530701208
Sebelum kita membuat rangkaian schematic seperti gambar diatas, ada beberapa langkah-langkah yang harus kita lakukan.
Berikut ini adalah Langkah kerjanya:
1.Buka program Proteus 8 Profesional
2. Pilih new >>New Project
3. Ganti nama Project seuai dengan keinginan
4. Pilih “create a schematic...” >> pilih Landscape A4 untuk mengatur ukuran kertas
5. Pilih “create a PCB layout...” >> pilih Default
6. Pilih “create firmware Project” Lalu klik Next , seperti gambar dibawah ini:
8. Maka akan muncul lembar kerja
9. Siapkan komponen seperti berikut ini :
10. Buat lah desain gambarnya seperti dibawah ini:
11.
Pertama siapkan terlebih dahulu komponennya seperti diatas. Cara untuk
menyisipkan atau mencari komponennya seperti gambar dibawah ini:
12. Atau kalau mau lebih cepat langsung klik ini :
13 Maka akan tampil gambar nya seperti dibawah ini :
14. Untuk mencari “POWER” sama “GROUND” klik seperti gambar dibawah ini :
15. Dan untuk mencari “DC VOLMETER” klik seperti gambar dibawah ini :
16. Untuk merotasi atau mengubah arah komponen. Bisa langsung klik kanan pada komponen>> “ rotate....”contoh seperti gambar dibawah ini:
17. Susun lah komponen nya seperti gambar dibawah ini:
18. Untuk menambahkan kabelnya klik icon ini atau langsung garis saja pada mouse seperti gambar dibawah ini:
19. Setelah diberi kabel gambar nya akan seperti berikut ini :
20. Untuk mengganti nilai
CAP ,
CAP-POL ,
CRYTAL perhatikan gambar dibawah ini :
a. Klik 2x kali pada komponen
CAP , lalu ganti pada kolom
Capacitance . Lalu ganti menjadi
22nF.
b. klik 2x pada komponen
CAP-POL , lalu ganti pada kolom
Capacitance . Lalu ganti menjadi
10uF.
c. klik 2x pada komponen
CRYSTAL , ganti pada kolom
Part Value lalu ganti menjadi
12MHz.
21. Desain gambar
APLIKASI PEMBACA SUHU LM35 DENGAN MENAMPILKAN LCD MENGGUNAKAN CODECISION AVR akan seperti dibawah ini :
dan masukkan codeAVR nya ke notepad >>save . ganti format notepad dari .txt menjadi .hex
Code AVRnya dibawah ini :
int SUHU;
char temp[8];
float suhu_celcius;
#include <mega16.h>
#include <stdlib.h>
#include <lcd.h>
#include <delay.h>
// Alphanumeric LCD Module function
#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 need 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;
retunr ADCW;
}
void main(void)
{
// Analog Comparator initialization
// Analog Comparator Input Capture by Timer/Counter 1:Off
ACSRA=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 initilazation
lcd_init(16);
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("ElectrO-cOntrOl");
lcd_gotoxy(0,1);
lcd_putsf("SENSOR SUHU LM35");
delay_ms(1000);
while(1)
{
lcd_clear( );
SUHU = read_adc(0);
suhu_celcius = (float)SUHU*500/1023;//rumus untuk mengubah kedalam derajat celcius
lcd_gotoxy(0,0);
lcd_putsf("ElectrO-cOntrOl");
ftoa(suhu_celcius, 1 ,temp);//mengubah tipe data float ke tipe data array yang akan ditampilkan
di LCD
lcd_gotoxy(0,1);
lcd_puts(temp);
lcd_gotoxy(5,1);
lcd_putchar(0xdf);//menampilkan karakter derajat
lcd_putsf("C");
delay_ms(500);
};
}
Setelah disave. lalu klik 2x pada komponen
Atmega16 , klik pada kolom
Program file cari dimana tempat kita simpan notepad code
AVR tadi . lalu oke.
tinggal jalankan simulasi dengan klik seperti yang ditunjukkan pada gambar dibawah ini :
terus akan muncul simulasi seperti gambar dibawah ini :
perbedaan DC Volmeter dengan Atmega16 adalah 0,2 Derajat Celcius.