Memrogram Mikrokontroler ATmega8 dengan Arduino IDE – Panduan Langkah demi Langkah
Komponen dan Perlengkapan
Arduino UNO
×
1
Microchip Technology ATmega8A-PU
×
1
CH340G USB To TTL Converter
×
1
Kristal 16 MHz
×
1
Kapasitor 22 pF
×
2
Resistor 10k ohm
×
1
Tombol Push SparkFun 12mm
×
1
Papan roti (generik)
×
1
Kawat jumper (generik)
×
12
Kawat Jumper Machan/Femina
×
4
Tentang Proyek Ini
“Saya telah menulis kode saya untuk papan Arduino UNO. Apakah mungkin untuk mengunggah sketsa saya ke mikrokontroler AVR selain ATmega328? Saya pikir ini adalah pertanyaan paling umum bagi pecinta Arduino. Ini mungkin memiliki alasan yang berbeda seperti:
Menggunakan mikrokontroler AVR yang lebih murah
Memerlukan mikrokontroler AVR dengan lebih banyak atau bahkan lebih sedikit pin dari ATmega328
Anda memiliki semua jenis AVR kecuali ATmega328 :D
Dalam tutorial ini Anda akan mempelajari cara memrogram ATmega8 menggunakan Arduino IDE. Ini tidak terbatas pada ATmega8 saja dan dapat digeneralisasi ke inti lain yang tersedia di GitHub MCUDude. Ini terdiri dari dua bagian. Dalam bagian satu, pemasangan bootloader Arduino pada ATmega8 dijelaskan. Bagian dua menunjukkan cara memrogram ATmega8 menggunakan Arduino IDE dan konverter USB ke TTL.
Bagian satu: Pemasangan Bootloader Arduino
Dalam bagian ini, kita menambahkan dukungan ATmega8 ke Arduino IDE. Kemudian kita menyiapkan papan roti dan menghubungkan ATmega8 ke papan Arduino UNO.
Langkah Satu: Menambahkan Dukungan ATmega8 ke Arduino IDE Menggunakan Board Manager
Ada berbagai jenis inti yang tersedia di repositori GitHub MCUDude. MiniCore digunakan untuk mikrokontroler ATmega8. Mikrokontroler yang didukung dalam inti ini adalah:
ATmega8
ATmega48
ATmega88
ATmega168
ATmega328
Ikuti langkah-langkah di bawah ini untuk menginstal MiniCore di Arduino IDE Anda.
Di menu File, klik Preferences.
Sekarang di Additional Boards Manger URLs, masukkan URL berikut:
Pergi ke menu Tools dan pilih Board > Boards Manager
Di jendela Boards Manager, cari MiniCore dan instal versi terbaru.
Langkah-langkah di atas ditunjukkan secara grafik di sini:
Pinout ATmega8 ditunjukkan pada gambar berikut.
Langkah Dua: Memrogram Arduino sebagai ISP (In-system programming)
Untuk memasang bootloader Arduino, kita perlu menjadikan Arduino UNO kami sebagai ISP. Ada sketsa bernama ArduinoISP dalam contoh bawaan Arduino IDE. Ikuti langkah-langkah ini untuk memrogram Arduino UNO Anda sebagai ISP.
Buka File > Examples > 11.ArduinoISP > ArduinoISP
Unggah sketsa ini ke Arduino UNO Anda.
Langkah Tiga: Memasang Bootloader
Hubungkan Arduino ke ATmega8 seperti di bawah ini.
Arduino ----------ATmega8
SCK / Pin 13 ----------SCK / PB5
MISO / Pin 12 ----------MISO / PB4
MOSI / Pin 11 ----------MOSI / PB3
SSN / Pin 10 ----------RESET
Pergi ke Tools > Board dan pilih ATmega8. Anda juga dapat memilih jenis dan frekuensi jam Anda di menu Tools.
Pilih jenis pemrogram di Tools > Programmer: sebagai “Arduino as ISP”.
Sekarang di menu Tools, klik Burn Bootloader.
Jika operasi berhasil, itu akan mengatakan “Done burning bootloader”. Selamat! Anda telah berhasil.
Bagian Dua: Memrogram ATmega8 Menggunakan Arduino IDE dan Konverter USB ke TTL
Di sini kita memiliki ATmega8 dengan bootloader Arduino. Seperti yang Anda ketahui, ada konverter USB ke TTL pada semua papan Arduino. Ia bertindak sebagai jembatan antara mikrokontroler dan Arduino IDE. Kita menggunakan modul konverter CH340 USB ke TTL untuk mengunggah sketsa ke ATmega8.
Langkah Empat: Menyiapkan Koneksi
Hubungkan komponen seperti ditunjukkan di bawah ini.
CH340 ---------- ATmega8
VCC ---------- VCC
GND ---------- GND
Tx ---------- RX / PD0
Rx ---------- Tx / PD1
Langkah Lima: Mengunggah Sketsa ke ATmega8
Tekan dan tahan tombol reset. Sekarang klik upload di IDE. Tahan tombol sampai itu mengatakan “Uploading…” pada bar status IDE. Lepas tombol setelah proses unggahan dimulai. Ini karena mikrokontroler harus berada dalam status RESET saat proses unggahan dimulai.
Catatan: Jika proses tidak berhasil, tempatkan kapasitor 100nF di Vcc dan GND mikrokontroler sejauh mungkin.
Catatan: Beberapa modul konverter USB ke TTL memiliki pin bernama DTR. Jika milik Anda juga memiliki pin ini, Anda dapat menghubungkannya ke pin RESET ATmega8 dan tidak perlu menggunakan tombol untuk mereset mikrokontroler secara manual.