well this is what i managed to do and it doesn't work all 7 segments just light up when i turn the arduino on
int ledPin1 = 2;
int ledPin2 = 3;
int ledPin3 = 4;
int ledPin4 = 5;
int ledPin5 = 6;
int ledPin6 = 7;
int ledPin7 = 8;
int inputPin = 10; // switch wired between input and ground
int val = 0;
long endTime;
void setup() {
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(ledPin4, OUTPUT);
pinMode(ledPin5, OUTPUT);
pinMode(ledPin7, OUTPUT);
pinMode(ledPin6, OUTPUT);
pinMode(inputPin, INPUT);
digitalWrite(inputPin,HIGH); // enable internal pull up resistor
}
void loop () {
val = digitalRead(inputPin);
digitalRead(inputPin);
while (val == HIGH);
{
digitalWrite(ledPin1, HIGH); // number 1
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, HIGH);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, LOW); // number 2
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, HIGH);
digitalWrite(ledPin7, LOW);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, LOW); // number 3
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, LOW);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, HIGH); // number 4
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, HIGH);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, LOW); // number 5
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, HIGH);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, LOW);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, HIGH); // number 6
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, HIGH);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, LOW);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, LOW); // number 7
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, HIGH);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, LOW); // number 8
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, LOW);
}
while (val =! HIGH);
delay (val == HIGH);
digitalRead(inputPin) ;
while (val == HIGH);
{
digitalWrite(ledPin1, LOW); // number 9
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, HIGH);
}
while (val =! HIGH);
delay (val == HIGH);
while (val == HIGH);
while (val == HIGH);
{
digitalWrite(ledPin1, LOW); // number 0
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
digitalWrite(ledPin6, LOW);
digitalWrite(ledPin7, LOW);
}
while (val =! HIGH);
delay (val == HIGH);
}
i took the code at the end out because i wasent using the holdDelay () function anymore
i also thought putting while (val == HIGH); twice at the beginning wouldn't be correct so i put digitalRead(inputPin) then while (val == HIGH);