Kapat

Arduino Mega İle Animasyonlu Led Uygulaması

Anasayfa
Uncategorized Arduino Mega İle Animasyonlu Led Uygulaması
Arduino Mega İle Animasyonlu Led Uygulaması

Merhaba arkadaşlar,
Elimizde bir adet arduino mega vardı ve bizde led uygulaması yaptık. Animasyonlu led uygulamamızda 6 adet led kullanılmaktadır. Dilerseniz bu sayıyı arttırıp çoğaltabilirsiniz. Top sizde

Malzeme Listesi
 6 adet led 
1 adet arduino(benimki mega)
yeteri kadar jumper kablo

Evet Şimdide Bağlantı şemasına gelelim



Bağlantı Şeması

ARDUNİO PROGRAMINI AÇIYORUZ VE AŞAĞIDAKİ KODU YAPIŞTIRIYORUZ

KOD

int LEDCOUNT = 6;
int pwmLEDPins[6] = {3, 5, 6, 9, 10, 11};
  
  
void setup() {
  Serial.begin(9600);
  for (int i = 0; i < LEDCOUNT; i++) {
    pinMode(pwmLEDPins[i], OUTPUT);
  }
}
  
void loop() {
  seqOne();
  seqTwo();
  seqThree();
  seqFour();
  seqFive();
  turnAll(LOW);
  delay(2000);
}
  
void seqOne() {
  int seqOne[6] = {0, 0, 0, 0, 0, 0  };
  for (int j = 0; j < 5; j++) {
    for (int i = 0; i < LEDCOUNT; i++) {
      seqOne[i] = ~seqOne[i];
      digitalWrite(pwmLEDPins[i], seqOne[i]);
      delay(50);
    }
  }
}
  
void seqTwo() {
  int seqTwo[6] = {0, 1, 0, 1, 0, 1  };
  for (int j = 0; j < 5; j++) {
    for (int i = 0; i < LEDCOUNT; i++) {
      seqTwo[i] = ~seqTwo[i];
      digitalWrite(pwmLEDPins[i], seqTwo[i]);
      delay(100);
    }
  }
}
  
void seqThree() {
  int seqThree[6] = {0, 0, 0, 0, 0, 0  };
  for (int j = 0; j < 5; j++) {
    for (int i = 0; i < LEDCOUNT; i++) {
      seqThree[i] = ~seqThree[i];
      digitalWrite(pwmLEDPins[i], seqThree[i]);
      delay(100);
    }
    for (int i = (LEDCOUNT-1); i >= 0; i--) {
      seqThree[i] = ~seqThree[i];
      digitalWrite(pwmLEDPins[i], seqThree[i]);
      delay(50);
    }
  }
}
  
void seqFour() {
  int seqFour[6] = {0, 0, 0, 0, 0, 0  };
  for (int k = 0; k < 5; k++) {
    for (int j = 0; j < 240; j++) {
      for (int i = 0; i < LEDCOUNT; i++) {
        analogWrite(pwmLEDPins[i], j);
        seqFour[i] = j;
      }
      delay(2);
    }
  
    for (int j = 192; j >= 0; j--) {
      for (int i = 0; i < LEDCOUNT; i++) {
        analogWrite(pwmLEDPins[i], j);
        seqFour[i] = j;
      }
      delay(5);
    }
  }
}
  
void seqFive() {
  int seqFive[6] = {1, 1, 1, 0, 0, 0  };
  for (int j = 0; j < 50; j++) {
    for (int i = 0; i < LEDCOUNT; i++) {
      seqFive[i] = !seqFive[i];
      digitalWrite(pwmLEDPins[i], seqFive[i]);
    }
    delay((1500/(j+1)));
  }
}
  
void turnAll(int value) {
  for (int i = 0; i < LEDCOUNT; i++) {
    digitalWrite(pwmLEDPins[i], value);
  }
}

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir