게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
아두이노 3색led와 버튼 3개를 이용한 회로도와 코드입니다. 도움!!!
게시물ID : programmer_18548짧은주소 복사하기
작성자 : 스물두울
추천 : 1
조회수 : 1490회
댓글수 : 5개
등록시간 : 2016/09/29 04:40:50
옵션
  • 본인삭제금지
3LED BUTTON.PNG
 
 
#define red 11
#define green 10
#define blue 9   //3색 led
#define redb 4
#define greenb 3
#define blueb 2   //버튼
 
int r=0,g=0,b=0;
 
void setup() {
pinMode(redb,INPUT);
pinMode(greenb,INPUT);
pinMode(blue,INPUT);  //버튼
}
void loop() {
if(digitalRead(redb)==HIGH){
 ++r;
 if(r>255){
   r=0;                                               //빨강버튼을 눌렀다면 red의 값이 1씩 올라가는데 만약 r값이 255 이상이 되면 0으로 다시 초기화 된다??
 }
}
if(digitalRead(greenb)==HIGH){
  ++g;
  if(g>255){
    g=0;
  }
}
if(digitalRead(blueb)==HIGH){
  ++b;
  if(b>255){
    b=0;
  }
}
analogWrite(red,r);
analogWrite(green,g);
analogWrite(blue,b);
delay(1000);
}

사용한 회로도와 코드입니다.
제가 하고싶은건 각각 red값, green값, blue값을 의미하는 버튼을 누를때마다 (ex.red 버튼 누를시 빨강색이 강해짐) 3색led의 색이 변화하는 것을 만들고 싶은데요.
 
1.실행 시켜보니 하얀색 빛만 나오고 버튼을 눌러도 아무 변화가 없더라구요.
혹시 회로도나 코드상에 문제가 있다면 알려주세요 ㅜㅜ
 
2.  강의 보고 그대로 따라하는거라서 코드에 대해서 제가 이해한게 맞는지도 궁금한데요
int r=0,g=0,b=0; 에서 0의 의미가 on의 의미이고 255가 off의 의미 맞나요? (0 으로 갈수록 색의 세기?가 강해지고 255로 갈수록 약해지는것 맞나요?..)
처음에 이해한건 0이 off고 255가 on이여서 맨처음 led가 꺼져있다가 버튼을 누를수록 각 빛의 색이 강해지는건줄 알았는데
해보니까 0이 on의 의미인것 같더라구요... 뭐가 맞는건가요?...
 
3.
void setup() {
pinMode(redb,INPUT);
pinMode(greenb,INPUT);
pinMode(blue,INPUT);  //버튼
}
 
여기서 LED에 대한 초기화 코드  
pinMode(red,OUTPUT);
pinMode(green,OUTPUT);
pinMode(blue,OUTPUT);
를 따로 안쓰는 이유는 뭔가요??
 
 
 
 
강의만 들을때는 잘 넘어갔었는데 직접 해보려니까 주변에 물어볼 사람은 없는데 막히는 부분은 많고 어렵네요.. ㅠㅠ
1,2,3 번 질문중 하나라도 아시는거 있으시다면 답변 부탁드려요
 
 
 
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호