Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const int LED1 = 2;
- const int LED2 = 4;
- const int LED3 = 7;
- const int LED4 = 8;
- const int LED5 = 12;
- const int LED6 = 13;
- const int LEDarray[] = {2,4,7,8,12,13};
- const int constantInterval = 50;
- int curLED = 0; // ledState used to set the LED
- void setup() {
- Serial.begin(9600);
- pinMode(LED1, OUTPUT);
- pinMode(LED2, OUTPUT);
- pinMode(LED3, OUTPUT);
- pinMode(LED4, OUTPUT);
- pinMode(LED5, OUTPUT);
- pinMode(LED6, OUTPUT);
- }
- void loop() {
- unsigned long currentMillis = millis();
- int input = analogRead(A0);
- int interval = constantInterval;
- //to balance between left and right side
- if(input < 512){
- interval = constantInterval + input;
- }else{
- interval = 512-(input-512) + constantInterval;
- }
- //for debugging purpose (do they affect clock rate?)
- // Serial.println(interval);
- // Serial.println(curLED);
- if (currentMillis - previousMillis >= interval) {
- // save the last time you blinked the LED
- previousMillis = currentMillis;
- //reset the state
- digitalWrite(LED1, LOW);
- digitalWrite(LED2, LOW);
- digitalWrite(LED3, LOW);
- digitalWrite(LED4, LOW);
- digitalWrite(LED5, LOW);
- digitalWrite(LED6, LOW);
- if (input < 512){ //<-- left side
- curLED-=1;
- if (curLED < 0){
- curLED = 5;
- }
- }else{ //<-- right side
- curLED+=1;
- if (curLED > 5){
- curLED = 0;
- }
- }
- //set the curLED on V1
- digitalWrite(LEDarray[curLED], HIGH);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement