Herkese merhabalar. Bu yazımızda sizlere Arduino programlama esnasında sıkça karşılaşılan hatalardan bahsedeceğim. Bunlardan bahsetmeden önce şu konuya bir açıklık getirelim. Her işte olduğu gibi bu işle uğraşırken de hata yapmak çok normal. Hata yapmak ve bunu kısa sürede çözememek motivasyonunuzun kaybolmasına neden olabilir fakat buna izin vermemeniz gerekir. Çünkü hata yaptıkça aslında tecrübe kazanmış, uğraştığımız şeyle ilgili daha çok bilgi sahibi oluruz. Karşılaştığımız hatalar, bazen onları nasıl çözebileceğimiz konusunda çalışmamız için bize fırsat verir ve bu sayede de kendimizi geliştirebiliriz. Hadi sıkça karşımıza çıkan bazı hatalardan bahsedeyim.

Arduino IDE

Arduino Hata Mesajları

Arduino’da karşılaştığımız hata mesajlarının birçok sebebi olabilir. Bu sorunlar genellikle Arduino ile bilgisayar arasındaki haberleşme sorunlarından, klon Arduino’ların sürücülerinin yüklü olmamasından, Arduino’nun veya bilgisayardaki USB portlarının arızalı olmasından kaynaklanabilir. Bunların haricinde derleme ve programlama öncesinde kullanıcının gerekli ayarları yapmaması da bazen hata mesajı gelmesine yol açmaktadır. Örneğin programlamak için bilgisayarınıza Arduino Nano bağladınız fakat Arduino IDE’de Arduino Uno programlayacağınızı belirttiniz. Bunun sonucunda bir hata mesajı almanız kaçınılmazdır.

Arduino IDE’de tüm kurulum ayarlarını doğru yaptınız, Arduino’nuz da bilgisayarınız ile haberleşmede sorun yaşamıyor fakat IDE’de belli bir satır belirtilerek hata mesajı alıyorsunuz… Bu, çözümü en kolay sorun. IDE’de gösterilen satırda bir yazım hatası yapmışsınız demektir. Yanlış yere parantez koyma, satır sonuna ‘;‘ koymama gibi hatalardan dolayı böyle bir geri bildirim alırsınız. Fakat yazım yanlışlarının çözülmesi veya kodlamada herhangi bir yazım yanlışı yapılmaması, programın tamamen sizin istediğiniz gibi çalışacağı anlamına gelmez. Bunun için kurduğunuz algoritmanın doğru olması gerekir.

Arduino IDE’de derleme ve programlama esnasında karşılaşılan yaygın bazı hataları ve çözümlerini yazının devamında bulabilirsiniz.

Arduino Karta Yüklenirken Sorun Oluştu – Taslak Yüklenirken Bir Hata Oluştu

avrdude: ser_open(): can't open device "\.\COM1: Access is denied.
avrdude stk500_recv() programmer is not responding
avrdude stk500_getsync() attempt 1 of 10 not in sync resp=0x01
avrdude stk500_recv() programmer is not responding
avrdude stk500_getsync() attempt 2 of 10 not in sync resp=0x01
...

Bu sorunla karşılaştıysanız, muhtemel sebeplerini ve çözümlerini inceleyebilirsiniz. Böylece port sorununu, driver hatalarını aşmış, kartınızı kontrol etmiş olursunuz. Ayrıca bazen bu çeşit bir hatayı “taslak yüklenirken bir hata oluştu” şeklinde de alabilirsiniz, aynı çözüm yollarını denemenizi tavsiye ederim.

  • Yanlış COM Portu veya yanlış Arduino kartı seçilmiş olabilir

Arduino’nuzu bilgisayarın bir portuna bağlayın. IDE’de Araçlar>Kart kısmından bağlı olan Arduino modelini seçin. Sonrasında Arduino Araçlar>Port kısmına gelip bağlı olan portu işaretleyin (Örnek: COM3). COM portu doğru belirlenmişse Arduino’yu bilgisayarınızın farklı bir portuna takarak tekrar deneyin.

  • Gerekli sürücüler yüklenmemiş olabilir

