Ana Sayfa Arduino Eğitimleri Arduino Eğitim: Değişken Tiplerine Giriş

Arduino Eğitim: Değişken Tiplerine Giriş

Herkese tekrardan merhaba. Bu yazımızda değişken tiplerine giriş hakkında bilgiler vereceğim. Girişe başlamadan önce belirtmek istiyorum ki değişken tiplerini tam olarak kavramak için değişken tiplerini tam olarak anlayıp ne işe yaradıklarını iyi analiz etmek gerekiyor. Arduinomuzun 8 bitlik bir mikrodenetleyici oldugunu göz önünde bulundurursak kullanacagımız değişkenlerin boyutlarının bizim için ne derece önemli oldugunu bir kez daha gözler önüne serebilmiş oluruz.

Arduino Eğitim

Kısaca arduino eğitim için girişimizi yaptıktan sonra değişken tiplerinin kendilerinin nasıl seçilmesi gerektigindende bahsedelim. Arduino değişken tiplerimizi seçerken bizim neye ihtiyacımız oldugunu ve değişken tipinin bize neler sunduğunu bilmemiz gerekiyor. Mesela biz ondalık sayılarla işlem yapacaksak yani sayılarımızda virgül barındıracaksak değişken tipi olarak “float” kullanmamız gerekiyor. Aşağıda vereceğim resimde değişken tiplerinin detaylı bir şekilde görüp inceleyebilirsiniz.

Değişken tipi gelişi güzel seçilirse ne olur?

Değişken tiplerinin gelişigüzel seçilmesi proğramlarınızda taşmalara ve hatalı sonuçlara sebebiyet verecektir. Buda her programcının karşılaşmak istemedigi bir olaydır.

Değişken tiplerini nasıl seçmeliyim?

siber güvenlik

Bu sorunun kısa cevabını giriş yaparken belirtmiştim. Şimdi ise detaylı bir şekilde bu konuya deginelim. Örneğin tamsayılarla işlem yapmak istiyorsanız yani sizin işlem yapacağınız sayılar tamsayılarsa bu durumda seçmeniz gereken değişken tipine en uygun aday “int” degişken tipidir. Neden sorusunu soranlar içinse resimde paylaştığımız “int” değişkeni -32768 ila 32767 aralıgındaki degerler alabiliyor. Bu durumda tamsayılar üzerinde çalışılabilecek en uygun değişken tipi “int” haline dönüşüyor.

Sadece 0 ve 255 arasındaki tam sayılarla çalışmak istiyorum, ne yapmalıyım?

Bu durumda ise “int” değişken tipi yine kullanılabilir. Sizlerde değişken tiplerine dair biraz mantık geliştirmek için “int” in neden kullanılmaması gerektiğini anlatacağım. Yani şöyle bir durum söz konusu “int” kullanmak programda her hangi bir hataya sebebiyet vermeyecektir ancak “int” degişkenin boyutu resimdede görüldüğü gibi 4 KB dır. Ancak bu durumda biz 0-255 aralıgında değer alabilen “byte” 1 KB boyutunda ki değişken tipini kullanırsak 3KB kazanç sağlamış oluruz. Arduinomuzun kısıtlı bir işlemcisinin olmasını göz önüne alırsak uygun değişkeni seçip alandan kazanmak en büyük kârımız olacaktır.

Değişken tiplerini oluştururken dikkat edilmesi gerekenler nelerdir?

Degişken isimleri rakamlarla başlamamalıdır ayrıca değişken isimlerinde türkçe karakter içermemelidir. Örnegin (ö,ç,ş).. vs gibi. Değişken isimleri ayrık yazılmamalıdır. Örneğin sayı 1c (Arada boşluk olduğu için yanlış bir kullanımdır.)

Bu kadar bilgiden hemen sonra hadi değişkenlerle ilgili ilk programımızı yazalım! Sitemizde yazı kopyalamak bazı nedenlerden dolayı yasaktır. Bu yüzden kodları yorum kısmına kopyalacağım. Oradan kopyalayabilirsiniz.

/* Degişken kullanım örnegimiz-1

www.muhendisbeyinler.net

Hasan Basri Karakaya

*/

int sayi1 = 8; // 1. sayımızı 8 olarak seçtik.

int sayi2 = 5; // 2. sayımızı 5 olarak seçtik

int sonuc; // bu sayılarla yapacagımız işlemlerin sonucu içinse sonuc fonksiyonunu cagıracagız.

long int buyuksayi = 0;

void setup(){

Serial.begin(9600); // Seri haberleşme hızını 9600 olarak belirledik

}

