Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

20
87 BAB 5 MENGENAL WINAVR TM Robot tanpa program pengendali sulit untuk berjalan secara otomatis. Kontroler sebagai tempat program pengendali biasa digunakan adalah mikrokontroler. Pada Bab 5 ini dijelaskan tentang penggunaan program WinAVR untuk menuliskan kode program mikrokontroler jenis keluarga AVR dalam bahasa C. Setelah mempelajari Bab ini diharapkan mahasiswa memiliki enam kompetensi, yaitu: (1) mengidentifikasi proses instalasi WinAVR; (2) mengidentifikasi pembuatan makefile; (3) meng- identifikasi pemrograman sederhana pada WinAVR; (4) meng- identifikasi teknik compile pada WinAVR; (5) mendefinisikan keberhasilan compile sebuah program sederhana; (6) meng- identifikasi hasil simulasi pemrograman sederhana. Peta pembelajaran pada Bab 5 ini sebagai berikut. Gambar 5.1 Peta Pembelajaran Bab 5

description

Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

Transcript of Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

Page 1: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

87

BAB 5

MENGENAL WINAVRTM

Robot tanpa program pengendali sulit untuk berjalan secara

otomatis. Kontroler sebagai tempat program pengendali biasa

digunakan adalah mikrokontroler. Pada Bab 5 ini dijelaskan

tentang penggunaan program WinAVR untuk menuliskan kode

program mikrokontroler jenis keluarga AVR dalam bahasa C.

Setelah mempelajari Bab ini diharapkan mahasiswa memiliki

enam kompetensi, yaitu: (1) mengidentifikasi proses instalasi

WinAVR; (2) mengidentifikasi pembuatan makefile; (3) meng-

identifikasi pemrograman sederhana pada WinAVR; (4) meng-

identifikasi teknik compile pada WinAVR; (5) mendefinisikan

keberhasilan compile sebuah program sederhana; (6) meng-

identifikasi hasil simulasi pemrograman sederhana.

Peta pembelajaran pada Bab 5 ini sebagai berikut.

Gambar 5.1 Peta Pembelajaran Bab 5

Page 2: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

88 ROBOT BERKAMERA

5.1 Pengantar

inAVRTM

merupakan software GUI (Graphic User

Interface) open source untuk pengembangan berbagai

macam pemrograman mikrokontroler keluarga jenis

AVR pada Windows. Di dalam WINAVR sudah mencakup

GNU GCC sebagai compiler untuk C dan C++. Program

WinAVR diunduh di http://sourceforge.net/projects/winavr/files/.

WinAVR digunakan Robot Berkamera untuk menulis kode

program bahasa C yang sesuai dengan mikrokontroler AVR [6].

5.2 Proses Instalasi WinAVR

alam pembahasan ini, digunakan versi WinAVR 2007.

Bila dibandingkan dengan WinAVR terbaru, WinAVR

2007 tidak memiliki perbedaan yang mendasar dengan

WinAVR terbaru. Jika belum memiliki WinAVR, ada baiknya

mengunduh versi terbaru. Mengenai proses instalasi dan

penggunaan sama persis yang dijelaskan pada buku ini. Langkah

pertama yang kebanyakan orang sudah bisa melakukannya adalah

instalasi program WinAVR. jalankan aplikasi WinAVR-

20070525-install atau nama file instalasi WinAVR yang sudah

diunduh tadi, maka akan muncul tampilan seperti Gambar 5.2.

W

D

Gambar 5.2 Tampilan Saat Awal Instalasi

Page 3: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 89

Pilih bahasa untuk proses instalasi, lalu klik “OK”, lalu muncul

seperti tampak pada Gambar 5.3 dan klik “Next”.

Kemudian muncul seperti pada Gambar 5.4, klik “I Agree”.

Gambar 5.3 Tampilan “Welcome Setup Wizard”

Gambar 5.4 Tampilan “License Agreement”

Page 4: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

90 ROBOT BERKAMERA

Pilih direktori tempat meletakkan program WinAVR

(Gambar 5.5). Bila tempat peletakkan program WinAVR sesuai

default bisa langsung klik “Next”.

Lalu muncul seperti nampak pada Gambar 5.6, klik “Install”.

Gambar 5.5 Tampilan “Install Location”

Gambar 5.6 Tampilan “Select Component”

Page 5: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 91

Gambar 5.8 Tampilan “Completing Setup Wizard”

Tunggu proses instalasi seperti pada Gambar 5.7.

Proses intalasi selesai, klik “Finish” untuk menutup proses

instalasi (Gambar 5.8).

Gambar 5.7 Tampilan Proses Instalasi

Page 6: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

92 ROBOT BERKAMERA

Sampai di sini proses instalasi WinAVR sudah selesai.

Selanjutnya untuk memudahkan pembahasan maka dibuat sebuah

