suatu program atau bahasa pemrograman. Bahasa pemrograman yang digunakan dalam penelitian ini adalah bahasa C dan Visual Basic 6.0 VB 6.0.
a. Perangkat lunak pada mikrokontroler ATmega8535
Program yang digunakan pada mikrokontroler ATmega8535 adalah bahasa C menggunakan program Code Vision AVR C Compiler CVAVR. Software ini
memiliki berbagai fitur yang dapat membantu kita dalam membuat program yang akan didownload ke mikrokontroler ATmega8535 menggunakan downloader K-
125R. Program yang dibuat pada mikrokontroler ATMega8535 adalah sebuah program untuk membaca inputan ADC pada mikrokontroler dan komunikasi
serial USART antara mikrokontroler ATMega8535 dan komputer. Berikut adalah penjelasan program pada mikrokontroler ATmega8535.
include mega8535.h include stdio.h
include delay.h
include mega8535.h : Inisialisasi Mikrokontroller yang dipakai untuk
memanggil library mempersiapkan perintah-perintah yang dapat digunakan.
include stdio.h : memerintahkan preposesor untuk memanggil library stdio
ke dalam source code program yang dibuat, dalam hal ini diperlukan untuk aliran input output.
include delay.h : memanggil library delay, dimana terdapat fungsi-fungsi
delay atau tunda yang dapat kita gunakan, seperti delay_ms“konstanta” = tunda untuk milisecond.
Selanjutnya dilakukan inisialisasi ADC, proses inisialisasi ADC meliputi proses penentuan clock, tegangan referensi, format output dan mode pembacaan.
Register yang perlu diset nilainya adalah ADMUX ADC Multiplexer Selection Register, ADCSRA ADC Control and Status Register A dan atau SFIOR
Spesial Function IO Register. ADMUX merupakan register 8 bit yang berfungsi menentukan tegangan referensi ADC, format data Output dan saluran ADC yang
digunakan. ADCSRA merupakan register 8 bit yang berfungsi melakukan manajemen sinyal kontrol dan status dari ADC. Register SFIOR merupakan
register 8 bit pengatur sumber picu konversi ADC. Berikut adalah program inisialisasi ADC 8 bit:
ADMUX=ADC_VREF_TYPE 0xff; ADCSRA=0x84;
SFIOR=0xEF; unsigned char read_adcunsigned char adc_input
{ ADMUX=adc_input | ADC_VREF_TYPE 0xff;
Delay needed for the stabilization of the ADC input voltage delay_us10;
Start the AD conversion ADCSRA|=0x40;
Wait for the AD conversion to complete while ADCSRA 0x10==0;
ADCSRA|=0x10; return ADCH;
}
Selanjutnya dilakukan pendeklarasi konstanta atau variabel secara umum yaitu sebagai berikut :
void mainvoid {
Declare your local variables here int data;
Fungsi-fungsi yang digunakan harus dideklarasikan terlebih dahulu agar diketahui oleh kompiler. Begitu juga dengan pendeklarasian veriabel-variabel yang
digunakan. Setelah proses pendefinisian dan pendeklarasian selesai maka dapat
dituliskan program utamanya, adapun program utama dari mikrokontroler ini adalah sebagai berikut:
while 1 {
data=read_adc5 printfd,data;
delay_ms1000; };
}
Pada program tersebut terlebih dahulu mendefinisikan variabel data. Variabel data merupakan
nilai dari
pembacaan ADC5.
Pada bagian
program “printf“d”,data” akan menampilkan data desimal hasil konversi tegangan
keluaran sensor yang terbaca oleh port ADC5. Data ini selanjutkan akan dikirimkan ke komputer dengan komunikasi serial USART.
Untuk mengaktifkan port serial USART dilakukan inisialisasi pada beberapa register, yaitu UCSRA USART Control Status Register A, UCSRB USART
Control Status Register B, UCSRC USART Control Status Register C, UBRRH dan UBRRL USART Baud Rate Register. Pada program mengirim data serial,
Setelah mendeklarasi register, maka program akan menginisialisasi port serial mikrokontroler dan boudrate. Berikut adalah listing program inisialisasi USART:
USART initialization Communication Parameters: 8 Data, 1 Stop, No Parity
USART Receiver: Off USART Transmitter: On
USART Mode: Asynchronous USART Baud Rate: 9600
UCSRA=0x00; UCSRB=0x08;
UCSRC=0x86; UBRRH=0x00;
UBRRL=0x47;
Kemudian program akan masuk ke program utama. Di dalam program utama, mikrokontroler akan mengeluarkan data decimal hasil konversi ADC. Data
tersebut akan dikirimkan oleh mikrokontroler dengan menggunakan port serial dan akan diterima oleh komputer.
b. Perangkat lunak Visual Basic 6.0 pada komputer