void loop(){

Serial.print("8+5="); // 8+5= kısmını ekrana yazdırıyoruz.

sonuc = sayi1 + sayi2; // sayi1 ve sayi2 yi toplattık

Serial.println(sonuc); // sonuc fonksiyonumuzu okutuyoruz.

sayi1 = 1500; // sayi1'e 1500 degerini verdik

sayi2 = 1200; // sayi2'ye 1200 degerini verdik

sonuc = sayi1 * sayi2; // sayi1 ve sayi2 yi çarpıyoruz.

Serial.print("1500*1200="); // 1500*1200= kısmını ekrana yazdırıyoruz.

Serial.println(sonuc); // sonuc fonksiyonunu ekrana yazdırıyoruz

 

// Degisken tipi kullanılmadan yaptıgımız islemler

Serial.print("Donusum yapilmadan 1500*1200=");

buyuksayi = sayi1 * sayi2; // sayi1 ve sayi2 yi çarpıyoruz.

Serial.println(buyuksayi); // sonucu ekrana yazdiriyoruz.

/*

Yukarıda yaptıgımız işlemlerin tamamının sonucu yanlış çıkacaktır.

sebebi ise degişken tiplerini uygun şekilde kullanmamış olmamızdır.

şimdi aşagıda degişken tiplerini düzgün bir şekilde kullanarak,

dogru sonucu ekrana yazdıracagız.

*/

Serial.print("Donusum yapilarak 1500*1200=");

buyuksayi = (long)(sayi1) * (long)(sayi2);

/*

sayi1 ve sayi2 nin önlerinden yer alan (long) degiskenimiz bu sayilari o türe dönüştürüyor.

bu sayede dogru sonucu elde etmemizi sagliyor.

*/

Serial.println(buyuksayi);

 

while(1); // programımızı kitledik.

 

}

Programımızda neler yaptığımızı yanlarına yorum kısımları açarak belirttim. Eğer yine anlamadığınız bir kısım olursa yorum üzerinden sorabilirsiniz. Degişken tanımlamaları ile ilgili ilk yazımızın sonuna geldik, bir sonraki yazımızda görüşmek üzere esen kalın.  Arduino ile ilgili diğer yazılarımızı Arduino kategorisinden takip edebilirsiniz.

arıcılık malzemeleri
Hasan Basri Karakaya
Hasan Basri Karakaya
Kahramanmaraş Sütçü İmam Üniversitesi Elektrik-Elektronik Mühendisliği bölümünden 2018 yılında mezun oldum. Şu anda aynı üniversite Fotovoltaik Hücrelerde Maksimum Güç Noktası Takibinde Kullanılan Optimizasyon Algoritmaları üzerine yüksek lisans tez çalışmama devam etmekteyim . İş Güvenliği Uzmanı olmam sebebiyle İş Güvenliği mevzuatını yakından takip ediyorum. Saygılarımla.

1 Yorum

  1. Merhaba Hasan Bey,
    diyelimki bir sensör değişkeni tanıttık
    int sensor;
    bu int tanımının 0 ila 100 arasında değer almasını istiyorum ne yapmam gerek li?
    yada menu sistemi kullanırken menuden gireceğim değişken değerinin 0-100 arasında olmasını istiyorum,100 ü geçtikten sonra tekrar 0 a dönsün.

Düşünceleriniz Nedir?

Lütfen yorumunuzu buraya yazınız.
Lütfen isminizi buraya yazını.

Yazar Ol arıcılık malzemeleri siber güvenlik

Yeni Yazılar

Meltblown Maske Kumaşı Nasıl Anlaşılır

Pandemi döneminde önemi giderek artan maskelerin bizi ne kadar koruyabildiğine dair herkesin aklında belirli başlı sorular gelmektedir. Bu makalede genel olarak en çok tercih...

Kolonya mı El Dezenfektanı mı?

Kolonya ve el dezenfektanları arasındaki fark nedir? Antiseptik özelliği hangisinde daha fazladır? Kolonya: Kolonya, su ve çeşitli esans karışımları ile yüzde 60 ile 80...

Parça Tasarımı Nasıl Yapılır

Mühendis beyinlerde yeni bir yazar olarak bir yazı dizisi başlatmayı planlıyorum. Bu yazı dizisinde bir makine parçasının bilgisayar ortamında modellenmesi hakkında bilgiler yer alacak. Bir...

Takla Atarken Fotoğrafı Bulunan Jandarma Helikopteri Sikorsky S-70’in Hikayesi

Yabancı haber sitelerine kadar düşen bu meşhur fotoğrafla ilgili internette bir bilgi kirliliği mevcut. Doğrusunu dinliyoruz. İnternette sağda solda bu helikopteri takla atarken gösteren bir...

Mühendislik Maaşları

Kimya Teknolojisi Bölümü Maaşları

Üniversitelerin 2 yıllık bölümlerinin öğrencilere iyi meslekler kazandırmadığını düşünmek son derece yanlıştır. Gereksiz olan ön lisans bölümleri bulunsa da bazı 2 yıllık bölümler kişilerin...

Endüstriyel Tasarım Mühendisliği Maaşları

Endüstriyel tasarım mühendisliği nedir ve ne iş yapar? Lise öğretiminden mezun olan öğrenciler yükseköğretime geçiş sınavına girecek ve bu bölüm endüstriyel tasarım mühendisliği maaşları...

Ziraat Mühendisliği Maaşları

Bu yazımızda sizlere ziraat mühendisliği maaşları ve ziraat mühendisliği hakkında bilgiler vereceğiz. Ziraat mühendisliği, tarla ve bahçe bitkileri üretimi, büyük ve küçükbaş hayvan yetiştiriciliği...

Ağaç İşleri Endüstri Mühendisliği Maaşları

Ağaç işleri endüstri mühendisi kimdir? Ağaç işleri endüstri mühendisi, üniversitelerin 4 yıllık eğitim veren bölümünde okuyarak, ahşap(ağaç sektörü) ile ilgili olan alanlarda işleri, işlemleri yapabilecek...