Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Manvi Mittal
- * Dice Prototype with 6 LEDs and random
- */
- const int pinLed1 = 2;
- const int pinLed2 = 3;
- const int pinLed3 = 4;
- const int pinLed4 = 8;
- const int pinLed5 = 9;
- const int pinLed6 = 10;
- const int pinButt = 5;
- boolean buttPressed = 0;
- boolean ledOn = 0;
- boolean prevButt = 0;
- int randito = 0;
- void setup()
- {
- // put your setup code here, to run once:
- pinMode (pinLed1, OUTPUT);
- pinMode (pinLed2, OUTPUT);
- pinMode (pinLed3, OUTPUT);
- pinMode (pinLed4, OUTPUT);
- pinMode (pinLed5, OUTPUT);
- pinMode (pinLed6, OUTPUT);
- pinMode (pinButt, INPUT);
- Serial.begin (9600);
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, HIGH);
- digitalWrite (pinLed3, HIGH);
- digitalWrite (pinLed4, HIGH);
- digitalWrite (pinLed5, HIGH);
- digitalWrite (pinLed6, HIGH);
- delay (500);
- digitalWrite (pinLed1, LOW);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, LOW);
- digitalWrite (pinLed4, LOW);
- digitalWrite (pinLed5, LOW);
- digitalWrite (pinLed6, LOW);
- randomSeed (analogRead (A0));
- }
- void loop()
- {
- // put your main code here, to run repeatedly:
- buttPressed = digitalRead (pinButt);
- //Serial.print (buttPressed);
- buttPressed = debounce (prevButt);
- if (prevButt == LOW && buttPressed == HIGH)
- {
- randito = random(6) + 1;
- /*
- * random (6) + 1 is the same as random (1, 7) which is [1, 7) because random 6 is [0, 6)
- */
- Serial.print (randito);
- }
- switch (randito)
- {
- case 1:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, LOW);
- digitalWrite (pinLed4, LOW);
- digitalWrite (pinLed5, LOW);
- digitalWrite (pinLed6, LOW);
- break;
- case 2:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, LOW);
- digitalWrite (pinLed4, LOW);
- digitalWrite (pinLed5, LOW);
- digitalWrite (pinLed6, HIGH);
- break;
- case 3:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, LOW);
- digitalWrite (pinLed4, LOW);
- digitalWrite (pinLed5, HIGH);
- digitalWrite (pinLed6, HIGH);
- break;
- case 4:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, HIGH);
- digitalWrite (pinLed4, HIGH);
- digitalWrite (pinLed5, LOW);
- digitalWrite (pinLed6, HIGH);
- break;
- case 5:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, HIGH);
- digitalWrite (pinLed4, HIGH);
- digitalWrite (pinLed5, HIGH);
- digitalWrite (pinLed6, HIGH);
- break;
- case 6:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, HIGH);
- digitalWrite (pinLed3, HIGH);
- digitalWrite (pinLed4, HIGH);
- digitalWrite (pinLed5, HIGH);
- digitalWrite (pinLed6, HIGH);
- break;
- }
- prevButt = buttPressed;
- }
- boolean debounce(boolean last)
- {
- boolean current = digitalRead(pinButt);
- if (last != current)
- {
- delay(5);
- current = digitalRead(pinButt);
- }
- return current;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement