Advertisement

Belajar Mikrokontroler AVR Tanpa Arduino

1 2.078

Jika seseorang pernah sebelumnya memprogram Arduino, maka secara tidak sadar ia telah menjadi seorang programmer mikrokontroler AVR. Hal ini dikarenakan Arduino ditenagai oleh mikrokontroler AVR. Kemudahan menggunakan Arduino, mulai dari rancangan hardware, boatloader hingga IDE nya membuat bahkan anak SD-pun bisa menggunakannya tanpa kesulitan banyak kesulitan.

Itulah mengapa Arduino cocok digunakan untuk pemula yang tidak memiliki latar belakang elektronika dan ingin belajar membuat project – project sederhana seperti bagaimana menyalakan LED, menggunakan sensor. Dan banyak project sederhana lainnya yang cocok untuk diperkenalkan ke anak – anak dan remaja.

Namun untuk yang memang ingin menekuni dunia teknologi elektronika embedded lebih lanjut dan secara serius. Belajar memprogram mikrokontroler berarti mempelajari bagaimana arsitektur, inti dari mikrokontroler bekerja, dimana penguasaan terhadap daleman sebuah mikrokontroler teramat penting, misalnya  register – register apa saja yang terlibat jika  harus menggunakan suatu yang ada pada sebuah mikrokontroler.

Misalnya di Arduino, untuk menyalakan sebuah led berkedip cukup dengan sebuah sintaks sederhana

Namun jika yang digunakan adalah pemrograman C/C++ untuk AVR dengan AVR-GCC sebagai compilernya, programnya adalah sebagai berikut

Jelas sekali perbedaanya bukan? Pengguna Arduino, akan disembunyikan dari melihat gambaran utuh tentang bagaimana sebuah mikrokontroler bekerja, mereka tidak mengenal struktur bahasa pemrograman C/C++. Juga tidak mengerti apa itu DDRX, apa keperluan untuk mengatur DDRX sebelum menggunakan sebuah Port. Meskipun sebenarnya ketika seorang programmer Arduino menuliskan sintaks pinMode(LED_BUILTIN, OUTPUT); secara tidak langsung ia telah mengeset register DDRX. Library – library Arduino sudah mengatur itu untuk programmer. Begitupun saat menulis statement digitalWrite(LED_BUILTIN, LOW); sebenarnya tidak lain hanyalah mengatur register PORTX untuk mengeluarkan sebuah keluaran digital tertentu  PORTD=0xFF;

Pemahaman terhadap Register adalah vital bagi pemrograman elektronika embedded, inilah mengapa Arduino difatwakan HARAM oleh banyak dosen mata kuliah mikrokontroler. karena Arduino tidak membuat mahasiswanya belajar apa itu mikrokontroler. Dan seharusnya dihukumi Haram juga untuk digunakan di dalam skripsi dan tugas akhir para calon sarjana di dunia teknik elektronika.

  • Menggunakan Atmel Studio

Untuk pembaca yang ingin mempelajari mikrokontroler lebih dalam, tidak hanya lewat Arduino bisa menggunakan bahasa pemrograman C/C++ dengan berbagai compiler yang disediakan oleh banyak penyedia, mulai dari yang gratis hingga berbayar. Di tahun 2011 pernah populer penggunaan CodeVision AVR yang bisa diunduh di situs resminya di tautan berikut . Untuk versi  gratis-nya dibatasi maksimal 4kbyte. Lebih dari itu, pengguna diharuskan membeli versi komersialnya.

Ada juga alternatif lainnya yang gratis, yakni menggunakan Atmel Studio yang dapat diunduh pada tautan berikut.  Jika yang diinginkan mengunduh versi offline -nya, ukurannya relatif besar, sekitar 800anMB. Jadi siapkan akses wifi atau akses  kuota yang memadai jika menggunakan data internet berbayar.

Catatan: Membuat project c/c++ untuk mikrokontroler AVR menggunakan Atmel Studio sudah pernah dibahas embeddednesia dengan tulisan berjudul  Hello Atmel Studio !!
  • Menggunakan Eclipse CDT

Bagi yang terbiasa menggunakan lingkungan kerja Eclipse. Dapat menggunakan Eclipse CDT dengan tambahan plugin dan compiler  Atmel GNU Toolchain dan GNU Make. Eclipse CDT dapat diunduh pada tautan berikut.

Pilih Eclipse IDE for C/C++ Developers. Sesuaikan dengan Arsitektur komputer yang pembaca gunakan. Apakah 32 bit atau 64 bit.

eclipse-0
Pilih workspace

Eclipse IDE didistribusikan dalam bentuk zip. Pengguna hanya perlu mengekstraknya ke direktori yang diinginkan lalu menjalankanya. Setelah splash screen Eclipse muncul beberapa saat, kotak dialog Workspace Launcher akan tampil menanyakan direktori mana yang dipilih untuk menjadi workspace (tempat menyimpan file project)

  • Plugin Eclipse CDT

Langkah berikutnya setelah Jendela Welcome pada eclipse terbuka adalah menginstall plugin C/C++ Developments Tools SDK yang biasa disebut sebagai Eclipse CDT. Eclipse CDT menyediakan IDE untuk pengembangan C/C++ berbasis platform Eclipse. Fitur – fitur yang dimilikinya termasuk membuat project, mengatur proses build untuk berbagai tool-chain, standard make build, dan berbagai tool yang sangat membantu proses development C/C++

Untuk menginstal CDT, masuk ke menu  Help > Install new Software, hingga kotak dialog install plugin  tampil. Pada drop down Work With, pilih CDT, tunggu beberapa saat hingga Eclipse terhubung ke repositori di Internet, sehingga muncul daftar komponen yang tersedia. Check semua pilihan, lalu klik Next dan ikuti proses instalasinya sampai selesei.

 

eclipse-5a
install CDT

Advertisement

  • AVR Eclipse Plugin

Plugin berikutnya yang perlu diinstall  adalah AVR Eclipse Plugin 2.3.4. Pembaca dapat menginstallnya melalui Eclipse Marketplace yang dapat diakses melalui menu Help > Eclipse Marketplace 

  • Atmel Toolchain

Berbeda dengan Atmel Studio yang sudah mempunyai toolchain bawaan. Eclipse CDT ditambah AVR Eclipse Plugin belum menyertakan toolchain sehingga programmer harus menginstallnya secara terpisah. Atmel Toolchain bisa diunduh  pada tautan berikut.

Catatan: Toolchain ini akan terinstall secara otomatis jika menginstall Atmel Studio

Advertisement

  • GNU Make
Gnu Make berfungsi  membangun project C++ dari source code menjadi binary. Dapat diunduh melalui tautan berikut, kemudian Install. 
  • Mengatur Konfigurasi Eclipse

Agar GnuMake dan Atmel Toolchain yang telah terinstall dapat terdeteksi oleh Eclipse AVR. Maka perlu dilakukan pengaturan terlebih dahulu. Pada menu Preferences di bagian  AVR > Path  atur paths dari AVR GCC, GNU make dan AVR Header Files sesuai dengan alamat dari lokasi instalasi

Ya, kini Eclipse CDT telah siap untuk membuat project C/C++ baru untuk mikrokontroler AVR. Pembahasan ini akan penulis simpan untuk tulisan berikutnya

1 Komentar
  1. […] Belajar Mikrokontroler AVR Tanpa Arduino […]

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.

%d blogger menyukai ini: