Pada postingan kali ini, penulis mencoba membagi, walaupun memang sudah agak ketinggalan, tetapi sebagai catatan dan dokumentasi bagi penulis, yakni Cara mengUpload Arduino Code (sketch) ke Microcontroller ATMega16.
Seperti yang kita (kita lagi?) ketahui bersama, atau yang penulis sempat ketahui, pada Board Arduino seperti Nano, Uno, sebenarnya juga menggunakan microcontroller Atmel, yakni ATMega328p. Kenapa menggunakan tipe tersebut? Karena spesifikasi yang lebih canggih dibandingkan ATMega 16/32/8535. Seperti misalnya kapasitas memory flash 32KB, dibandingkan ATMega16 yang hanya 1KB, EEPROM dan fitur internal lainnya.
Jadi, mau diapakan ATMega16 yang tersisa di laci komponen penulis? Untuk itu penulis mencoba memanfaatkan ATMega16 sebagai bahan belajar saja, dengan menggunakan Arduino Nano sebagai downloader dan Arduino IDE untuk menuliskan kode (sketch) ke microcontroller yang tidak disupport oleh Arduino itu sendiri.
- Arduino Nano board
- Gelatino dan Koneksi Internet
- 1 x Elco 10uF -
- 2 x Kapasitor 22 pF
- 1 x ATMega 16
- Crystal 11.059 MHz
- 3 buah LED buat demo
- Beberapa jumper
Langkah-langkahnya saya bagi beberapa tahap sebagai berikut :
Jalankan Arduino IDE, buka File > Examples > Arduino ISP
Lakukan upload Sketch ke Arduino Nano, tunggu hingga selesai. Sampai di sini, Arduino Nano bertindak sebagai downloader saja. Lanjut ke tahap berikut.
Buka Board Manager, cari Gelatino, download, pastikan koneksi internet lancar.
Selanjutnya buat sketch sederhana seperti kode berikut, sebagai demo saja, untuk menyalakan 3 buah LED secara bergantian.
Langkah terakhir adalah dengan mengupload program (sketch) yang sudah dibuat tadi, tetapi kali ini ada sedikit perbedaan. Kalau biasanya untuk mengpload cukup memilih menu Upload, kali ini memilih menu Upload Using Programmer.
Setelah proses upload selesai, harusnya rangkaian pada breadboard sudah menampilkan animasi sederhana yakni led yang menyala secara bergantian.
Untuk lebih jelas, dapat dilihat pada video berikut
Demikian postingan atau tutorial kali ini, semoga bermanfaat.
(z)
Seperti yang kita (kita lagi?) ketahui bersama, atau yang penulis sempat ketahui, pada Board Arduino seperti Nano, Uno, sebenarnya juga menggunakan microcontroller Atmel, yakni ATMega328p. Kenapa menggunakan tipe tersebut? Karena spesifikasi yang lebih canggih dibandingkan ATMega 16/32/8535. Seperti misalnya kapasitas memory flash 32KB, dibandingkan ATMega16 yang hanya 1KB, EEPROM dan fitur internal lainnya.
Bahan dan alat yang digunakan
- Arduino IDE versi terakhir 1.8.5- Arduino Nano board
- Gelatino dan Koneksi Internet
- 1 x Elco 10uF -
- 2 x Kapasitor 22 pF
- 1 x ATMega 16
- Crystal 11.059 MHz
- 3 buah LED buat demo
- Beberapa jumper
Langkah-langkahnya saya bagi beberapa tahap sebagai berikut :
Arduino as ISP Programmer
Tahap ini merupakan langkah untuk mengubah board Arduino Nano yang kita (lagi?) punya menjadi Progammer (downloader) saja. Langkahnya cukup mudah, hanya dengan meng-upload Sketch bawaan Arduino, yakni Arduino as ISP ke board Arduino Nano.Jalankan Arduino IDE, buka File > Examples > Arduino ISP
Lakukan upload Sketch ke Arduino Nano, tunggu hingga selesai. Sampai di sini, Arduino Nano bertindak sebagai downloader saja. Lanjut ke tahap berikut.
Gelatino Core
Gelatino Core adalah definitions board yang dbiuat oleh Vanbwodonk, yang nantinya digunakan untuk mendefinisikan ATMega16 yang digunakan agar dapat dituliskan Bootlader Arduino ke dalamnya. Tambahkan file JSON ini pada preferensi Arduino IDE.https://raw.githubusercontent.com/vanbwodonk/Gelatino.github.io/master/package_Gelatino_1.6.x_index.json
Buka Board Manager, cari Gelatino, download, pastikan koneksi internet lancar.
Wiring and Burning BootLoader
Saatnya untuk merangkai Arduino Nano ke ATMega16, sesuaikan pin-pin dari Arduino Nano ke pin-pin pada ATMega16, berikut dengan komponen lainnya.Selanjutnya buat sketch sederhana seperti kode berikut, sebagai demo saja, untuk menyalakan 3 buah LED secara bergantian.
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
}
void loop() {
digitalWrite(2, HIGH);
delay(500);
digitalWrite(2, LOW);
delay(500);
digitalWrite(3, HIGH);
delay(500);
digitalWrite(3, LOW);
delay(500);
digitalWrite(4, HIGH);
delay(500);
digitalWrite(4, LOW);
delay(500);
}
Berikut ini, gambar konversi pin dari arduino ke ATMega 16Langkah terakhir adalah dengan mengupload program (sketch) yang sudah dibuat tadi, tetapi kali ini ada sedikit perbedaan. Kalau biasanya untuk mengpload cukup memilih menu Upload, kali ini memilih menu Upload Using Programmer.
Setelah proses upload selesai, harusnya rangkaian pada breadboard sudah menampilkan animasi sederhana yakni led yang menyala secara bergantian.
Untuk lebih jelas, dapat dilihat pada video berikut
Demikian postingan atau tutorial kali ini, semoga bermanfaat.
(z)
EmoticonEmoticon