Rainbowduino’nun USB bağlantısı yoktur ve doğrudan Arduino IDE ile programlanamaz. UartSB veya Seeeduino kullanarak programlayabilirsiniz, ayrıca ISP arayüzünü kullanarak da programlayabilirsiniz. İkinci yöntemi kullanırsanız, Rainbowduino’nun boot loader’ı geri yüklenebilir ve bir sonraki sefer ilk yöntemle programlamak isterseniz, boot loader’ı tekrar yüklemeniz gerekir.
Rainbowduino için boot loader’ı UartSB kullanarak da yükleyebilirsiniz. UartSB’nin bir ISP arayüzü vardır, sadece üzerindeki pinleri kapatmanız yeterlidir. Ve bunu Rainbowduino üzerindeki temas pinine bağlayın.
Bundan sonra, UartSB ile Rainbow için boot loader’ı yüklemek için AVRDUDE’yi kullanabilirsiniz. AVRDUDE.exe dosyasını bir klasöre koyun, örneğin ben “E:\UartSB_2.1_ISP.Run” yoluna koydum, CMD komutunu kullanarak DOS komut penceresini açın.
AVRDUDE.exe’yi koyduğunuz klasöre girmek için komutu girin. Ben bunu E:\UartSB_2.1_ISP’ye koydum. Sonra şu komutu girdim:
E:
cd UartSB_2.1_ISP
Şimdi AVRDUDE.exe’yi bazı ayarlarla çalıştırın. Komutu girin:
avrdude -c diecimila -P ft0 -p m168 -t -B 4800
“-P ft0” Bitbang-Port ayarlarıdır. “-p m168” çip ayarlarıdır. “-B 4800” yavaş saat modu ayarlarıdır.
Çipi sil:
erase
Fuse’ü yaz:
w efuse 0 0x00
w hfuse 0 0xDD
w lfuse 0 0xFF
Fuse’ü yazdıktan sonra, AVRDUDE’den çıkın.
quit
Şimdi boot loader’ı FLASH’a yazın ve kolaylık olması açısından boot loader HEX dosyasını AVRDUDE ile aynı klasöre koymalıyız:
avrdude -c diecimila -P ft0 -p m168 -U flash:w:atmega168.hex
Programı bekleyin. Bu işlem birkaç saniye sürecektir. Tamamlandığında doğrulama yapacak ve sonucu gösterecektir.
Artık boot loader Rainbowduino’nun Flash’ına yazılmıştır ve fuse’ü kontrol edip kilitlememiz gerekiyor.
Daha hızlı bir saat ayarı:
avrdude -c diecimila -P ft0 -p m168 –t
Bir kilit biti yazın:
Fuse’ü okuyun ve doğru olup olmadığını kontrol edin:
d efuse
d hfuse
d lfuse
Kilit okuma ve çıkış yapın
d lock
quit
Eğer komut kullanarak yazmanın karmaşık olduğunu düşünüyorsanız, bunu yazmak için argued-GUI adlı bir yazılım kullanabilirsiniz. Bununla ilgili daha fazla bilgi burada:
http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html