folder yang sama agar tidak membingungkan pada pembahasan

selanjutnya.

Buatlah working folder dengan langkah seperti pada Gambar 5.9

dan Gambar 5.10 untuk mengelompokan data AVR.

Gambar 5.9 Membuat Working Folder

Gambar 5.10 Working Folder dengan Nama AVR Doc

Page 7: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 93

5.3 Pembuatan Makefile

ebelum memulai membuat kode program berbasis C, harus

dilakukan dulu pengaturan untuk memberitahu compiler

WinAVR jenis IC AVR apa yang digunakan, dan nama

file program apa yang dibuat. Pengaturan ini dilakukan dengan

membuat file dengan nama makefile. Semua pengaturan ada di

file tersebut.

Pada “START menu”, pilih “MFile”, seperti terlihat pada

Gambar 5.11.

Pada toolbar MFile, klik “Makefile”, pilih “Main file name”

seperti pada Gambar 5.12.

S

Gambar 5.11 Menjalankan MFile

Page 8: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

94 ROBOT BERKAMERA

Pada Gambar 5.13 dapat dilihat dimasukkan “coba” dikarenakan

nama file dari kode program C diberi nama coba.c. Jadi kalau

lain kali menulis kode program C dan file diberi nama hendi.c

maka harus memasukkan “hendi” saja pada bagian Main File.

Pilihlah jenis AVR yang digunakan, dengan klik “Makefile” pada

toolbar, pilih MCU type – ATMega, lalu terdapat banyak macam

AVR yang tersedia. Pada desain Robot Berkamera ini, digunakan

AVR jenis ATMega32, maka harus dipilih jenis AVR tersebut.

Perhatikan Gambar 5.14.

Gambar 5.12 Mengisi Main File Name

Gambar 5.13 Mengisikan Nama File Kode Program

Page 9: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 95

Simpan pengaturan MFile dengan cara klik “File” pada toolbar,

lalu klik “Save As” (Gambar 5.15).

Gambar 5.14 Pilih Jenis AVR yang Digunakan

Gambar 5.15 Simpan MFile

Page 10: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

96 ROBOT BERKAMERA

Ubah direktori penyimpanan ke direktori working folder yang

tadi dibuat dengan nama AVR Doc (Gambar 5.16), lalu klik

“Save”.

5.4 Programmers Notepad

utup program mfile, kemudian pada “START menu”,

pilih “Programmers Notepad [WinAVR]” (Gambar 5.17).

Program “Programmers Notepad” digunakan untuk

menulis kode program bahasa C, dan melakukan compiling kode

bahasa C tersebut.

Maka muncul pertama kali working window <new>, yang secara

default muncul saat pertama kali program ini dijalankan.

Tutuplah working window ini untuk memulai membuat file

berekstensi C. Lakukan seperti terlihat pada Gambar 5.18.

Setelah itu muncul kembali working window dengan nama

<new>, lalu klik “File” – “Save As” (Gambar 5.19).

Karena pada pengaturan Makefile untuk “main filename” telah

diisi dengan kata coba, maka file ini harus disimpan dengan nama

coba.c. Perhatikan Gambar 5.20.

T

Gambar 5.16 Simpan pada Direktori AVR Doc

Page 11: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 97

Gambar 5.18 New C File

Gambar 5.17 Menjalankan Programmers Notepad

Page 12: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

98 ROBOT BERKAMERA

Gambar 5.19 Pilih “Save As”

Gambar 5.20 Memberi Nama coba.c

Page 13: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 99

5.5 Proses Compile

etelah pengaturan selesai, kemudian menuliskan program

sederhana pada working window dengan nama file yang

telah dibuat (*kita lewati dulu proses penulisan kode

program karena penulisan kode program dibahas pada Bab

selanjutnya). Tahap selanjutnya adalah proses compiling, agar file

dengan format *.c bisa diubah ke file dengan format *.hex.

Caranya adalah klik “Tools” pada toolbar programmers notepad,

lalu klik “Make All” seperti nampak pada Gambar 5.21.

Saat proses compile sudah berhasil, maka terdapat writing

comment di bagian output:

Process Exit Code: 0.

Time taken: **:**.

Artinya tidak ada yang salah pada pengaturan dan program yang

sudah dibuat. Proses compile hanya dapat memberikan syntacs

error bukan logic error.

S

Gambar 5.21 Proses Compile

Page 14: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

100 ROBOT BERKAMERA

5.6 Pembuatan Program Sederhana

inAVR menggunakan bahasa C yang merupakan

High Level Language atau bahasa tingkat tinggi yang

lebih mudah dipahami manusia sehingga mudah

dibuat. Oleh karena itu, pada bagian ini dipelajari sebuah

program sederhana untuk menyalakan LED ketika saklar ditekan.

