AVRDUDE adalah aplikasi yang berguna untuk pemrograman mikrokontroler Atmel AVR secara in-system programming (ISP). AVRDUDE dapat memprogram Flash dan EEPROM serta fuse bits dan lock bits melalui protokol serial. Saat ini, AVRDUDE sudah dapat digunakan untuk Linux dan Windows.
AVRDUDE mendukung dua tipe standar programmer, yaitu STK500 Atmel dan PPI (Parallel Port Interface). PPI merupakan programmer sederhana yang langsung dihubungkan ke port paralel PC, sementara STK500 menggunakan port serial untuk berkomunikasi dengan PC.
Ada beberapa konfigurasi pin untuk berbagai PPI programmer yang ada dan AVRDUDE dapat dikonfigurasi sesuai dengan programmer yang digunakan.
Contoh programmer yang bisa digunakan untuk AVR adalah AVIRUSPRO. Untuk mengetahui lebih lanjut silahkan lihat disini.
AVRDUDE pertama dikembangkan oleh Brian S. Dean sebagai proyek pribadi dari sistem programmer untuk seri mikrokontroler AVR Atmel, sebagai bagian dari opensource dan perangkat lunak yang tersedia untuk mikrokontroler ini. Awalnya, perangkat lunak ini ditulis untuk sistem operasi FreeBSD , diselenggarakan dalam sebuah repositori CVS pribadi, dan didistribusikan di bawah nama avrprog.
Karena meningkatnya minat porting perangkat lunak untuk sistem operasi lain, Brian memutuskan untuk membuat proyek diakses secara publik pada savannah.nongnu.org . Perubahan nama menjadi AVRDUDE telah dipilih untuk mengatasi masalah ambiguitas dengan utilitas avrprog yang didistribusikan oleh Atmel bersama-sama dengan perangkat lunak AVRstudio mereka.
Menjalankan AVRDUDE
Karena Avrdude merupakan program berbasis command-line, maka semua instruksi harus diberikan dalam bentuk baris perintah.
Untuk Windows, caranya buka jendela command-line, pilih Run... dari Start Menu lalu ketik cmd dan klik OK.
Untuk MacOS X, bisa dengan menggunakan program Terminal yang berada di dlam folder Utilities
Ketik avrdude pada jendela command-line, lalu tekan enter, maka akan tampil daftar instruksi untuk avrdude
Opsi AVRDUDE
Ada banyak opsi untuk instruksi avrdude ini, tapi tidak perlu digunakan semua, cukup beberapa opsi yang akan dipeting saja. Perhatikan pengunaan huruf besar dan hurup kecilnya !
- -p <partno> : menentukan jenis mikro yang akan diprogram, misalnya untuk ATmega32, maka perintahnya adalah –p m32 atau –p atmega32
- -C <config-file> : menentukan file configurasi untuk avrdude
- -P <port> : menentuka port yang digunakan untuk berkomunikasi dengan programmer. Misalnya COM1 untuk serial port atau LPT1 untuk paralel port parallel atau USB untuk port USB.
- -U <memtype>:r|w|v:<filename>[:format] : instruksi untuk membaca/menulis chip.
- <memtype> maksudnya adalah jenis memori yang akan dibaca/ditulis, yaitu flash atau eeprom (bisa juga digunakan hfuse, lfuse atau efuse untuk konfigurasi fuse).
- r|w|v adalah r (read) w (write) or v (verify).
- <filename> nama file yang akan di download
- [:format] merupakan format flag opsional. Biasanya menggunakan "Intel Hex" format
-
Sebagai contoh. Jika ingin men-download file test.hex ke memori flash, maka instruksinya adalah
avrdude -U flash:w:test.hex:i.
Jika ingin membaca dari memori eeprom dan disimpan di file "eedump.hex", maka instruksinya adalah
avrdude -U eeprom:r:eedump.hex:i
- -n : perintah ini maksudnya adalah tidak menuliskan sesuatu apapun ke chip. Bisa digunakan untuk mengetes koneksi programmer atau mengetes signature chip
- -q : perintah ini untuk menghilangkan tampilan detail dari progress
- -b <baudrate> : untuk mengatur baudrate misalnya untuk programmer STK500.
- -B <bitrate> : untuk mengubah bitrate, berapa cepat intruksi diterima oleh chip. Jika chip menggunakan clock yang rendah maka bitrate ini harus diturunkan nilainya
- -F : menon-aktifkan signature check, biasanya digunakan untuk memprogram chip ‘secara paksa’, karena signature chip tidak dikenali, tapi sangat tidak dianjurkan. Instruksi ini bisa juga digunakan untuk mengetes koneksi programmer.
- -e : untuk menghapus chip secara mandiri, karena biasanya program akan auto-erase chip sebelum proses programming.
- -V : untuk menon-aktifkan fungsi auto-verify pada saat penulisan. Jika ingin mem-verifikasi hasil penulisan, jangan gunakan instruksi ini.
- -D : untuk menon-aktifkan penghapusan chip sebelum proses programming.
- -u : jika ingin memodifikasi fuse bits
- -t : merupakan mode 'terminal' memungkinkan kita untuk menambahkan perintah baris. Tidak dianjurkan untuk pemula.
- -E : untuk melihat daftar spesifikasi programmer
- -v : merupakan mode ‘verbose' misalnya untuk men-debug proses
Untuk versi AVRDUDE terbaru, lihat di sini: savannah.nongnu.org / proyek / avrdude
Tidak ada komentar:
Posting Komentar