Arduino kartları bazen sürücü yüklemesi sebebiyle hata verebilmektedir. Gerekli sürücüler bilgisayarınızda yüklü değil ise blog sayfamızda yer alan, Arduino Uno’yu örnek göstererek anlattığımız Arduino Sürücüleri Bilgisayara Nasıl Yüklenir? yazımızı ve eğer CH340 çipli klon Arduino kullanıyorsanız Klon Arduino Uno Sürücüleri Nasıl Yüklenir? yazılarımızı okuyarak bu sorunu çözebilirsiniz.

  • Extra: Arduino’nun 0.pininde (RX) bir bağlantı var mı?

Bu her zaman için geçerli bir kural olmasa da bazen Arduino’nun 0. pininde bir bağlantı olduğunda bu sorunla karşılaşabiliyorsunuz. Programlama esnasında bu pinde herhangi bir bağlantı olmadığından emin olun.

Arduino Karta Yüklerken Sorun OluştuTaslak Yüklenirken Bir Hata Oluştu

Arduino Derleme Sırasında Bir Hata Oluştu (Exit status 1, Error compiling for board Arduino/Genuino Uno)

Bu hata ile karşılaşıyorsanız Arduino IDE’de yazdığınız program derlenirken, yani henüz daha program karta atılmadan önce hazırlanırken bir sorun olmuş demektir. Genellikle bu sorunun birkaç sebebi vardır.

  • Gerekli kütüphanelerin bulunmaması

Yazdığınız programda kullandığınız elektronik ekipmana göre farklı kütüphanelere ihtiyacınız olabilir. Her kütüphane Arduino IDE’de hazır olarak bulunmaz. Bu yüzden ihtiyacınız olan kütüphaneleri belirleyip indirmeniz gerekir. İndirdiğiniz kütüphaneyi bilgisayarınızda C:\Program Files\Arduino\Library dosyasına aktardığınızda başarıyla bu kütüphaneyi elde edebiliyorsunuz. Sonrasında ise yazdığınız programın ilk satırına #include <kutuphane.h> yazarak kütüphanenizi programınızda kullanabilirsiniz. Örnek:

Servo motorların kontrolü için Servo kütüphanesini indirdik ve kütüphaneyi az önce belirttiğim Library dosyasının içine aktardık. Yazacağımız Arduino programının örneği şu şekilde olmalıdır:

#include <Servo.h>

void setup()
{
...
}

void loop()
{
...
}

Arduino’nun referans olduğu bütün kütüphanelere buradan ulaşabilirsiniz.

  • “Syntax” hatası (Yazım yanlışı)

Belki de karşılaştığınız sorun çok daha basit bir şey olabilir. Örneğin syntax hatası, yani yanlış sözdizimi… Açılan her parantez, köşeli parantez ve süslü parantezin kapatılması, komut sonlarına ‘;‘ konması, büyük/küçük harf uyumu gibi temel kurallara uyulmadığı takdirde yazılan program derlenmez. Bu sebeple programı yazarken yazım yanlışı yapmamaya dikkat etmek gerekir. Böyle bir durumda Arduino IDE hangi satırda hata yaptığınızı karşınıza çıkartabiliyor, bir diğer yandan da aşağıda çıkan hata raporunda belirtiyor.

Syntax Error

Yukarıdaki görselde örnek bir hata inceleyebilirsiniz. Döngünün son satırındaki delay(1000) komutunun sonuna ‘;‘ getirilmediği için komut algılanmamış, dolayısıyla döngü tamamlanmamıştır. Bu yüzden de döngünün sonundaki ‘}‘ bulunan satırda hata bildirilmektedir. Aslında sorun kodun sonuna ‘}‘ getirilmesi değildir, bu yüzden hata bildirimini doğru anlamaya çalışın. IDE’nin alt kısmındaki hata raporunda da “expected ‘;’ before ‘}’ token” yazıyor, yani ‘}‘ öncesinde ‘;‘ getirilmesi belirtiliyor.

