● 모듈 구성 안내
1-2-1. 풀업 스위치 & 풀다운 스위치의 이해
1-2-2. 아두이노 풀업 스위치 기본 제어
1-2-3. RGB LED 스위치 제어
● 1-2-2. 아두이노 풀업 스위치 기본제어
▶ [실습 1-2-2] 풀업 스위치 기본제어
- 아래 아두이노 회로 구성해 보자.
- 아래 코드를 복사 붙여 넣기를 통해 입력해 보자.
int sw1 = 12;
int led1 = 10;
int sw2 = 5;
int led2 = 3;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(sw1, INPUT_PULLUP);
pinMode(sw2, INPUT_PULLUP);
//sw를 인풋_풀업으로 하여 스위치가 열려있다면 HIGH
//스위치가 닫혀있다면 LOW값을 반환
}
void loop() {
if(digitalRead(sw1) == LOW) //스위치가 눌리면
digitalWrite(led1, HIGH); //led On
else
digitalWrite(led1, LOW); //스위치가 닫히면 Off
if(digitalRead(sw2) == LOW)
digitalWrite(led2, HIGH);
else
digitalWrite(led2, LOW);
}
▶ [도전과제 1-2-2] 스위치 2개 입력시 새로운 동작
- 동작 목표 : 스위치 2개를 동시에 눌렀을 때 새로 추가된 led만 불이 켜지게 하시오
기존 스위치 각각 한개 눌렀을때 동작은 그대로 유지한다.
- 아래와 같이 기존 회로에 led 하나를 더 추가하시오.
- 아래 코딩을 복붙하고 주석처리 된 부분을 채워 동작을 완수 하시오
int sw1 = 12;
int led1 = 10;
int sw2 = 5;
int led2 = 3;
int led3 = 7;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(sw1, INPUT_PULLUP);
pinMode(sw2, INPUT_PULLUP);
}
void loop() {
if((digitalRead(sw2) == LOW)&&(digitalRead(sw1) == LOW))
{
// 스위치 2개 모두 눌렸을때 경우 코딩
}
else
{
// 스위치 2개 모두 안눌렸을 때 코딩
if(digitalRead(sw1) == LOW)
// sw1 하나만 눌렸을때 코딩
else if(digitalRead(sw2) == LOW)
// s2 하나만 눌렸을때 코딩
else
// sw1, sw2 모두 안눌렸을때 코딩
}
}
● 1-2-3. RGB 스위치 제어
▶ [실습 1-2-3] RGB 3색 스위치 제어하기
- 아래 그림을 통해 RGB led 핀의 4개지 구성을 알아본다.
출처 : 코딩런
- 아래 처럼 RGB LED 구동 회로를 제작해 준다.
출처 : 코딩런
- 아래 처럼 코드를 복붙하고 빈칸을 채워준다.
int R = 7;
int G = 5;
int B = 3;
int sw1 = 12;
int sw2 = 10;
int sw3 = 8;
void setup() {
pinMode(R, OUTPUT);
pinMode(G, OUTPUT);
pinMode(B, OUTPUT);
pinMode(sw1, INPUT_PULLUP);
pinMode(sw2, INPUT_PULLUP);
pinMode(sw3, INPUT_PULLUP);
}
void loop() {
// 빨간색 스위치 구동 회로
if(digitalRead(sw1) == LOW)
digitalWrite(R, HIGH);
else
digitalWrite(R, LOW);
/*
초록색 스위치 구동회로 코드를 작성해 주세요
*/
/*
파란색색 스위치 구동회로 코드를 작성해 주세요
*/
}
- 스위치를 다양하게 눌러 7가지 색이 나오는지 확인한다.
▶ [도전과제 1-2-3] RGB 7가지 색깔 제어 회로
- 기존 회로 하드웨어에 스위치를 한개 더 연결한 뒤 4번째 스위치 추가
- 4번째 스위치 누르면 RGB LED의 7가지 색이 0.3초 주기로 연속적으로 나오게 코딩하시오.
- 아래 영상을 보고 도전과제 완료 기준을 이해하시오.
FINISH
글쓴이 : Wonking / 교사 성원경
'메이커 프로젝트 > 아두이노 +' 카테고리의 다른 글
아두이노 DC 모터 제어하기 (0) | 2021.09.03 |
---|---|
[모듈 1-6] 아두이노 부저로 소리내기(feat. 전자 피아노 만들기) (2) | 2020.09.22 |
[ 모듈 1-5 ] 아두이노 초음파 센서 제어하기(feat. processing 아두이노 시각화) (2) | 2020.09.22 |
[모듈 1-4] 아두이노 시리얼통신 제어(Feat. 로봇팔 만들기) (3) | 2020.09.08 |
[모듈 1-3] 아두이노 서보모터 제어하기 (feat. For 구문) (19) | 2020.09.06 |