Dizi Yapısı
- Mert KESER
- 1 Oca
- 2 dakikada okunur
Bu dersimizde arduino projelerinde dizi kullanımını göreceğiz. Dizi mantığı sizlere derslerde anlattığım bir okul içerisinde aynı özelliklere sahip ( yaş grubu , okula giriş sırası , okuldaki derslerinde başarı sırası vb ) öğrencileri sınıflara yerleştirme örneğinden bahsetmiştim. Örneğin okula geldiğimde 5H sınıfındaki öğrencileri bir araya getirmek istiyorum ancak okuldaki öğrencilerin tenefüste olduğunu ve dolayısıyla tüm öğrencilerin okul içerisinde karışık şekilde olduğunu düşünürsek mantıklı olanın zil çaldığında tüm öğrencilerin kendine ait sınıflara girmesini beklemek ve bu şekilde 5H sınıfındaki öğrencileri kendi sınııflarından almanın daha kolay olduğundan bahsetmiştim. Burada sınıf olarak nitelendirdiğimiz aslında konumuz dizi ile aynıdır. Dizi yapısı birbiri ile aynı özelliklere sahip nesnelerin bir sınıfa (kutu örneği görebilirsiniz dolap örneği görebilirsiniz) konulmasıdır. Burada dikkat edilmesi gereken husus " kaçıncı eleman olduğudur ". Örneğin bir dizinin "1." elemanı aslında o dizinin "2." elemanıdır. Çünkü dizide "kaçıncı eleman?" sorusunun cevabına biz "indis" değeri deriz ve daima dizinin ilk elemanı "0." elemandır.
Örnek kodlar :
int leds[] = {2, 3, 4, 5, 6}; // LED pinlerinin dizisi
// 0. 1. 2. 3. 4. indis değerleri
void setup()
{
pinMode(leds[0],OUTPUT); // 2 numaralı led bağlı pini çıkış pini ayarla
pinMode(leds[1],OUTPUT); // 3 numaralı led bağlı pini çıkış pini ayarla
pinMode(leds[2],OUTPUT); // 4 numaralı led bağlı pini çıkış pini ayarla
pinMode(leds[3],OUTPUT); // 5 numaralı led bağlı pini çıkış pini ayarla
pinMode(leds[4],OUTPUT); // 6 numaralı led bağlı pini çıkış pini ayarla
}
void loop()
{
// LED'leri sırasıyla açma
digitalWrite(leds[0], HIGH); // 2 numaralı LED'i aç
delay(500); // 0.5 saniye bekle
digitalWrite(leds[0], LOW); // 2 numaralı LED'i kapat
delay(500); // 0.5 saniye bekle
digitalWrite(leds[1], HIGH); // 3 numaralı LED'i aç
delay(500); // 0.5 saniye bekle
digitalWrite(leds[1], LOW); // 3 numaralı LED'i kapat
delay(500); // 0.5 saniye bekle
digitalWrite(leds[2], HIGH); // 4 numaralı LED'i aç
delay(500); // 0.5 saniye bekle
digitalWrite(leds[2], LOW); // 4 numaralı LED'i kapat
delay(500); // 0.5 saniye bekle
digitalWrite(leds[3], HIGH); // 5 numaralı LED'i aç
delay(500); // 0.5 saniye bekle
digitalWrite(leds[3], LOW); // 5 numaralı LED'i kapat
delay(500); // 0.5 saniye bekle
digitalWrite(leds[4], HIGH); // 6 numaralı LED'i aç
delay(500); // 0.5 saniye bekle
digitalWrite(leds[4], LOW); // 6 numaralı LED'i kapat
delay(500); // 0.5 saniye bekle
}
Yukarıdaki kodlar dizi yapısı ve bir diziden elemanları indis değerleri ile çağırarak açma kapama kodlarıdır.





