int slewPin = 2;
int aSeg = 3;
int bSeg = 4;
int cSeg= 5;
int dSeg= 6;
int eSeg= 7;
int fSeg= 8;
int gSeg= 9;
void setup() {
pinMode(aSeg, OUTPUT);
pinMode(bSeg, OUTPUT);
pinMode(cSeg, OUTPUT);
pinMode(dSeg, OUTPUT);
pinMode(eSeg, OUTPUT);
pinMode(fSeg, OUTPUT);
pinMode(gSeg, OUTPUT);
pinMode(slewPin, INPUT_PULLUP);
Serial.begin(9600);
randomSeed(analogRead(0));
}
void loop() {
// Read the HIGH or LOW value of the SLEW BUTTON to see if it was pushed and give it a variable name of voltVal
int voltVal = digitalRead(slewPin);
delay(150); // debounce is needed here
// If the SLEW button was pushed then generate a random number between 1 and 6 and store the result in the variable named dieRoll
if(voltVal == LOW) {
int dieRoll = random(1,7);
Serial.println(dieRoll);
// delay(150); might not be needed
//Check the value of the dieRoll variable against the numbers 1 to 6 and do something different in each case
if (dieRoll == 1) {
digitalWrite(aSeg, LOW);
digitalWrite(bSeg, HIGH);
digitalWrite(cSeg, HIGH);
digitalWrite(dSeg, LOW);
digitalWrite(eSeg, LOW);
digitalWrite(fSeg, LOW);
digitalWrite(gSeg, LOW);
// delay(150);
}
if (dieRoll == 2) {
digitalWrite(aSeg, HIGH);
digitalWrite(bSeg, HIGH);
digitalWrite(cSeg, LOW);
digitalWrite(dSeg, HIGH);
digitalWrite(eSeg, HIGH);
digitalWrite(fSeg, LOW);
digitalWrite(gSeg, HIGH);
// delay(150);
}
if (dieRoll == 3) {
digitalWrite(aSeg, HIGH);
digitalWrite(bSeg, HIGH);
digitalWrite(cSeg, HIGH);
digitalWrite(dSeg, HIGH);
digitalWrite(eSeg, LOW);
digitalWrite(fSeg, LOW);
digitalWrite(gSeg, HIGH);
// delay(150);
}
if (dieRoll == 4) {
digitalWrite(aSeg, LOW);
digitalWrite(bSeg, HIGH);
digitalWrite(cSeg, HIGH);
digitalWrite(dSeg, LOW);
digitalWrite(eSeg, LOW);
digitalWrite(fSeg, HIGH);
digitalWrite(gSeg, HIGH);
// delay(150);
}
if (dieRoll == 5) {
digitalWrite(aSeg, HIGH);
digitalWrite(bSeg, LOW);
digitalWrite(cSeg, HIGH);
digitalWrite(dSeg, HIGH);
digitalWrite(eSeg, LOW);
digitalWrite(fSeg, HIGH);
digitalWrite(gSeg, HIGH);
// delay(150);
}
if (dieRoll == 6) {
digitalWrite(aSeg, HIGH);
digitalWrite(bSeg, LOW);
digitalWrite(cSeg, HIGH);
digitalWrite(dSeg, HIGH);
digitalWrite(eSeg, HIGH);
digitalWrite(fSeg, HIGH);
digitalWrite(gSeg, HIGH);
// delay(150);
}
}
}