Nah setelah nyari solusi sana sini, kami menjumpai artikel yang layak di share, sobat bisa lihat versi aslinya di sini http://openhardware.ro/using-atmega16-with-arduino-ide/ , dan kami akan share dengan versi bahasa Indonesia.
Pada intinya tutorial tersebut menjelaskan bahwa akan menambahkan board baru atmega16 di arduino tanpa lewat boardmanager, adapun langkahnya sebagai berikut :
- Buka file 'boards.txt' , lokasi file boards.txt ini adalah di arduino folder …[arduino folder]\hardware\arduino\avr\boards.txt.
- Tambahkan pada baris paling akhir tulisan seperti di bawah ini
##############################################################
ATmega16-8.name=ATmega16-External 8Mhz
ATmega16-8.upload.tool=avrdude
ATmega16-8.build.mcu=atmega16
ATmega16-8.build.f_cpu=8000000L
ATmega16-8.build.core=arduino:arduino
ATmega16-8.build.variant=ATmega16
ATmega16-8.upload.maximum_size=16000
##############################################################
ATmega16-16.name=ATmega16-External 16Mhz
ATmega16-16.upload.tool=avrdude
ATmega16-16.build.mcu=atmega16
ATmega16-16.build.f_cpu=16000000L
ATmega16-16.build.core=arduino:arduino
ATmega16-16.build.variant=ATmega16
ATmega16-16.upload.maximum_size=16000
##############################################################
- Setelah itu, buat folder Atmega16 di dalam folder [arduino folder]\hardware\arduino\avr\variants
- download file pins_arduino.h
- copy file pins_arduino.h yang sudah di download ke dalam folder tersebut.
- Sekarang cek hasilnya di tools - board
- Setelah semuanya terdeteksi, terakhir rubah di file HardwareSerial.cpp atau bisa di lihat di folder [arduino folder]\hardware\arduino\avr\cores\arduino\HardwareSerial.cpp
- cari coding seperti di bawah ini
#if defined(__AVR_ATmega8__)
config |= 0x80; // select UCSRC register (shared with UBRRH)
#endif
- Rubah dengan koding di bawah ini dan simpan
#if defined(__AVR_ATmega8__) || defined(__AVR_ATmega32__) || defined(__AVR_ATmega16__)
config |= 0x80; // select UCSRC register (shared with UBRRH)
#endif