2012년 6월 24일 일요일

soft potentiometer + RGBLED


soft potentiometer + RGBLED 

soft potentiometer 로 RGBLED를 제어하기
이 예제는 아두이노 가이드북에 나온 내용이다.
soft potentiometer는 손으로 접촉하는 위치에 따라
저항값이 달라지는 센서다.
이 센서값을 받아 RGBLED를 켜보자.

아두이노와 연결 사진


스케치 소스
-------------------------------------------------------------------------------
int sensor =A0;   //soft potentiometer의 중간핀과 연결
int sensorval = 0;
int redPin =9; //RGBLED 연결핀
int greenPin =10;  //RGBLED 연결핀
int bluePin =11;   //RGBLED 연결핀
int redval = 0;   //RGBLED의 각 색에 출력할 값
int greenval = 0;
int blueval = 0;

void setup(){
  }

void loop(){
  sensorval = analogRead(sensor);
  redval = constrain(map(sensorval, 0,512, 255, 0),0,255);
  greenval = constrain(map(sensorval, 0,512, 0, 255),0,255)
                 -constrain(map(sensorval, 512,1023, 0, 255),0,255);
  blueval = constrain(map(sensorval, 512,1023, 0, 255),0,255);
//센서에 의해 입력되는 0~1023 사이의 값을 각각의 R G B 색을 표현하도록 값을 변환
 
  analogWrite(redPin,redval);
  analogWrite(greenPin,greenval);
  analogWrite(bluePin,blueval);
  delay(200);
}
 -----------------------------------------------------------------------------


작동 영상

댓글 없음:

댓글 쓰기