Sebelum program dibuat, perhatikan algoritma program

sederhana LED seperti terlihat pada Gambar 5.22.

Catatan:

PORT C dan PORT B adalah port yang digunakan pada

mikrokontroler AVR dan dapat diubah sesuai keinginan. Jika

switch ditekan, maka logic akan menjadi 0, karena terhubung ke

ground. Rangkaian saklar yang digunakan adalah rangkaian

saklar aktif low dan rangkaian LED aktif high.

W

Gambar 5.22 Algoritma Program Sederhana LED

Page 15: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 101

#include <avr/io.h> //library

#include <util/delay.h>

#define PORTLED PORTB

#define DDRLED DDRB

#define DDRSWITCH DDRC

#define PORTSWITCH PORTC

#define PINSWITCH PINC

int main (void)

{

DDRLED = 0xFF; //PORT B output

DDRSWITCH = 0x00; //PORT C input

PORTSWITCH = 0xFF; //pull up aktif

while(1)

{

if(bit_is_clear(PINC, 0))

{

PORTLED=0xFF;

_delay_ms(200);

}

else

{

PORTLED=0x00;

_delay_ms(200);

}

}

}

Pada Gambar 5.23 dapat dilihat penulisan kode program C pada

Programmers Notepad dan pada proses compile tidak terjadi

error satupun.

Jika program yang dibuat terdapat kesalahan, maka writing

comment dibagian output:

coba.c: In function 'main':

coba.c:23: error: expected ';' before '}' token

make.exe: *** [coba.o] Error 1

> Process Exit Code: 2

> Time Taken: 00:02

Page 16: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

102 ROBOT BERKAMERA

Berikut salah satu bentuk kesalahan / error. coba.c: In function 'main':

coba.c:23: error: expected ';' before '}' token

make.exe: *** [coba.o] Error 1

> Process Exit Code: 2

> Time Taken: 00:02

Gambar 5.23 Kode Program dan Proses Compile

Page 17: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 103

Gambar 5.24 Compile yang Tidak Berhasil

Artinya, pada function “main” saat compile baris ke 26 terdapat

error karena sebelum tidak adanya penutup “}”. Untuk

mengetahui posisi kesalahan yang dibuat, arahkan kursor ke

writing comment yang berwarna ungu lalu klik, maka pada

writing window kursor akan mengarahkan secara otomatis posisi

kesalahan. Seperti terlihat pada Gambar 5.24.

Setelah program dilakukan proses compile, maka file coba.hex

dapat disimulasikan pada Proteus 7.5.

Page 18: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

104 ROBOT BERKAMERA

5.7 Simulasi Program

roteus 7.5 adalah program simulasi rangkaian elektronika

yang dibuat oleh ISIS Lab Center Electronics. Tampilan

awal saat membuka program Proteus 7.5 dapat dilihat

pada Gambar 5.25.

Untuk memulai simulasi, ambil komponen yang diperlukan,

seperti IC ATMega32, push button, dan LED. Tekan tombol

PLAY untuk memulai simulasi dan tekan tombol STOP untuk

mengakhiri simulasi. Pada simulasi kali ini, digunakan IC

ATMega32. Executed program berekstensi *.hex perlu load ke

proteus untuk mengetahui hasil simulasi. Caranya, double click

IC ATMega32. Pada pilihan “Program File”, “Browse File” cari

coba.hex. Hasil simulasi dapat dilihat pada Gambar 5.26 dan

Gambar 5.27.

P

Gambar 5.25 Tampilan Awal Proteus-Isis Profesional

Page 19: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

MENGENAL WINAVR 105

5.8 Ringkasan Singkat

Program WinAVR merupakan program open source yang

digunakan untuk menuliskan kode program C dan untuk compile

menjadi file berekstensi *.hex. WinAVR hanya mampu

mendeteksi syntacs error dan bukan logic error. Untuk

Gambar 5.26 Switch Ditekan

Gambar 5.27 Switch Tidak Ditekan

Page 20: Cara Penggunaan WinAVR (Install, Cara Buat Program Baru, Progam Sederhana)

106 ROBOT BERKAMERA

mengetahui logic error (error yang terjadi ketika suatu kondisi

tidak sesuai yang diinginkan) dapat dipergunakan bantuan

program Proteus 7.5.

5.9 Pertanyaan

1. Sebutkan kegunaan dari software WinAVR pada

Robot Berkamera?

2. Sebutkan tujuan dari pembuatan file “makefile” sebelum

membuat kode program?

3. Sebutkan jenis ekstensi file kode program yang ditulis pada

WinAVR?

4. Bagaimana tampilan dari output ketika sebuah kode program

berhasil dilakukan compile?

5. Setelah berhasil dilakukan compile, file berekstensi apakah

yang dihasilkan?