Bekerja dengan Arduino, tanpa Board Arduino, Upload dengan USBasp
Tidak asing lagi bagi para programmer mikrokontroller apa itu Arduino, jadi disini tidak perlu dijelaskan lebih mendalam tentannya. Melihat Judulnya mungkin agak sedikit bingung bagi para user pemula atau bahasa gaulnya newbie, setelah bertanya sama mbah google dan sedikit sentuhan di source arduino-nya, kita bisa bekerja menggunakan software arduino tapi dengan board selain arduino. Proses upload program menggunakan USBasp lewat interface GUI arduinonya, seperti kita ketahui kalo menggunakan USBasp program uploader yang biasa dipakai adalah khazama atau extreem. Kenapa kita menggunakan Arduino disini, mungkin karena arduino menyediakan library yang cukup lengkap dan mudah dalam pemrogramannya. Ok, langsung saja ke TKP..(kayak OVJ….)..,
Disini penulis menggunakan Arduino 022, seperti diketahui bahawa Arduino 022 hanya support mikrokontroller tertentu saja. Agar Arduino ini bisa support ke mikrokontroller AVR yang lain perlu dilakukan perubahan di konfigurasi wiring+boardnya, tepatnya ada folder \\arduino-0022\arduino-0022\hardware\arduino. Untuk melakukan konfigurasi ini, teman2 tidak perlu pusing2 lagi karena sudah ada yang membuatnya bisa lihat diartikel ini http://agfi.staff.ugm.ac.id/blog/index.php/2010/09/arduino-ku-mendukung-berbagai-macam-avr-atmega/ setelah diterapkan pada arduino 022 hasilnya seperti dibawah ini
Dalam Proses Upload program, bisanya arduino menggunakan bootloader, nah jika kita menggunakan IC AVR yang baru dibeli tentunya tidak akan bisa diprogram menggunakan arduino ini. Untuk mengatasi masalah di atas ada sebuah solusi yaitu meng-integrasikan antara USBasp dengan Arduino. Cara integrasi tersebut bisa dilihat pada artikel ini http://gunture.blogspot.com/2011/08/arduino-tanpa-booloader-pakai-usbasp.html.
Setelah kedua cara diatas kita gabungkan, maka kita akan dapat bekerja dengan Arduino dengan board selain Arduino dengan proses upload menggunakan USBasp. Sampai disini Software Arduino sudah support AVR yang lain dan upload program menggunakan USBasp tapi ada hal penting yang perlu si setting yaitu mengkonfigurasi upload program ke board kita. Caranya yaitu buka file arduino-0022\arduino-0022\hardware\arduino\board.txt, cari nama board arduino_penguino_avr lakukan perubahan seperti dibawah ini
############################################################## arduino_penguino_avr.name=ATmega32 arduino_penguino_avr.upload.using=usbasp arduino_penguino_avr.upload.protocol=usbasp arduino_penguino_avr.upload.maximum_size=28672 arduino_penguino_avr.upload.speed=57600 #arduino_penguino_avr.bootloader.low_fuses=0xFF #arduino_penguino_avr.bootloader.high_fuses=0xDA #arduino_penguino_avr.bootloader.extended_fuses=0x05 #arduino_penguino_avr.bootloader.path=atmega #arduino_penguino_avr.bootloader.file=stk500boot_v2_penguino.hex #arduino_penguino_avr.bootloader.unlock_bits=0x3F #arduino_penguino_avr.bootloader.lock_bits=0x0F arduino_penguino_avr.build.mcu=atmega32 arduino_penguino_avr.build.f_cpu=2000000L arduino_penguino_avr.build.core=arduino
Kenapa penulis menggunakan board ini, karena chip yang dipakai pada board ini adalah ATMega32, sesuai dengan yang penulis pakai. perhatikan upload.protocol dan build.fcpu sesuaikan dengan kondisi mikro yang kita gunakan. Berikut ini contoh program sederhana mengirimkan data serial menggukan board buatan innovative electronic (chip : ATmega32), hardware dapat dilihat dibawah ini
Contoh program serial data dengan program Arduino
Agar lebih paham mengenai konfigurasi board, bisa di setting sesuai dengan board yang temen2 buat,,maka fokuskan untuk melakukan konfigusari di folder \\arduino-0022\arduino-0022\hardware\arduino, pahami wiringnya..
Sekian dari penulis semoga bermanfaat.
Referensi:
http://agfi.staff.ugm.ac.id/blog/index.php/2010/09/arduino-ku-mendukung-berbagai-macam-avr-atmega/
http://gunture.blogspot.com/2011/08/arduino-tanpa-booloader-pakai-usbasp.html





It took me time to read all the tips, but I clearly loved the post. It proved to be very helpful to me and I’m certain to all of the commenters here!
mas, kalo secara pemrograman nya sama kan dengan arduino uno atau arduino yang lain, misal kita coba blink led tapi memakai atmega32, sma kan program nya? kok ada error gitu. minta info nya mas, terimakasih