Siz de bu hatalar gibi Arduino programlarken hatalar ile karşılaşıyorsanız yorum yaparak bunları bizimle paylaşabilirsiniz. Bu hataların çeşitli çözüm yollarını da bizimle paylaşarak yazımıza katkı sağlayabilirsiniz. Hata yapmaktan korkmayın, hatalardan ders çıkarabildikten sonra… 🙂

 


36 Yorumlar

  1. Merhabalar
    Bende exit status 1
    ‘else’ without a previous ‘if’
    diye bir hata çıkıyor
    yardımcı olabilir misiniz?

  2. Merhaba Arkadaşlar herkese kolay gelsin benim sorunum http://www.instructables.com/id/Simple-PS3-Arduino-Project/ bu sitedeki projeyi yaptım çalıştırdım fakat ufak bir sorunum kaldı program kodu ile ilgili aracım ileri ve geri gitmiyor bunun sebebininde projede kullanılan orjinal motor sürücü kartı olduğunu düşünüyorum çünkü farklı bir kart kullanmış bende türkiyede en çok kullanılan motor sürücü kartı kırmızı renkli l298n çin malı motor sürücü kartını kullandım aracım sağa ve sola dönüyor fakat ileri ve geri gitmiyor program kodunda ne gibi bir değişiklik yapmam gerekiyor bana bu konuda yardımcı olabilirmisiniz.

    • kodda void ileri geri vb.varmı hani kodlarda void sağ sol vs.bulunuyorsa oda olması lazım void ileri geri yoksa onlarıda yaz

  3. merhabalar ben bunlara yeni basladım bu koddaki yaptıgım hataları bilemiyorum yardımcı olurmusunuz
    void setup() {
    pinMode(trig,OUTPUT);
    pinMode(echo,INPUT);
    pinMode(led_1,OUTPUT);
    pinMode(led_2,OUTPUT);
    pinMode(motor_1,OUTPUT);
    pinMode(motor_2,OUTPUT);

    }

    void loop() {

    kelime();
    int sayı = analogRead(yol);
    if(10< sayı<13){
    digitalWrite(led_1,HIGH);}
    else
    { digitalWrite(led_1,LOW);}
    kelime();
    if(5<sayı<9){
    digitalWrite(motor_1,126);}
    else{
    digitalWrite(motor_1,LOW);}
    kelime();
    if(1<sayı<8){
    digitalWrite(motor_2,126)&&digitalWrite(led_2, HIGH);}
    else{
    digitalWrite(motor_2,LOW);}
    }

  4. void setup()
    {
    pinMode(6, OUTPUT); //Enable
    pinMode(5, OUTPUT); //Step
    pinMode(4, OUTPUT); //Direction

    digitalWrite(6,LOW);
    }

    void loop()
    {
    digitalWrite(4,HIGH);

    for(Index = 0; Index < 2000; Index++)
    {
    digitalWrite(5,HIGH);
    delayMicroseconds(500);
    digitalWrite(5,LOW);
    delayMicroseconds(500);
    }
    delay(1000);

    digitalWrite(4,LOW);

    for(Index = 0; Index < 2000; Index++)
    {
    digitalWrite(5,HIGH);
    delayMicroseconds(500);
    digitalWrite(5,LOW);
    delayMicroseconds(500);
    }
    delay(1000);
    } burda ne hata var nolur yardımcı nolun

  5. merhaba arduinoyu programlayıcı olarak kullandıktan sonra arduinoya kod atamıyorum. Bootloader ayarlarını değiştirdim kod atarken . arduınoyu tekrar nasıl programlayabilirim?

  6. Arduino:1.8.7 (Windows 10), Kart:”Arduino/Genuino Uno”

    exit status 1
    Error compiling for board Arduino/Genuino Uno.

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    BENDE BÖYLE SAÇMA SAPAN HATA ÇIKIYO LED BİLE YAKAMIYOM LÜTFEN ACİL Bİ YARDIM EDER MİSİNİZ ?

  7. int ledDelay=10000;
    int kırmızıLed=10;
    int sarıLed=9;
    int yeşilLed=8;

    void setup() {
    pinMode(kırmızıLed,OUTPUT);
    pinMode(sarıLed,OUTPUT);
    pinMode(yeşilLed,OUTPUT);
    }

    void loop() {
    digitalWrite(10,HIGH);
    delay (ledDelay);

    digitalWrite(sarıLed,HIGH);
    delay(2000);

    digitalWrite(yeşilLed,HIGH);
    digitalWrite(kırmızıLed,LOW);
    digitalWrite(sarıLed,LOW);
    delay(ledDelay);

    digitalWrite(sarıLed,HIGH);
    digitalWrite(YeşilLed,LOW);
    delay(2000);
    digitalWrite (sarıLed,LOW) ;

    }
    Arduino:1.8.6 (Windows 7), Kart:”Arduino/Genuino Uno”

    sketch_dec02a:2:1: error: stray ‘\304’ in program

    int kırmızıLed=10;

    ^

    sketch_dec02a:2:1: error: stray ‘\261’ in program

    sketch_dec02a:2:1: error: stray ‘\304’ in program

    sketch_dec02a:2:1: error: stray ‘\261’ in program

    sketch_dec02a:2:1: error: stray ‘\304’ in program

    sketch_dec02a:2:1: error: stray ‘\261’ in program

    sketch_dec02a:3:1: error: stray ‘\304’ in program

    int sarıLed=9;

    ^

    sketch_dec02a:3:1: error: stray ‘\261’ in program

    sketch_dec02a:4:1: error: stray ‘\305’ in program

    int yeÅŸilLed=8;

    ^

    sketch_dec02a:4:1: error: stray ‘\237’ in program

    sketch_dec02a:7:1: error: stray ‘\304’ in program

    pinMode(kırmızıLed,OUTPUT);

    ^

    sketch_dec02a:7:1: error: stray ‘\261’ in program

    sketch_dec02a:7:1: error: stray ‘\304’ in program

    sketch_dec02a:7:1: error: stray ‘\261’ in program

    sketch_dec02a:7:1: error: stray ‘\304’ in program

    sketch_dec02a:7:1: error: stray ‘\261’ in program

    sketch_dec02a:8:1: error: stray ‘\304’ in program

    pinMode(sarıLed,OUTPUT);

    ^

    sketch_dec02a:8:1: error: stray ‘\261’ in program

    sketch_dec02a:9:1: error: stray ‘\305’ in program

    pinMode(yeÅŸilLed,OUTPUT);

    ^

    sketch_dec02a:9:1: error: stray ‘\237’ in program

    sketch_dec02a:13:1: error: stray ‘\304’ in program

    digitalWrite(kırmızıLed,HIGH);

    ^

    sketch_dec02a:13:1: error: stray ‘\261’ in program

    sketch_dec02a:13:1: error: stray ‘\304’ in program

    sketch_dec02a:13:1: error: stray ‘\261’ in program

    sketch_dec02a:13:1: error: stray ‘\304’ in program

    sketch_dec02a:13:1: error: stray ‘\261’ in program

    sketch_dec02a:15:1: error: stray ‘\304’ in program

    digitalWrite(sarıLed,HIGH);

    ^

    sketch_dec02a:15:1: error: stray ‘\261’ in program

    sketch_dec02a:17:1: error: stray ‘\305’ in program

    digitalWrite(yeÅŸilLed,HIGH);

    ^

    sketch_dec02a:17:1: error: stray ‘\237’ in program

    sketch_dec02a:18:1: error: stray ‘\304’ in program

    digitalWrite(kırmızıLed,LOW);

    ^

    sketch_dec02a:18:1: error: stray ‘\261’ in program

    sketch_dec02a:18:1: error: stray ‘\304’ in program

    sketch_dec02a:18:1: error: stray ‘\261’ in program

    sketch_dec02a:18:1: error: stray ‘\304’ in program

    sketch_dec02a:18:1: error: stray ‘\261’ in program

    sketch_dec02a:19:1: error: stray ‘\304’ in program

    digitalWrite(sarıLed,LOW);

    ^

    sketch_dec02a:19:1: error: stray ‘\261’ in program

    sketch_dec02a:21:1: error: stray ‘\304’ in program

    digitalWrite(sarıLed,HIGH);

    ^

    sketch_dec02a:21:1: error: stray ‘\261’ in program

    sketch_dec02a:22:1: error: stray ‘\305’ in program

    digitalWrite(yeÅŸilLed,LOW);

    ^

    sketch_dec02a:22:1: error: stray ‘\237’ in program

    sketch_dec02a:24:1: error: stray ‘\304’ in program

    digitalWrite(sarıled,LOW);

    ^

    sketch_dec02a:24:1: error: stray ‘\261’ in program

    sketch_dec02a:2:8: error: expected initializer before ‘rm’

    int kırmızıLed=10;

    ^

    sketch_dec02a:3:10: error: expected initializer before ‘Led’

    int sarıLed=9;

    ^

    sketch_dec02a:4:9: error: expected initializer before ‘ilLed’

    int yeÅŸilLed=8;

    ^

    C:\Users\user\Desktop\Arduino\sketch_dec01a\sketch_dec02a\sketch_dec02a.ino: In function ‘void setup()’:

    sketch_dec02a:7:9: error: ‘k’ was not declared in this scope

    pinMode(kırmızıLed,OUTPUT);

    ^

    sketch_dec02a:8:9: error: ‘sar’ was not declared in this scope

    pinMode(sarıLed,OUTPUT);

    ^

    sketch_dec02a:9:9: error: ‘ye’ was not declared in this scope

    pinMode(yeÅŸilLed,OUTPUT);

    ^

    C:\Users\user\Desktop\Arduino\sketch_dec01a\sketch_dec02a\sketch_dec02a.ino: In function ‘void loop()’:

    sketch_dec02a:13:14: error: ‘k’ was not declared in this scope

    digitalWrite(kırmızıLed,HIGH);

    ^

    sketch_dec02a:15:14: error: ‘sar’ was not declared in this scope

    digitalWrite(sarıLed,HIGH);

    ^

    sketch_dec02a:17:14: error: ‘ye’ was not declared in this scope

    digitalWrite(yeÅŸilLed,HIGH);

    ^

    sketch_dec02a:18:17: error: expected ‘)’ before ‘rm’

    digitalWrite(kırmızıLed,LOW);

    ^

    sketch_dec02a:19:19: error: expected ‘)’ before ‘Led’

    digitalWrite(sarıLed,LOW);

    ^

    sketch_dec02a:21:19: error: expected ‘)’ before ‘Led’

    digitalWrite(sarıLed,HIGH);

    ^

    sketch_dec02a:22:18: error: expected ‘)’ before ‘ilLed’

    digitalWrite(yeÅŸilLed,LOW);

    ^

    sketch_dec02a:24:19: error: expected ‘)’ before ‘led’

    digitalWrite(sarıled,LOW);

    ^

    exit status 1
    stray ‘\304’ in program

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    BU HATALARI ALIYORUM ANLIYAN EL ATSIN YAA ACİLL….

  8. Merhaba benim bir sorunum var, arduino ide’i bilgisayara yükledim Arduino Uno’u da tanıttım kod yazmak istiyorum fakat sketch sayfası hiçbir değişiklik yapmama izin vermiyor sorun ne olabilir nasıl çözerim?

  9. merhaba yardımcı olursanız sevinirim arduino uno boş cod bile atılmıyor aynı zaman L ışığı yanıyor hiçbir pin bağlı değil usb yide değiştim ama olmuyor.

  10. Arduino:1.6.2 (Windows 10), Kart:”Arduino Uno”

    dd.ino:11:1: error: expected unqualified-id before ‘\x2829’

    dd.ino:26:1: error: expected unqualified-id before ‘\x2829’

    Derleme sırasında hata oluştu.

    Rapor daha fazla veri içermeli
    “Derleme sırasında ayrıntılı çıktı göster”
    Dosya > Tercihler’de etkinleştirilmiş.

  11. Arduino/Genuino Uno kartı için derleme hatası. ben bu hatayı alıyorum yardımcı olurmusunuz acaba ?
    #include

    void setup() {
    pinMode(A0,INPUT);
    Joystick.begin();
    }

    void loop() {
    int gelenDeger = analogRead(A0);

    int mapped = map(gelenDeger,957,1023,255,0);
    if((mapped *2) >= 255 ){
    Joystick.setThrottle(mapped);
    }else {Joystick.setThrottle(mapped);}
    }

  12. arkadaşlar ben INSTAL`a basıyorum ama BU PROGRAM DAHA ÖNCE BAŞARIYLA YÜKLENDİ yazıyor , kod kısmına geldiğimde PORT seçilmiyo

  13. Arduino:1.8.9 (Windows Store 1.8.21.0) (Windows 10), Kart:”Arduino Nano, ATmega328P”

    In function ‘global constructors keyed to 65535_0_lcd.ino.cpp.o’:

    lto1.exe: internal compiler error: Segmentation fault

    Please submit a full bug report,

    with preprocessed source if appropriate.

    See for instructions.

    lto-wrapper.exe: fatal error: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\hardware\tools\avr/bin/avr-gcc returned 1 exit status

    compilation terminated.

    c:/program files/windowsapps/arduinollc.arduinoide_1.8.21.0_x86__mdqgnx93n4wtt/hardware/tools/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/bin/ld.exe: error: lto-wrapper failed

    collect2.exe: error: ld returned 1 exit status

    exit status 1
    Arduino Nano kartı için derleme hatası.

    hata nedir? lütfen geri dönüş yapın

  14. “Error compiling for board Arduino Nano” şeklinde bir hata alıyorum bunu nasıl düzeltebilirim.
    yardımcı olursanız sevinirim.

  15. Nano klon da PC ye bağladığımda l ışığı hızlıca yanıp sünüyor ve yükleme yapamıyorum neden olabilr yardımıcı olur musunuz
    Teşekkürler

  16. Arkadaşlar merhaba arduino üzerinden esp 32 ye wifi kodu göndermek için uğraşıyordum.Dün açılan arduino programı bugün açılmıyor.Programı kaldırıp tekrar yükledim fakat program hiçbir türlü açılmıyor.Yardımcın olabilir misiniz?

  17. bluetooth ile RGB led yakma uygulamasını yapıyordum fakat
    Seçilen seri port “avrdude: initialization failed, rc=-1
    ” bağlı olan kartınızda mevcut değil
    bu problemle karşılaştım.
    ne yapmalıyım?

  18. Arkadaşlar merhaba, klon arduino uno ile Ldr sensor kullanarak servo motora yön vermek amacıyla yaptığım proje, Arduino bilgisayara bağlı iken sorunsuz çalışıyor, ancak usb kablosu çıkarılıp, başka bir güç kaynağına geçince çalışmıyor, konu ile ilglili bilgisi olanlar yardımcı olabilir mi, ?

CEVAP VER

Please enter your comment!
Please enter your name here