Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.77 KB | None | 0 0
  1. // PIN ASSIGNMENTS //
  2. #define BUTTON1 2
  3. #define BUTTON2 4
  4. #define LED1 6
  5. #define LED2 9
  6. #define PIEZO 11
  7.  
  8. void setup() {
  9.   pinMode(BUTTON1, INPUT);
  10.   pinMode(BUTTON2, INPUT);
  11.   pinMode(LED1, OUTPUT);
  12.   pinMode(LED2, OUTPUT);
  13.   pinMode(PIEZO, OUTPUT);
  14.  
  15.   // BLINK LED1 TWICE TO VISUALLY CONFIRM STARTUP //
  16.   for(int a = 0; a < 2; a++) {
  17.     digitalWrite(LED1, HIGH);
  18.     delay(500);
  19.     digitalWrite(LED1, LOW);
  20.     delay(500);
  21.   }
  22.   delay(500);
  23. }
  24.  
  25. void loop() {
  26.  
  27.   // buttonState IS HIGH (1) WHEN BUTTON IS PRESSED.
  28.   // AND IT IS LOW (0) WHEN BUTTON IS NOT PRESSED.
  29.   int buttonState1 = digitalRead(BUTTON1);
  30.   int buttonState2 = digitalRead(BUTTON2);
  31.  
  32.   if (buttonState1 == HIGH) {
  33.     for (int b = 0; b < 255; b++) {
  34.       analogWrite(LED1, b);
  35.       delay(5);
  36.       //CLEANING UP THE TONE
  37.       if ((b*10)/tan(b) < 100 || (b*10)/tan(b) > 5000) {
  38.         //DO NOTHING!
  39.       }
  40.       else {
  41.       tone(PIEZO, (b*10)/tan(b));
  42.       }
  43.     }
  44.     for(int b = 255; b > 0; b--) {
  45.       analogWrite(LED1, b);
  46.       delay(5);
  47.       //CLEANING UP THE TONE, AGAIN!
  48.       if ((b*10)/tan(b) < 100 || (b*10)/tan(b) > 5000) {
  49.         //DO NOTHING, AGAIN!
  50.       }
  51.       else {
  52.       tone(PIEZO, (b*10)/tan(b));
  53.       }
  54.     }
  55.     noTone(PIEZO);
  56.     digitalWrite(LED1, LOW);
  57.     winGame();
  58.   }
  59.   else if (buttonState2 == HIGH) {
  60.     tone(PIEZO, 50);
  61.     for(int c = 0; c < 2; c++) {
  62.       digitalWrite(LED2, HIGH);
  63.       delay(500);
  64.       digitalWrite(LED2, LOW);
  65.       delay(500);
  66.     }
  67.     noTone(PIEZO);
  68.     loseGame();
  69.   }
  70.  
  71. }
  72.  
  73. void winGame() {
  74.   for(int z = 0; z < 3000; z++) {
  75.     tone(PIEZO,z);
  76.     delay(1);
  77.   }
  78.   noTone(PIEZO);
  79. }
  80.  
  81. void loseGame() {
  82.   for(int z = 3000; z > 0; z--) {
  83.     tone(PIEZO,z);
  84.     delay(1);
  85.   }
  86.   noTone(PIEZO);
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement