// int trig = 7;
// int echo = 6;
// long timeInMicro;
// int distanceInCm;
const int buttonPin = 13;
const int led1 = 10;
const int led2 = 11;
const int led3 = 12;
const int led0 = 9;
const int pwmPin = 3;
const int S0 = A2;
const int S1 = A3;
const int S2 = A4;
const int S3 = A5;
int buttonState = 0;
int counter = 0;
int fadeValue = 0;
void setup() {
// Serial.begin(9600);
// pinMode(7, OUTPUT);
// pinMode(6,INPUT);
pinMode(led0, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(S0, OUTPUT);
pinMode(S1, OUTPUT);
pinMode(S2, OUTPUT);
pinMode(S3, OUTPUT);
pinMode(buttonPin, INPUT);
pinMode(pwMPin, OUTPUT);
digitalWrite(S3, 0);
digitalWrite(S3, 0);
digitalWrite(S3, 0);
digitalWrite(S3, 0);
Serial.begin(9600);
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
// digitalWrite(trig, LOW);
// delayMicroseconds(2);
// digitalWrite(trig, HIGH);
// delayMicroseconds(10);
// digitalWrite(trig, LOW);
// timeInMicro = pulseIn(echo, HIGH);
// distanceInCm = timeInMicro / 29 / 2;
// Serial.println(distanceInCm);
buttonState = digitalRead(buttonPin);
if(buttonState == HIGH){
moveNext();
delay(500);
}
// delay(100);
}
void moveNext() {
if (counter < 3) counter += 1;
else counter = 0;
bool a = bitRead(counter, 0);
bool b = bitRead(counter, 1);
bool c = bitRead(counter, 2);
bool d = bitRead(counter, 3);
digitalWrite(S0, a);
digitalWrite(S1, b);
digitalWrite(S2, c);
digitalWrite(S3, d);
digitalWrite(led0, a);
digitalWrite(led1, b);
digitalWrite(led2, c);
digitalWrite(led3, d);
Serial.print(a);
Serial.print(b);
Serial.print(c);
Serial.println(d);
}