Konu ile ilgili yapmış olduğum test ve sonuçları blogumda yayınladım.
https://elektrokod.wordpress.com/2020/03/29/arduino-derleyiciniz-ne-kadar-hizli/ (https://elektrokod.wordpress.com/2020/03/29/arduino-derleyiciniz-ne-kadar-hizli/)
Elinize sağlık, konu başlığı bence biraz yanlış olmuuş. Yazdığınız kodu yine Arduino Ide içerisinde yazıyorsunuz aslında. Yaptığınız çalışmada tek fark, arduino platformonun sunmuş olduğu bir çok wrapper üzerine giydirilmiş fonksiyonlar yerine, farklı teknik kullanmışsınız. Ancak bunun ide ile bir alakası bulunmadığını düşünüyorum.
Şu şekilde bir video yayınlamıştım : https://www.youtube.com/watch?v=qY5Nso6GWNk
Testte üç farklı derleyici kullanıldı. Bunlar mikroc AVR, CodeVision ve Arduino IDE. Bütün derleyiciler ATMega328P mikrodenetleyicisinde aynı işlemi yapıyor.
Alıntı yapılan: selimkoc - 29 Mart 2020, 21:18:27Testte üç farklı derleyici kullanıldı. Bunlar mikroc AVR, CodeVision ve Arduino IDE. Bütün derleyiciler ATMega328P mikrodenetleyicisinde aynı işlemi yapıyor.
Konunun IDE ile alakası yok yalnız, aynı avr kodlarını arduino ide'sinde derleyebilirsiniz zaten.
Güzel olmuş ellerinize sağlık ama Volkan'ın dediği gibi biraz eksik olmuş, Arduino pinMode ve digitalWrite fonksiyonlarının kaynak koduna baktığımızda(ben bir yerden sonra pes ettim) fonksiyon içinde başka bir fonksiyon onun içinde başka bir fonksiyon diye uzayıp gidiyor ama adamlar bunu hiç bilmeyenlere göre tasarlamışlar, arka planda birçok kontrolü yapmak zorunda kalmışlar ve bunun bedeli de zaman olarak geri dönmekte, bilen adam da Arduino ile uğraşmıyor zaten. Siz yapmış olduğunuz çalışmalarda kullanmış olduğunuz derleyicilere ait bir bilgi vermemişsiniz sadece IDE bilgilerini vermişsiniz. Bildiğim kadarıyla Arduino avr-gcc compiler(Atmel de bunu kullanması lazım) kullanıyor bu nedenle en hızlı çıkması doğal, diğer IDE lerde hangi derleyicileri kullandığınızı belirtirseniz dokümanlarını inceleyerek zaman kaybının kaynağını bulabiliriz.
Arduino IDE setup içinde
Serial.end();
satırını ilave edersek daha
uygun olabilir.
Ayrıca eclipse ile avr eklentisini
de deneyiniz.