Arduino’yu Atmel Studio IDE ile Programlamak
Arduino programlarken Arduino’nun kendine ait geliştirme ortamını (Arduino IDE) kullanabileceğimiz gibi bir başka alternatifimiz daha var. Hem de çok daha profesyonel bir alternatif: Atmel Studio.
Atmel Studio Atmel firmasının (Microchip firması tarafından satın alındı) Microsoft Visual Studio geliştirme ortamını temel alarak geliştirdiği ve ürettiği Atmega, AVR, AVR-SAM serisi mikrodenetleyicileri programlamakta kullanılabilen bir tümleşik geliştirme ortamı. Arduino IDE’sinde göre çok daha gelişmiş özelliklere sahip bu ortamı Arduino projelerinizde de rahatlıkla kullanabilirsiniz.
Atmel Studio 7 yazılımını şuradaki sayfadan indirebilirsiniz! Offline installer seçeneği ile tüm kurulum dosyasını bilgisayarınıza indirip kurulumu başlatabilirsiniz.
Atmel Studio’nun kurulumunu gerçekleştirip çalıştırdığınızda karşınıza şu ekran gelecek:
Daha önce Microsoft Visual Studio ortamını kullanan arkadaşlara bu görüntü oldukça tanıdık gelecektir. Çünkü yazının başında da belirttiğim gibi Atmel Studio, Visual Studio yazılımı üzerine geliştirilmiş bir platform.
File >> New >> Project menüsüne girdiğinizde karşınıza çıkan seçeneklerden “Create project from Arduino sketch” seçeneğini seçmeliyiz.
Açılan pencerede:
Sketch File: Bu bölüme daha önce oluşturduğunuz bir Arduino projesinin dosyasının bulunduğu konumu belirtmelisiniz. Projemizi bu Arduino projesinden dönüştürerek oluşturacağız.
Arduino IDE Path: Bu kısma Arduino yazılımının bilgisayarınızda bulunduğu klasörü yazmalısınız.
Board: Kullandığınız Arduino kartının modeli
Device: Arduino Uno için Atmega328p
Sonrasında Arduino Projemizden dönüştürülerek Atmel Studio’da bir C++ projesi oluşturulacak. Yani aslında Arduino programlarken C++ dilini kullanıyoruz.
Artık Arduino IDE’sinden çok daha gelişmiş özelliklere sahip bir ortama sahibiz. Örneğin kod yazarken size oldukça yardımcı olan “kod tamamlama” özelliğinin keyfini çıkarabilirsiniz.
Ya da bir fonksiyonun tanımına gitmek için sağ tık menüsündeki “goto implementation” seçeneğini kullanabilirsiniz.
Projemizi derlemek için “build Solution” komutunu kullanıyoruz. Build menüsünden ulaşabileceğiniz gibi F7 tuşunu kullanabilir veya menü barı üzerindeki Build butonuna tıklayabilirsiniz.
Peki derlediğimiz projemizi kartımıza nasıl yükleyeceğiz. Aslında bu işlemi de normalde Arduino IDE’si değil AVRDude adlı bir program gerçekleştiriyor. Burada da aynı yöntemi kullanacağı. Gerekli parametreleri vererek AVRDude yazılımının çağırılmasını sağlayacağız.
Tool >> External Tools menüsüne girelim:
External Tools menüsündeki aşağıdaki bilgileri girmemiz gerekiyor:
Title: Çağıracağımız komuta bir isim verebilirsiniz. Örn: AvrDude-ArduinoUno
Command: AVRDude.exe’nin bilgisayarınızdaki konumu. Bu konum Arduino yazılımının bulunduğu klasör altında hardware\tools\avr\bin\ klasörünün altıdır.
Örn: C:\Program Files\arduino-1.8.5\hardware\tools\avr\bin\avrdude.exe
Arguments: AVRDude.exe çağrılırken verilecek olan argümanlar
-C “C:\Program Files\arduino-1.8.5\hardware\tools\avr/etc/avrdude.conf” -v -patmega328p -carduino -PCOMx -b115200 -D -Uflash:w:”$(ProjectDir)Debug\($TargetName).hex”:i
Burada koyu olarak yazılan ilk kısmın Arduino yazılımının sizin bilgisayarınızda bulunduğu klasörün adresi olması, PCOMx yazılı kısımda da x yerine bilgisayarınızda görünen Arduino’ya ait COM port numarası yer almalı. Bu numarayı Arduino Uno kartı bilgisayarınıza takılı iken Windows Aygıt Yöneticisinden (Device Manager) görebilirsiniz:
Use Output Window seçeneğini de seçerseniz Avrdude yazılımının çıktılarını ayrı bir pencere yerine Atmel Studio’daki Output penceresinde görebilirsiniz.
Böylelikle artık Arduino için yazdığımız programı Avrdude ile kartımızdaki mikrodenetleyiciye yükleyebiliriz.
Artık Atmel Studio ile Arduino programlayabilir ve gelişmiş özelliklerinin keyfini çıkarabilirsiniz.
Faydalı olması dileğiyle!
Merhaba,
Aynen sizin gösterdiğiniz gibi yatım ama şöyle bir hata verdi:
avrdude.exe: can’t open config file ““C:\Program”: Invalid argument
avrdude.exe: error reading system wide configuration file ““C:\Program”
selam..konunun üzerinden baya bir süre geçmiş ama sorun,coşkun beyin vermiş olduğu arguments listesinide
”$(ProjectDir)Debug\($TargetName).hex”:i hatalı
”$(ProjectDir)Debug\$(TargetName).hex”:i doğrusu
-C “C:\Program Files\arduino-1.8.5\hardware… bu kısımda ise sizin pc de -C “C:\Program Files(x86)\ olabilir.dikkat edin.ben baya çabaladım 🙂
benim pcde arduino idesinden kopyalayıp düzenlediğim şekli
-C”C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf” -v -patmega328p -carduino -PCOM3 -b115200 -D -Uflash:w:”$(ProjectDir)Debug\$(TargetName).hex”:i
saygılar.
Teşekkür ederim ilginiz için
Kendi bilgisayarımda olan arduino klasörünü ve com bağlantı numarasını doğru yazmama rağmen yine çalışmıyor.
Merhaba,
Şurada başta çift tırnak 2 adet varmış gibi görünüyor. Bunu da kontrol edebilir misiniz? Adresle ilgili bir sorun var gibi: ““C:\Program
Merhaba
Kurulu makalesine şunuda eklerseniz güzel olur atmel studioyu ister online ister offline kursunlar ama virus programı yada internet security aktif ise visual stuido shell hatası veriyor onun için virus porgramı yada internet security i pasif yapmaları gerekiyor kurulum esnasında hata almamk için.
-C “C:\Program Files\arduino-1.8.5\hardware\tools\avr\etc\avrdude.conf” -v -patmega328p -carduino -PCOMx -b115200 -D -Uflash:w:”$(ProjectDir)Debug\($TargetName).hex”:i
üstteki şekilde kopyalayın. sitede belirtilen yönergeleri uygulayın hata düzelecektir.
avrdude.exe: Version 6.3, compiled on Jan 17 2017 at 12:00:53
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is ““D:\arduino\hardware\tools\avr\etc\avrdude.conf””
avrdude.exe: can’t open config file ““D:\arduino\hardware\tools\avr\etc\avrdude.conf””: Invalid argument
avrdude.exe: error reading system wide configuration file ““D:\arduino\hardware\tools\avr\etc\avrdude.conf””
Bende böyle bir hata ile karşılaştım. Acaba D’ye kurulu oldudugu icin mi boyle?
-C “C:\Program Files (x86)\Arduino\hardware\tools\avr\etc\avrdude.conf” -v -patmega328p -carduino -PCOM3 -b115200 -D -Uflash:w:”$(ProjectDir)Debug\($TargetName).hex”:i
System wide configuration file is ““C:\Program”
avrdude.exe: can’t open config file ““C:\Program”: Invalid argument
avrdude.exe: error reading system wide configuration file ““C:\Program”
merhabalar lehım makınası ıstasyonlarında atmega entegrelerdekı program hakkında bılgi verebılırmsiniz ne tip programlar kullanılıyor bu progrmaları bulabılırmıyız
merhabalar
lehım istasyonu içerısınde atmega entegresi programını bulabılırmıyız tesekkur
Hocam kolay gelsin. Atmel Studioda yazdığım kodu Arduinoya gönderiyorum ve şu hatayı alıyorum : “avrdude.exe: stk500_recv(): programmer is not responding”
Çözüm için yardım eder misniz?
konunun üzerinden çok geçmiş ama birkaç tecrübemi bende aktarayım.
avrdude.exe: can’t open config file ““C:\Program”: Invalid argument
avrdude.exe: error reading system wide configuration file ““C:\Program”
hatasının sebebi kopyala yapıştır kazası 🙂 çift tırnakları silip klavyeden kendiniz girerseniz muhtemelen sorun kalmayacak sanırım pc nin dil ayarları ile ilgili bir uyuşmazlık oluyor ve siz aslında .conf dosyasının yerini hiç gösteremiyorsunuz. ayrıca benimde denediğim ve çalışan yol:
-C”C:\Program Files\Arduino\hardware\tools\avr/etc/avrdude.conf” -v -patmega328p -carduino -PCOM3 -b115200 -D -Uflash:w:”$(ProjectDir)Debug\$(TargetName).hex”:i şeklinde.
2.olarak nano kartla yaptığım denemede yaşadığım sıkıntı kartın tepki vermemesi oldu. bendeki nano old bootlooder bir kart. bu noktada baudrate i 57600 olarak ayarlamak sorunu çözüyor. hatta çalışan konfigürasyon yolu:
-C”C:\Program Files\Arduino\hardware\tools\avr/etc/avrdude.conf” -v -patmega328p -carduino -PCOM3 -b57600 -D -Uflash:w:”$(ProjectDir)Debug\$(TargetName).hex”:i şeklinde.
kopyalayacaksanız çift tırnak kontrolünü yine yapınız. İyi çalışmalar herkeze…
Arkadaşlar merhaba, çift tırnakları(“) silerek tekrardan yazın; yazı tipinden kaynaklı sorun olabiliyor. COM portunu da eklerseniz, sorunsuz yükleme yapabilirsiniz.
Command >>
C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe
Arguments >>
-C “C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf” -v -patmega328p -carduino -PCOM9 -b115200 -D -Uflash:w:”$(ProjectDir)Debug\$(TargetName).hex”:i
.bin yada .hex dosyalarını atmel studio ile yada başka bir programla c yada c++ diline çevirmek mümkün mü?
Severity Code Description Project File Line
Error recipe for target ‘main.o’ failed GccApplication3 c:\users\public\Documents\Atmel Studio\7.0\GccApplication3\GccApplication3\Debug\Makefile 76
Böyle bi hata alıyorum lütfen yardımcı olurmusunuz