Minggu, 31 Januari 2016

Pengembangan AVR secara GUI di BlankOn dengan Eclipse dan Usbasp

Ada yang tau apa itu AVR?



Hah! Kalian ngak tau AVR!?




Baiklah kalau begitu. Profesor akan menjelaskannya.

AVR adalah salah satu dari pada seri keluarga Mikrokotroler yang diproduksi oleh Atmel, bersama dengan AVR32 dan ARM. AVR sendiri adalah sebuah CPU yang mentenagai Mikrokontroler tersebut. AVR memiliki arsitektur Harvard, yaitu memisahkan jalur antara bus data dan program beserta dengan penyimpanannnya. AVR memiliki lebar data 8-bit dan panjang instruksi 16-bit. AVR sendiri memiliki beberapa seri seperti ATTiny, AT90, dan ATMega. Singkatan asli dari AVR sendiri sebenarnya masih diperdebatkan hingga saat ini, jadi saya tidak akan memberitahukannya. Untuk lebih jelas, silahkan hubungi Master Wikipedia.

ATMega8, salah satu Mikrokontroler yang sering saya gunakan. Murah dengan fitur yang cukup mumpuni dan sangat mudah didapatkan di pasaran. Khususnya untuk di daerah saya, Bandung.

Dan sekarang, kalian tahu apa itu USBASP?

Bagi yang tahu, mari kita dengarkan penjelasan profesor.


 USBASP adalah sebuah USB in-circuit programming yang dikembangkan oleh tuan Thomas Fischl dengan menggunakan pustaka virtual USB (vusb), yaitu sebuah pustaka yang mampu membuat chip mikrokontroler Atmel AVR menjadi sebuah chip USB yang dapat berfungsi sebagai host maupun client tanpa melalui perantara chip driver apapun. USBASP sukup terkenal dalam dunia programming AVR karena menggunakan port USB sehingga bisa dijalankan di komputer manapun dan juga karena perangkat ini sangat mudah untuk dirakit bahkan oleh mereka yang baru belajar tentang AVR. Dan tentu saja dengan merakit sendiri kita bisa menghemat biaya. Untuk informasi lebih lanjut silahkan kunjungi web paman Fischl.

USBASP yang saya rakit sendiri.

Baiklah, sekiranya seperti itu saja penjelasan dari Profesor. Langsung saja kita masuk ke pembahasan utama.

Mungkin sudah banyak blog atau web yang menjelaskan tentang memulai pemrograman AVR. Jadi mungkin beberapa dari kalian sudah mengetahuinya. Jadi saya hanya akan menambahkannya saja.

Kalian pernah merasa lelah mengetik perintah seperti ini:

$ avr-gcc -g - Os -mmcu=atmega16 -c main.c
$ avr-gcc -g -Os -mmcu= atmega16 -o main.elf main.o
$ avr-objdump -h -S main.elf>main.lst
$ avr-objcopy -j .data -j .text -O ihex main.elf main.hex
$ sudo avrdude -c usbasp -p m8 -P usb -U flash:write:main.hex:i

Ya, saya termasuk salah satunya. Apalagi kalau sudah terdapat error.



SAYA BENAR-BENAR INGIN MENANGIS!!!!




Bagi kalian yang merasa lelah, beruntunglah karena sudah terdapat IDE yang bisa digunakan untuk membantu mengembangkan program AVR. Beberapa diantaranya adalah Eclipse dan CodeBlocks.

Khusus untuk pembahasan kali ini, kita akan "membedah" si Eclipse ini. Bagi kalian yang belum memasang Eclipse di destop atau laptop kalian, silahkan kunjungi:


Bagi kalian yang sudah menggunakan CodeBlocks mungkin tidak akan kesulitan karena CodeBlocks sudah memiliki plugin bawaan untuk mengembangkan AVR. Tetapi, secara default Eclipse tidak memiliki plugin ini, jadi kita akan memasangnya secara manual.


 Bagi kalian yang ingin tahu bagaimana cara memasang plugin yang dibutuhkan oleh si Eclipse ini, silahkan ikuti langkah di bawah ini:




1. Buka terminal. Pasang toolchain yang dibutuhkan dengan perintah:

$ sudo apt-get install avrdude binutils-avr gcc-avr avr-libc gdb-avr

2. Buka Eclipse kalian. Klik menu "Help", kemudian klik "Install New Software".

3. Setelah sebuah dialog dengan nama "Install" terbuka, carilah sebuah textbox dengan label "Work with". Kemudian isi textbox tersebut dengan http://avr-eclipse.sourceforge.net/updatesite/


4. Pilih "AVR Eclipse Plugin". Kemudian klik "Next". Kemudian klik "Next" lagi. Pilih "I accept the terms of the license agreement". Lalu klik "Finish". Setelah instalasi selesai pilih "Restart".



  


5. Waktunya konfigurasi USBASP. Ketik perintah berikut di terminal.

$ sudo gedit /etc/udev/rules.d/99-USBasp.rules

Setelah gedit terbuka, masukkan kode berikut ini:

 SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", GROUP="dialout", MODE="0666"

Setelah itu simpan. Lalu lakukan restart udev service dengan perintah:

$ sudo udevadm control --reload-rules

Kode diatas berguna agar USBASP bisa berjalan dalam mode root sehingga Eclipse dapat mengunggah program ke chip target secara langsung.


6. Buka kembali Eclipse kalian. Lalu klik menu "Window" lalu "Prefences". Kemudian expand menu "AVR" lalu pilih "AVRDude". Setelah itu klik "Add".






7. Setelah muncul jendela baru, isi configuration name sesuka kalian. Kemudian cari programmer hardware lalu scroll ke bawah untuk mencari USBasp. Kemudian isi  overide default port (-P) dengan "usb" dan klik "OK".


8. Kemudian pilih nama konfigurasi yang kalian buat tadi. Lalu klik "Apply" dan "OK".


Sekarang kalian telah siap untuk mengembangkan program AVR dengan hanya menggunakan satu tool, yaitu Eclipse. Sekarang tidak ada lagi yang namanya buka terminal kemudian ketik perintah - perintah rumit yang membuat jari pegal linu.


Segera tancapkan USBASP kalian lalu mulailah membuat program. 



Sekian saja dulu post dari saya. Sampai jumpa lagi post selanjutnya.




Salam Domba

Tidak ada komentar:

Posting Komentar