Saturday, October 3, 2015

Bahasa C untuk Mikrokontroler AVR

Bahasa pemrograman untuk mikrokontroler AVR yang paling populer adalah menggunakan bahasa C. Bahasa C adalah bahasa pemrograman tingkat menengah. Selain bahasa C ada bahasa tingkat rendah seperti Assembly dan bahasa tingkat tinggi seperti Basic dan Pascal. Semakin rendah sebuah bahasa pemrograman maka semakin mendekati kode mesin namun sulit dimengerti oleh manusia. Sebaliknya semakin tinggi bahasa pemrograman maka semakin mudah dimengerti oleh manusia namun sukar untuk diaplikasikan ke mesin, dalam hal ini chip mikrokontroler.

Penggunaan bahasa C dalam pemrograman mikrokontroler semakin luas setelah munculya kompiler AVR-GC, yaitu kompiler bahasa C yang sudah dikhususkan untuk mikrokontroler jenis AVR. GCC sendiri adalah sebuah kompiler bahasa C universal yang biasa dipakai saat proses development software seperti sistem operasi Linux dan aplikasi. GCC merupakan singkatan dari GNU C Compiler, yaitu compiler bahasa C yang gratis berbasis open source.

Bahasa C dipilih karena struktur bahasanya yang tidak rumit seperti bahasa tingkat rendah namun mudah dimengerti oleh manusia seperti bahasa tingkat tinggi. Struktur penulisan bahasa C cukup simpel namun dengan kustomisasi yang luas dan cukup menjangkau dalam pemrograman mikrokontroler. Berikut ini beberapa hal penting dalam bahasa C yang digunakan untuk pemrograman mikrokontroler.

Struktur Penulisan Kode Program Bahasa C

Dalam menulis kode program menggunakan bahasa C kita harus mengikuti kaidah-kaidah penulisan yang benar seperti misalnya dalam program harus terdapat main rutin program yang ditarus didalam bagian/prosedur main. Kemudian setiap perintah bahasa C diakhiri dengan tanda titik koma (;). Dalam bahasa C juga harus diperhatikan penulisan huruf kecil dan huruf besar karena bahasa C membedakan keduanya, misalnya kata Waktu berbeda dengan waktu.

Berikut ini beberapa aturan penulisan bahasa C terutama yang sering dipakai dalam pemrograman mikrokontroler AVR:
  1. Pada program utama harus terdapat main rutin yang ditulis dengan nama main.
  2. Statemen didalam rutin, baik itu main, fungsi atau prosedur harus diawali dengan tanda kurung kurawal buka ({) dan diakhiri dengan tanda kurung kurawal tutup (}).
  3. Setiap statemen program baik itu perintah, deklarasi variabel atau konstanta harus diakhiri dengan tanda titik kome (;).
  4. Komentar program diawali dengan tanda // atau ditulis diantara tanda /* dan */. Komentar program adalah statemen yang tidak ikut dikompile atau tidak dikerjakan oleh mikrokontroler dan tidak terikat dengan aturan sintak yang benar.
  5. Bahasa C mendukung penggunaan preposesor seperti include, define, if , ifdef dan sebagainya. Setiap preposesor diawali dengan tanda # dan tidak diakhiri dengan tanda titik koma (;).
  6. Untuk deklarasi beberapa variabel sekaligus maka setiap variabel harus dipisahkan dengan tanda koma (,).
  7. Setiap identifier baik itu main rutin, fungsi atau prosedur harus disertai tanda kurung sepasang () pada akhir identifier, misalnya main(), hitung(), display() dann sebagainya.

Dan berikut ini contoh program mikrokontroler AVR yang ditulis menggunakan bahasa C :
 #include <avr/io.h>  //preposesor include  
 #include <util/delay.h>  //preposesor include  
   
 //deklarasi variabel  
 //dipisahkan dengan koma, diakhiri dengan titik koma  
 uint8_t on,off;   
   
 //main rutin  
 int main (void)    
 {    
  DDRD = 0xFF;   // Buat semua Port D menjadi output, 0xFF= 1111 1111    
  on = 0xFF;  
  off = 0;  
      
  while(1)    //perulangan program   
  {    
  PORTD = on;   // Port D high, on=0xFF=1111 1111    
  _delay_ms(1000);  // Tunda 1 detik    
  PORTD = off;    // Port D low, off=0=0000 0000    
  _delay_ms(100);  // Tunda 1 detik    
  }    
      
  return 0;    
 }    

Untuk penjelasan tentang bahasa C lebih detail insyaAllah akan ditulis pada artikel selanjutnya.

1 komentar: