Arduino ICSP Üzerinden Program Yükleme & Bootloadersiz Kartlara Program Yükleme

Merhaba arkadaşlar . Bu yazıda Arduino’yu ICSP pinleri üzerinden nasıl programlayabiliriz ve Bootloader olmayan kartlara nasıl program atarız bundan bahsetmek istiyorum. Bu yazıyı yazmaya sebep; uğraştığım bir kartın programlama esnasında yarım kalmasıyla bootloader kısmının silinmesi oldu. Arduino gibi kartlarda Atmel işlemciler kullanılıyor. Bu işlemciler normalde doğrudan programlanamaz. yani bir usb portu üzerinden . Bunun için özel programlama arayüzleri lazımdır. Ancak Arduino geliştirme kartlarında bu işlemin doğrudan kolaylıkla yapılabilmesi için bootloader diye bir önyükleyici konulmuş. Bazen istenmeyen durumlarda bu önyükleyici silinince artık usb portundan programlama yapmak mümkün olmuyor. Yeniden bir bootloader yüklemelisiniz yada farklı yollarla program yüklemelisiniz. İşte bu yollardan birisi ICSP üzerinden programlama.

Nedir bu ICSP ? ( In Circuit Serial Programming) 

ICSP devre üzerinden programlamadır. Bu bize mikrokontrolörü programlarken, kod atmak için mikrokontrolörü her seferinde yerinden söküp takmak yerine sadece kablo yardımıyla devre üstünden program atmamıza yarar. Aşağıdaki resimde sarı ile gösterilen alandaki pinler ICSP pinleridir. 

Bu kadar teknik bilgiden sonra uygulamaya geçelim. Benim elimde Bootloader’i gitmiş bir Arduino Mega kart var bunu programlayacağız. 

İlk olarak kendime bir kablo yaptım şu şekilde imkani olan  kendi yapabilir. 

Sonrasında Programlanacak kart ile Programı aktaracak kart arasında bağlantı kurmamız gerekiyor.

Resmin Kaynağı: http://www.gammon.com.au/forum/?id=11635

bu şekilde bağlantıyı yaptıktan sonra . Arduino uno  burada programcı , mega ise programlanan olacak. Arduino uno’ya ISP sketch’ini yüklemeliyiz. 

 

Evet böylece Arduino uno’muz bootloader’i olmayan kart için bir bootloader olmuş oldu. Burada Araçlar – Önyükleyici yazdır diyerek bir bootloader de yüklenebilir. 

Şimdi herhangi bir arduino sketch’i açın ve bu şekilde yükleyin. 

Add a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir