Atmel Studio, Atmel ICE, Arduino UNO Hata Ayıklama

Geçtiğimiz günlerde siparişini verdiğim Atmel ICE elime ulaştı, 
 
    Break pointimi ekledim, Atmel-ICE, Arduino UNO bağlantısını ICSP soketi üzerinden gerçekleştirdim. Atmel-ICE ve Arduino usb ile bilgisayarıma bağlı, herşey hazır gibi. Projeyi kaydediyorum,
  Debug menüsünden Start debugging and break e tıklıyorum, hoop : Launh Failed başlıklı bir hata :
 
Failed to launch session with debugWIRE. This could be caused by reset line circuitry or disabled debugWIRE interface. Make sure that reset line is free before continuing. Do you want to use SPI to enable the DWEN fuse?
 
Arkadaş diyor ki, debugWIRE üzerinden hata ayıklama yapamıyorum, nedeni reset devresi ya da DWEN fuse nin kapalı olması olabilir, hmm.. orjinal Arduino Uno kullanıyorum, zannımca reset devresiyle alakalı bir sorun olamaz, ancak arduino IDE debug kullanmadığından DWEN fuse kapalı olabilir, ve zaten soruyor istersen DWEN fuse ü senin için aktif etmemi ister misin, Evet diyorum. Çok güzel, DWEN aktif edildi, gücü kesip tekrar bağlayın diyor, yapıyorum ve yeniden Launch Failed :
 
Setting debugWire fuse seems to have failed. Check your clock and fuse setting. 
 
Tamam, anladık ki başka bi sıkıntı var, Ancak artık başka bi sıkıntı da var, Uno nun üzerinde Blink yüklüydü ledim yanıp sönüyordu, artık yanıp sönmüyor yani UNO artık çalışmıyor ve Device Programming üzerinden Uno ya bağlanıp artık kod da atamıyorum :
 
Failed to enter programming mode. ispEnterProgMode: Error status received: Got 0xc0, expected 0x00 (Command has failed to execute on the tool)
 
Unable to enter programming mode. Verify device selection, interface settings, target power, security bit, and connections to the target device.
 
Arduino IDE üzerinden deniyelim; Examples / Blink, com port hala görüyor, bu iyiye işaret olabilir, upload diyoruz:
 
         Using Port                            : COM21
         Using Programmer               : arduino
         Overriding Baud Rate          : 115200
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x26
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x26
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x26
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x26
 
 
geçmiş olsun.. hata ayıklama yapalım diye çıktığımız bu kutlu yoldan, artık çalışmayan bir arduino UNO ile geri dönüyoruz :)
 
tamam bozulmuş olabilirsin ve bu bozulma bu olaya denk gelmiş olabilir, başka bir arduino uno ile tüm süreci tekrarlıyorum: sonuç 2 tane çalışmayan Arduino UNO..
 
biraz geri saralım, ilk hatadaki atladığımız reset hattı hikayesine, Make sure that reset line is free, Hattımız free mi değil? bakalım referans dizaynda neler var?
 

 

Malesef Reset hattımız "free" değil. Usb to com bridge, aynı zamanda IDE üzerinden Arduino ya kod atmamıza olanak sağlayan ATMEGA8U2-MU ile bir bağlantı söz konusu ve işin iyi tarafı board üzerinde bu bağlantıyı ayırabileceğimiz "Reset EN" adında bir jumper mevcut, bu bağlantıyı ince bir neşterle ayırıyorum, artık reset line free..
 

 

 

Tekrar Deniyoruz,  Debug menüsünden Start debugging and break e tıklıyorum,:



sonuç şahane, break pointimiz çalıştı, o andaki tüm registerlerimizi PORT directionlarımızı ve on off durumlarını görebiliyoruz, ayynen visual studio da kullandığımız debug sistemi gibi değişkenlerimizin değerlerini görebiliyor, adım adım ilerleyebiliyor, quickWatch ekleyip özellikle takip etmek istediğimiz değişkenin peşine düşebiliyoruz.
 
    Uno nun eski haline dönebilmesi için, debug menusundan ; disable debugWire and close demek gerekiyor, ayrıca board üzerindeki iki pine iki pinli erkek pin header bağlayıp üzerine de bir jumper takıp ("eskiden harddisklerin slave master ayarı yapmak için kullandığımız jumper) la Reset Enable durumunu da kolayca kontrol edebilirsiniz. 
 
-Kolay gelsin.

 

Yorumlar

Bu blogdaki popüler yayınlar

Arduino IDE Kod Satır Numaraları Nasıl Açılır

DMD2TUR | Arduino P10 Led Panel için Türkçe Karakter Desteği | Arduino P10 Led panel Türkçe yazı yazma

P10 Led Panel Nasıl Sürülür - Arduino kod