2017년 11월 7일 화요일

Touch Sensor를 활용한 Control (Arduino Code)

void setup() {
  pinMode(2, INPUT);
  pinMode(A0, INPUT);
  pinMode(A1, INPUT);
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);
  Serial.begin(9600);
}

int slideSensor;
int soundSensor;
int touchSensor;
int val, onoff;
int lstatus = 0;
int oldSensor;
int statusChange;

void loop() {
  slideSensor = map(analogRead(A0), 500, 950, 0, 6);
  Serial.println(slideSensor);
  soundSensor = map(analogRead(A1), 0, 1023, 0, 255);
  touchSensor = digitalRead(2);

  if (touchSensor != oldSensor) {
    statusChange = 1;
    oldSensor = touchSensor;
  } else {
    statusChange = 0;
  }
  //  Serial.println(statusChange);
  if (statusChange == 1 && touchSensor > 0) {
    val++;
    delay(100);
  }


  if (val % 2 == 1) {
    analogWrite(9, 254) ;
    analogWrite(10, 254) ;
    analogWrite(11, 254) ;


    if (slideSensor < 1) {
      digitalWrite(9, LOW) ;
      analogWrite(10, 255) ;
      analogWrite(11, LOW) ;
    }
    if (slideSensor < 2) {
      digitalWrite(9, 255) ;
      analogWrite(10, LOW) ;
      digitalWrite(11, LOW) ;
    }
    else if (slideSensor < 3) {
      digitalWrite(9, LOW) ;
      digitalWrite(10, LOW) ;
      analogWrite(11, 255) ;
    }
    else if (slideSensor < 4) {
      analogWrite(9, 255) ;
      analogWrite(10, 255) ;
      digitalWrite(11, LOW) ;
    }
    else if (slideSensor < 5) {
      analogWrite(9, 128) ;
      analogWrite(10, 128) ;
      digitalWrite(11, LOW) ;
    }
    else if (slideSensor < 6) {
      analogWrite(9, 40) ;
      analogWrite(10, 128) ;
      analogWrite(11, 255) ;
    }

    if (soundSensor > 25) {
      analogWrite(9, random(255)) ;
      analogWrite(10, soundSensor);
      analogWrite(11, random(255));
      delay(90);
    }

  }
  else {
    digitalWrite(9, LOW) ;
    digitalWrite(10, LOW) ;
    digitalWrite(11, LOW) ;
  }
}

댓글 없음:

댓글 쓰기

미래를 위한 제품 디자인 소개 (졸업전 소개글)

"미래는 예측하는 것이 아니라 만들어가는 것이다." 우리가 강연이나 SNS를 통하여 언제나 흔하게 접할 수 있는 문구입니다. 그렇기 때문에 미래에 관하여 이야기할 때면, 너무 쉽게 인용하는 말이기도 합니다. 그러나 우리 세대가 진정으...