Hello World dengan WinAVR

Just a documentation.

Minggu Desember 14 2008/Surabaya

—————————- start of doc —————————-

WinAVR dengan IDE pemrograman Code Block Beberapa software open source yang dibutuhkan:

  1. GNU AVR GCC Compiler, disini digunakan WinAVR20080610 (versi sesuai tanggal update terakhir)
  • Download http://winavr.sourceforge.net/ (sekitar 22 MB)
  • Install. (selalu ingatlah tombol Next, Accept, Agree, dan OK :-) ) .Pilih saja direktori instalasi default agar mudah diingat, biasanya di dir utama= C:\WinAVR-20080610
  • Code::Block, sebuah IDE pemrograman untuk berbagai macam keperluan pemrograman , salah satunya bisa untuk IDE pemrograman mikrokontroler keluarga AVR.
  • Download di www.CodeBlocks.Org (sekitar 11 MB)
  • Install.
  • Buka Code::Block yang telah terinstall, lalu buat project baru (File->New->Project ). pada menu listbox terdapat beberapa pilihan tipe dari project yang bisa dibuat. Pilih “AVR Project”, lalu klik “Go”.
  • klik next, lalu tentukan nama project yang akan dibuat beserta letak direktori. Next.
  • Muncul dialog pilihan untuk “debug” dan “release”, pilih saja semuanya. Next.
  • Setelah itu muncul dialog:
  • Tipe mikrokontroler Atmega16 (atau terserah uC yg digunakan)
  • Tidak ada eksternal memori.
  • F_CPU ( Crystal yang digunakan ) : 8 MHz. (terserah crystal yg dipakai)
  • Centang pada creates .map, creates .hex, creates binary files, creates extended listing files.
  • Centang “run avr-size after build”
  • Buat program sederhana untuk mencoba mikrokontroler. misalnya menghidup/matikan led di PORTC, seperti berikut ini

#include

void delay_ms(unsigned char time_ms);

int main(void) { DDRC=0xFF; while(1) { PORTC=0xFF; delay_ms(400); PORTC=0x00; delay_ms(400); }

return 0; } //rutin umum delay void delay_ms(unsigned char time_ms) { unsigned short delay_count = F_CPU / 4000;

unsigned short cnt; asm volatile (”\n” “L_dl1%=:\n\t” “mov %A0, %A2\n\t” “mov %B0, %B2\n” “L_dl2%=:\n\t” “sbiw %A0, 1\n\t” “brne L_dl2%=\n\t” “dec %1\n\t” “brne L_dl1%=\n\t”:“=&w” (cnt) :“r”(time_ms), “r”((unsigned short) (delay_count)) ); }

  1. Lakukan pengaturan compiler yang akan digunakan pada menu Setting-> Compiler and Debugger
  2. Pada listbox selected compiler pilih : GNU AVR GCC Compiler
  3. buka tab , Toolchains executables dan tentukan direktori dimana WinAvr diinstal (default-nya tadi ada di C:\WinAVR-20080610 ). jika benar, tab program files dibawahnya secara otomatis terisi.
  4. Klik Ok untuk keluar dialog
  5. Lakukan build project pada menu build->build atau Ctrl-F9.
  6. Jika sukses, pada akhir dialog log terdapat pesan: 0 errors, 0 warnings Sampai disini file .HEX sudah terbuat.
  7. Untuk download file .HEX dapat digunakan PonyProg2000 (good stuff)
  8. Thank to : open source guys.

WinAVR dengan IDE Pemrograman AVR Studio Menggunakan WinAVR di AVR studio sangatlah mudah karena tidak diperlukan pengaturan compiler. jika WinAVR sudah terinstal, AVR Studio secara otomatis mendeteksinya. Saat WinAVR telah terinstall, AVR Studio akan memberikan 2 pilihan bagi user yaitu apakah menggunakan pemrograman Assembly atau C WinAVR. Pilihan ini ada saat kita pertama kali membangun sebuah project. Pengaturan penting lain, yaitu pemilihan crystal/chip/optimasi code/library yang ada di menu Project->Configuration Option.

WinAVR dengan Programmer Notepad Sebenarnya setelah menginstal WinAVR, kita bisa menggunakan Programmer Notepad, sebuah IDE pemrograman yang secara otomatis terinstal, karena program ini bawaan dari WinAVR. Ini adalah pilihan yang tepat jika bermaksud menggunakan WinAVR tanpa perlu menginstal apapun lagi. Langkah p-enggunaannya sbb: 1. Buka Programmer Notepad. 2. File New -> C/C++ Code. 3. Copy paste kode test led diatas. 4. Save, misal Main.C 5. Lalu buka program Mfile, di menu program WinAVR. Mfile ini, dibuat berdasarkan uC apa yang dipakai, nilai crystal, output file hasil kompilasi dll. 6. Menu MakeFile: • Main File name : isi dengan nama file main nya ->Main.c • Output Format : hasil kompilasi yang diinginkan (iHex, Bin, atawa srec), pilih saja iHex. • Optimation level : s (standart), level optimasi yang akan digunakan oleh compiler. s:standart. • Debug Format : AVR ext COFF • Programmer :STK200 • port lpt1.

  1. Save makefile ini di dir yang sama dengan program yang dibuat di Programmer Notepad.
  2. Kembali ke Programmer Notepad, pilih Tool -> Make All.
  3. Pesan : Proses Exit Code:0, menandakan file iHex telah terbuat.

————————— end of doc. —————————-

Seiring berputarnya bumi ( eh, berjalannya waktu), tuntutan untuk tidak memakai software bajakan semakin tajam, dan seperti pepatah kuno, membajak bukanlah hal yang bijak. Apa salahnya memulai memakai software open source, toh ini juga sangat bagus dan gak kalah dengan software komersil. yach….., itung2 ngurangin dosa dari pembajakan …. :-)

comments powered by Disqus