ESP-IDF içerisine Arduino Altyapısını Ekleme

 




1. ESP-IDF ile proje oluşturma konusunda olduğu gibi yeni bir proje oluşturulur. (Proje isimlerinde ve dosya yollarında türkçe karakter ve boşluk kullanmayın...!)

2. Proje oluşturmanın ikinci aşamasında"Extension" ve "Arduino as component" seçimi yapılır. Bu seçim yapılınca ilk seferinde "Create project" butonu hemen belirmeyebiliyor. Bu nedenle birkaç defa tıklamak gerekebilir... Nihayetinde projeyi oluşturun. 


3. Proje oluşturma tamamlandıktan sonra klavyeden F1 tuşuna basarak arama kutusuna ESP-IDF yazın. Seçenekler arasından "Add Arduino ESP32 as ESP-IDF Component" seçimini yapın. 


4. Proje içerisinde "component/arduino"  klasörü oluşacak ve arduino framework bu klasör içerisine yüklenmeye başlayacaktır. Yükleme boyutu 2 GB ın biraz üzerinde olduğu için bu işlem biraz zaman alacaktır. Sağ alt bölümde yükleme ilerleyişi ile ilgili detay gösterilmiyor ancak sabır ile işlemin bitmesini bekleyiniz. 


5. Yükleme sonunda indirilen arduino klasörünü sonraki projeler için ortak kullanacağız. Bu nedenle kendinize göre sabit dizine bu klasörü kopyalayın ve mevcut projeyi (iptal edin) kapatın. 



6. Yukarıdaki 1. ve 2. adımları uygulayarak aynı şekilde yeni bir proje oluşturun. 3. adımı uygulamadığımız için bu proje içerisinde "component/arduino" klasörü olmayacaktır. 


7. CMakeList.txt dosyası içerisine aşağıda görünen satırları resimdeki gibi ekleyin. Böylece arduino klasörümüzü nereden çağırılacağını bildirmiş oluyoruz. (arduino klasörünüz hangi dizinde ise dosya yolunu kendi dizininize göre uyarlayın). Sonrasında alt bölümdeki "build" butonuna basarak projeyi derleyin.

set(EXTRA_COMPONENT_DIRS 
    "D:/esp/Ardu_Core/arduino"
){codeBox}


8. Derleme Sırasında frekans ile ilgili bir hata oluşuyor. Ancak bu işlem ile birlikte proje klasöründe sdkconfig dosyası da oluşacaktır. bu dosya içerisinde "CONFIG_FREERTOS_HZ=100" satırını bulun ve "CONFIG_FREERTOS_HZ=1000" olarak  güncelleyin. 




10. Yine alt bölümdeki butonlar ile önce projeye "clean(1)", ardınan "build(2)" işlemlerini uygulayın. Derleme işlemi sonunda "Build Successfully" mesajını alıyor olmalısınız. 


11. Bu aşamada artık kod yazmaya hazırın. main.c dosyamızın içeriğine bakalım;



12. main.c dosyasını aşıla deldiğimiz arduino kodları ile aşağıdaki şekilde yeniden düzenleyip alt bölümdeki meşale/alev (derle/yükle/monitörü aç) butonuna basarak yüklüyoruz. Ve işlem sonunda "Merhaba IDF"  yazısını terminal üzerinden görüntülüyoruz. 

Böylece ESP-IDF içerisine arduino framework ekleyerek idf içerisinde arduino fonksiyonlarını kullanabilir hale geldik. Fark edileceği üzere kod içerisinde void setup/loop yerine sadece app_main ana fonksiyonu yer almakta. Arduino kodlarında olduğu gibi setup ve loop fonksiyonlarını kullanmak istiyorsak; 
- Alt taraftaki config (dişli) butonuna basılarak config ayarları açılır.
- "Autostart Arduino setup and loop on boot" ayarı bulunur ve aktif edilir.
- "Save" butonu ile yapılan ayar kaydedilir. 


setup/loop ayarını aktif ettiğimize göre main.c dosyamızdaki kodu setup/loop fonksiyonları içerisinde tekrar düzenleyip yüklüyorum ve sonuç olarak başarılı bir şekilde monitorden yine "Merhaba IDF" mesajını alıyorum. 



Bir sonraki aşama olarak Arduino için yazılmış kütüphanelerin projeye nasıl dahil edileceği konusuna göz atmayı planlıyorum...

Yorum Gönder

Daha yeni Daha eski