Last active
October 28, 2019 07:18
-
-
Save RobolinkAkademi/de6d416578eca7571c5d1a60110a01cd to your computer and use it in GitHub Desktop.
tum_yil_icin_arduino_mufredati_34,2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#define DEBUG 0 | |
// 6 ledin bağlandığı pinler | |
int birinci = 2; | |
int ikinci = 3; | |
int ucuncu = 4; | |
int dortuncu = 5; | |
int bensinci = 6; | |
int altinci = 7; | |
// butonun bağlandığı pinler | |
int button = 12; | |
// butonun değerini kontrol etmek için değişken | |
int basilma = 0; | |
void setup() { | |
// bütün pinlerin çıkış olarak tanımlanması | |
for (int i=birinci; i<=altinci; i++) { | |
pinMode(i, OUTPUT); | |
} | |
// butonun giriş olarak tanımlanması | |
pinMode(button, INPUT); | |
// rastgele sınıflamanın A0 dan başlaması | |
randomSeed(analogRead(0)); | |
// hata varsa serial ekrana bağlan | |
#ifdef DEBUG | |
Serial.begin(9600); | |
#endif | |
} | |
void buildUpTension() { | |
// ledlerin sağdan sola yanmasını sağlamak | |
for (int i=birinci; i<=altinci; i++) { | |
if (i!=birinci) { | |
digitalWrite(i-1, LOW); | |
} | |
digitalWrite(i, HIGH); | |
delay(100); | |
} | |
// soldan sağa | |
for (int i=altinci; i>=birinci; i--) { | |
if (i!=altinci) { | |
digitalWrite(i+1, LOW); | |
} | |
digitalWrite(i, HIGH); | |
delay(100); | |
} | |
} | |
void gostersayi(int sayi) { | |
digitalWrite(birinci, HIGH); | |
if (sayi >= 2) { | |
digitalWrite(ikinci, HIGH); | |
} | |
if (sayi >= 3) { | |
digitalWrite(ucuncu, HIGH); | |
} | |
if (sayi >= 4) { | |
digitalWrite(dortuncu, HIGH); | |
} | |
if (sayi >= 5) { | |
digitalWrite(bensinci, HIGH); | |
} | |
if (sayi == 6) { | |
digitalWrite(altinci, HIGH); | |
} | |
} | |
int throwDice() { | |
//1-6 arasında rastgele sayı üretmek | |
int rastgelesayi = random(1,7); | |
#ifdef DEBUG | |
Serial.println(rastgelesayi); | |
#endif | |
return rastgelesayi; | |
} | |
void setAllLEDs(int value) { | |
for (int i=birinci; i<=altinci; i++) { | |
digitalWrite(i, value); | |
} | |
} | |
void loop() { | |
// eğer butona basılmış ise | |
basilma = digitalRead(button); | |
if (basilma == HIGH) { | |
// önceki sayıyı kaldır | |
setAllLEDs(LOW); | |
buildUpTension(); | |
int thrownsayi = throwDice(); | |
gostersayi(thrownsayi); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment