#include <Servo.h>
Servo Switch;
//variables
const int ts = 13;
const int one = 4;
const int two = 5;
const int three = 6;
const int four = 7;
const int five = 8;
const int six = 9;
const int serv = 3;
const int button = 10;
int ran;
bool INT = false;
void setup()
{
Switch.attach(3);
Serial.begin(9600);
//output
pinMode(ts , OUTPUT);
pinMode(one , OUTPUT);
pinMode(two , OUTPUT);
pinMode(three , OUTPUT);
pinMode(four , OUTPUT);
pinMode(five , OUTPUT);
pinMode(six , OUTPUT);
pinMode(serv , OUTPUT);
//input
pinMode(button , INPUT);
//internal
randomSeed(analogRead(0));
}
void loop()
{
ran = random(4, 10);
if(digitalRead(button) == HIGH and INT == false)
{
delay(100);
INT = true;
start();
}
}
void start()
{
for (int x = 4; x < 10 ; x++)
{
digitalWrite(x, HIGH);
delay(100);
digitalWrite(x, LOW);
}
for (int y = 4; y < 10 ; y++)
{
digitalWrite(y, HIGH);
delay(100);
digitalWrite(y, LOW);
}
for (int y = 4; y < 10 ; y++)
{
digitalWrite(y, HIGH);
delay(100);
digitalWrite(y, LOW);
}
for (int x = 4; x < 10 ; x++)
{
if(x != ran)
{
digitalWrite(x, HIGH);
delay(100);
digitalWrite(x, LOW);
}
else
{
INT = false;
Switch.write((ran-4)*36);
x = 30;
digitalWrite(ran, LOW);
delay(250);
digitalWrite(ran, HIGH);
delay(250);
digitalWrite(ran, LOW);
delay(250);
digitalWrite(ran, HIGH);
delay(250);
digitalWrite(ran, LOW);
delay(250);
digitalWrite(ran, HIGH);
delay(250);
digitalWrite(ran, LOW);
delay(250);
digitalWrite(ran, HIGH);
delay(250);
digitalWrite(ran, LOW);
delay(750);
digitalWrite(ran, HIGH);
digitalWrite(ts, HIGH);
delay(1050);
digitalWrite(ran, LOW);
digitalWrite(ts, LOW);
}
}
}