• Tidak ada hasil yang ditemukan

PENGUJIAN ALAT DAN ANALISA RANGKAIAN

4.3. Pengujian LCD Interfacing LCD 2x16

Berdasarkan tabel 4.1. sesuai dengan titik pengukuran dihasilkan tegangan yang masuk sesuai dengan inputan awal dari regulator, sehingga tegangan keluaran sesuai dengan yang diharapkan, sedangkan pada kondisi low tegangan menjadi 0 pada kondisi jarak maksimal 500 cm sensor tidak merespon.

4.3. Pengujian LCD Interfacing LCD 2x16

Bagian ini hanya terdiri dari sebuah LCD dot matriks 2 x 16 karakter yang berfungsi sebagai tampilan hasil pengukuran dan tampilan dari beberapa keterangan. LCD dihubungkan langsung ke Port 0 dari mikrokontroler yang berfungsi mengirimkan data hasil pengolahan untuk ditampilkan dalam bentuk alfabet dan numerik pada LCD.

Display karakter pada LCD diatur oleh pin EN, RS dan RW: Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa anda sedang mengirimkan sebuah data. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low “0” dan set ( high ) pada dua jalur kontrol yang lain RS dan RW. Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika high ”1”, maka program akan melakukan pembacaan memori dari LCD. Sedangkan pada aplikasi umum pin RW selalu diberi logika low ( 0 )

JARAK

Berdasarkan keterangan di atas maka kita sudah dapat membuat progam untuk menampilkan karaker pada display LCD. Adapun program yang diisikan ke mikrokontroller untuk menampilkan karakter pada display LCD adalah sebagai berikut:

Use an 2 x 16 alphanumeric LCD connected to PortB:

******************************************************************

**/

#include <mega8535.h>

// Alphanumeric LCD Module functions

#include <alcd.h>

ICR1H=0x00;

Program ini telah berjalan dengan baik dan sesuai dengan kebutuhan pada perancangan. Program di atas akan menampilkan kata “FISIKA” di baris pertama pada display LCD 2x16.

4.4. Pengujian Sensor LM35

Untuk mengukur dan mengontrol suhu , digunakan LM35 yang merupakan Perubahan tegangan yang dihasilkan sensor merupakan input bagi ADC yang akan

diubah menjadi data digital. Proses pengubahan tegangan input dari sensor menjadi data digital, dilakukan dengan cara yang sama seperti yang telah dijelaskan sebelumnya.

Pengujian pada bagian rangkaian ADC ini dapat dilakukan dengan menghubungkan rangkaian ADC yang built-in dengan mikrokontroler. Selanjutnya rangkaian mikrokontroler dihubungkan dengan LCD. Mikrokontroler diisi dengan program untuk membaca nilai yang ada pada rangkaian ADC, kemudian hasil pembacaannya ditampilkan pada display LCD.

Pada rangkaian,Input ADC dihubungkan ke PortA.0 dari mikrokontroler.

Programnya adalah sebagai berikut :

#include <mega8535.h>

#include <delay.h>

#include <stdio.h>

// Alphanumeric LCD functions

#include <alcd.h>

#define ADC_VREF_TYPE 0x40 int temp;

char buf[33];

// 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;

}

// Declare your global variables here

void main(void) {

// Declare your local variables here

// Input/Output Ports initialization // Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=1

PORTB=0x01;

DDRB=0x01;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T

State0=T

PORTC=0x00;

DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTD=0x00;

DDRD=0x00;

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=0x00;

TCNT0=0x00;

OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon.

// OC1B output: Discon.

// Noise Canceler: Off

// Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off

// Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00;

// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00;

TCCR2=0x00;

TCNT2=0x00;

OCR2=0x00;

// External Interrupt(s) initialization // INT0: Off

// INT1: Off // INT2: Off MCUCR=0x00;

MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;

// USART initialization // USART disabled UCSRB=0x00;

// Analog Comparator initialization // Analog Comparator: Off

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

SFIOR=0x00;

// ADC initialization

// ADC Clock frequency: 125,000 kHz // ADC Voltage Reference: AVCC pin // ADC Auto Trigger Source: Free Running ADMUX=ADC_VREF_TYPE & 0xff;

ADCSRA=0xA7;

SFIOR&=0x1F;

// SPI initialization // SPI disabled SPCR=0x00;

// TWI initialization // TWI disabled TWCR=0x00;

// Alphanumeric LCD initialization // Connections are specified in the

// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:

// RS - PORTD Bit 0

Program diatas akan membuat menerima data yang dikirimkan melalui PA.0 dan manampilkannya melalui LCD yang terhubung ke PORTC uC ATMega8535.

Dengan program di atas, maka akan tampil nilai temperatur yang dideteksi oleh sensor temperatur. Dengan demikian maka rangkaian ini telah berfungsi dengan baik.

Pada tabel 4.2 berikut akan ditampilkan data yang di-output-kan oleh Mikrokontroller untuk variasi suhu yang terukur yang diterima sensor, yang dihitung dengan cara yang sama seperti di atas.

Dokumen terkait