Gömülü Sistemler İçin C Programlama Dersleri Geliyor

C programlama dili hakkında gerek İngilizce gerekse Türkçe bolca kaynak bulmanız mümkündür. Bu kaynakların bazıları teknik okul seviyesinde olup eğitimciler tarafından yazılmış, bazıları akademik seviyede olup akademisyenler tarafından yazılmış, bazıları ise programcılar tarafından yapılan ders yazısı ve video serileridir. Yani bir üniversite öğrencisine de ortaokul öğrencisine de yönelik kaynak bulmak mümkündür. Türkçe kaynak her ne kadar İngilizce kaynak gibi birincil ya da kapsamlı bir kaynak olmasa da kaynak sıkıntısı çekilecek noktada da değildir. Hali hazırda mevcut olan bu kadar kaynağın üzerine aynı şeyleri yazmak bilgi kirliliğine sebep olacaktır. O yüzden farklı bir anlatım, farklı bir bakış açısı ve farklı bir çalışma alanına ihtiyaç vardır. Çalışma alanımız mevcut C derslerinden farklı olmaya sebep olsa da bunu kendi anlatımım ile mümkün olduğu kadar orjinal tutmaya gayret edeceğim.

Akademik seviyede bir C dili kitabını incelediğimizde dile dair her konuyu bulabilsek de bu dilin uygulama alanına dair bir konuya denk gelmeyiz. Kitabın başından sonuna kadar konsol ekranından çıkılmaz ve uygulama  yapılsa dahi konsol ekranında ve bir işletim sistemi idaresinde yapılır. Uygulamalar bizim çalışma alanımıza biraz ters düşmektedir. Çünkü bilgisayar üzerinden bir işletim sistemi idaresinde yürütülen programlar ile gömülü sistemlere yazılan programlar arasında büyük fark vardır. Biz donanıma mümkün olduğu kadar yakın çalışırız. Elimizde hazır kütüphaneler ve şablonlar yoktur. Hatta mevcut kütüphaneleri bile incelememiz ve performans için iyileştirmemiz gerekir. Bu alan bizi ister istemez donanıma yakın ve ileri seviye çalışmaya zorlamaktadır.

Kendi programımızı yazabilmek için C dilini bilmenin yanında bu dili kullanmayı da bilmemiz gereklidir. Kullanabilmek için ise dili uygulama boyutuna taşımalıyız. Normal bir C kaynağını okuduğunuzda dilin uygulama alanı yukarıda dediğimiz gibi bilgisayar programlarıyla sınırlıdır. Biz ise herhangi bir bilgisayar programı kullanmak yerine konsol uygulamalarını bile gömülü sistemler üzerinden yapacağız. Bütün uygulamalar gömülü sistemler üzerinde yapılmış olacaktır.  C dilini gömülü sistemlerde kullanmayı öğretmeyi hedefleyeceğiz.

Yazdığımız AVR programlama dersleri sıfırdan başlayan biri için zor gelebilir. Çünkü C dilini iyi bilmedikçe o donanım üzerinde yapılan uygulamalar anlaşılmaz. Uygulamalar anlaşılmadıkça ise donanım anlaşılmaz. Ancak belli bir temeli olan okuyucular bu işin üstesinden kolaylıkla gelebilir. Bu dersleri yazarken de kimseyi sıfırdan AVR programlamaya başlatma iddiasında olmadığımızı söylemiştik.

Bu dersler AVR üzerinden anlatılsa da Arduino öğrenmek için de işinize yarayacaktır. Yeri gelecek makine diline ineceğiz yeri gelecek arduino kütüphanelerine çıkacağız. Yine de sıfırdan başlayanları her zaman göz önünde bulundurup her konuyu basitleştirerek anlatmaya gayret edeceğiz. Her zaman olduğu gibi mantığını anlatmadan bırakmayacağız. Mantığını anladıkça daha keyifli program yazıp projeler yapacaksınız. Bu dersleri yazarken ben de C bilgilerimi bir  gözden geçirmiş olacağım. 🙂

Şu an dersler hazırlık aşamasındadır.  Yapıcı fikir ve görüşlerinizi benimle paylaşabilirsiniz.

 

Kapak Resmi : https://www.technotification.com/wp-content/uploads/2018/08/is-c-programming-still-worth-learning-840×500.png

Gökhan Dökmetaş

"Arduino Eğitim Kitabı" ve "Arduino ve Raspberry PI ile Nesnelerin İnterneti" kitaplarının yazarı. Başkent Teknoloji ve Dedektör Merkezi'nde Ar-ge Sorumlusu. Araştırmacı-Yazar.

You may also like...

4 Responses

  1. İlker Erbek dedi ki:

    Merhaba Gökhan bey,
    Hazır kütüphane nedeniyle çoğunluk Arduino’ya yönelmekte.. Datasheet okuma, yorumlama ve örnek kütüphane (tft, rtc v.b.)
    oluşturma konularına değinebilirseniz, başka platformlara geçişi kolaylaştıracaksınız.
    Emekleriniz için teşekkür eder,iyi çalışmalar dilerim.

  2. Huzame dedi ki:

    Merhaba sizi bir çok ortamdan takip ediyorum. Gömülü sistem için C öğrenmek için ” http://ozenozkaya.com/blog/ ” Yazılanlardan çok faydalandım. Ben de sizin dediğiniz gibi program yazarken ne yaptığımı bilmeliyim. Hangi donanıma ne yaptığımı iyi bilmeliyim. Umarım yazılarınızda aradığımı bulurum. Yazılarınızı çok faydalı buluyorum. Çalışmalarınızın devamını dilerim. Kolay gelsin.

  3. Ceyhun dedi ki:

    Selam aleykum, Azerbaycan’dan izliyorum sizleri. Çok şükür dilimiz hemen hemen aynı(türk okulu okuduğumdan dolayı benim için hemen hemen kelimesini çıkaralım). Gökhan gardaş, sana çok teşekkür etmek isterim, çok mübarek yol seçmişsiniz, bu yolun ismi HAYIR YOLU. Ben yazılarınızdan çok faydalanıyorum. Hakkınızda ne kadar güzel yazmaya çalışsam da, az olduğunu düşündüyüm için samimi kalpten bir çift kelime yazıcam: Allah rahmeti, merhameti üzerinden eksik olmasın, gardaş!

  4. Anonim dedi ki:

    standart kütüphanelerinde belli başlı kullanımlar var typdefler enumlar, bitwise işlemleri ifndef ler pointer atamaları vs bunları yeri geldiğinde kısaca anlatırsanız çok iyi olur .

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.