Arduino Çoklu Led

Katılım
2 May 2020
Mesajlar
5
Puanları
1
Yaş
25
Öncelikle herkese merhaba ben bir konuda sizden yardım istiyorum benim kendi yazdığım arduino kodu var ve sırayla ledler yanıyor fakat istenen projeyi nasıl yapacağım konusunda yani ;

1. Aynı anda 1 led baştan 1 led ortadan (5 nolu indis) açılacak şekilde, sırayla diğer ledleri de yakıp söndürme fonksiyonu.
2. Aynı anda 1 Led Baştan 1 Led Sondan açılacak ve ortada buluşacak şekilde her seferinde ledleri yakıp söndürme fonksiyonu.

bunları kendi koduma uyarlayamıyorum tasarladığım devre şemasını da yazdığım ve baştan sona sayan kodu da koyuyorum yardımcı olabileceklere şimdiden teşekkür ederim.

Yazdığım ve baştan sona ledleri yakan kod
Kod:
int LedDizim[]={2,3,4,5,6,7,8,9,10,11};

void setup()

{

for (int i=0;i<10;i++)

{

     pinMode(LedDizim, OUTPUT);

}

}

void loop()

{

  for (int i=0;i<10;i++)

  {

   digitalWrite(LedDizim, HIGH);

  delay(500); // Wait for 1000 millisecond(s)

  digitalWrite(LedDizim, LOW);

  delay(500); // Wait for 1000 millisecond(s)

  }

}
 

Ekli dosyalar

  • Adsız.png
    67.8 KB · Görüntüleme: 14
Moderatör tarafında düzenlendi:
Arduino kullanmıyorum ama
for (int i=0;i<10;i++)
{
digitalWrite(LedDizim, HIGH);
delay(500); // Wait for 1000 millisecond(s)
digitalWrite(LedDizim, LOW);
delay(500); // Wait for 1000 millisecond(s)
}
Kısmını aşağıdaki gibi değiştirmen gerekir
Kod:
for (int i=0;i<10;i++)
{
digitalWrite(LedDizim[i], HIGH);
delay(500); // Wait for 1000 millisecond(s)
digitalWrite(LedDizim[i], LOW);
delay(500); // Wait for 1000 millisecond(s)
}
pinmode kısmındada
Kod:
LedDizim
değil,
Kod:
LedDizim[i]
olacak
diye düşünüyorum.

Arduino kullananlar daha doğrusunu yazacaklardır.
 
Maalesef hocam hata veriyor ben size yazdığım kodun uzun halini de atayım daha açıklayıcı olur belki
Kod:
int LedDizim[]={2,3,4,5,6,7,8,9,10,11};

void setup()

{

for (int i=0;i<10;i++)

{

     pinMode(LedDizim, OUTPUT);

}

}

void loop()

{

  //SiraylaAcKapa();

  SiraylaOnceHepsiniAc();

}

void SiraylaAcKapa()

{

  for(int i=0;i<10;i++)

  {

   digitalWrite(LedDizim,HIGH);

   delay(500);

   digitalWrite(LedDizim,LOW);

   delay(500);

  }

}



void SiraylaOnceHepsiniAc()

{

  for(int i=0;i<10;i++)

  {

   digitalWrite(LedDizim,HIGH);

   delay(500);

  }

  for(int i=0;i<10;i++)

  {

   digitalWrite(LedDizim,LOW);

   delay(500);

  }

}
 
Moderatör tarafında düzenlendi:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…