키패드 센서 및 전역변수 목차 재료준비 및 브레드 보드 배선 구성하기 키패드 센서 이해 전역변수 실습 응용 작품 만들기
준비물 준비하기 아두이노 보드 (SPL-Duino V2 초보자용 보드) USB 케이블 스피커, LED소자, 키패드 센서 브레드보드 실습 키트
브레드보드 배선 구성하기 전원 연결 아래 그림과 같이 브레드 보드를 연결해줍니다.
브레드보드 배선 구성하기 3핀 아날로그 키패드 센서 준비하기 디지털 센서 키패드 센서로 버튼에 각각 다른 저항이 연결되어 있는 원리로 버튼을 누를 때 변화된 전기의 값으로 값을 측정합니다. 센서 선(s)으로 센서의 데이터 값을 읽고 쓰고 합니다. 키패드 센서는 아날로그 핀을 이용합니다. 빨간색 선은 V (Voltage)를 의미합니다. 검정색 선은 G (GND)를 의미합니다.
브레드보드 배선 구성하기 센서 연결 LED소자와 조도 센서를 아래 그림과 같이 연결해줍니다. 키패드 센서 : A0번 핀에 연결 파란색 – 파란색 빨간색 – 빨간색 검은색 – 검은색
연산자 이해하기 연산자 산술 연산자(※ a와 b는 임의의 변수) if 조건문 연산자는 변수에 값을 대입하거나 변수와 변수의 값을 비교하거나 변수의 값을 변경하기 위해 사용되는 기호를 말합니다. 산술 연산자(※ a와 b는 임의의 변수) a + b : a와 b를 더합니다. a – b : a에서 b를 뺍니다. a * b : a와 b를 곱합니다. a / b : a를 b로 나눕니다. a % b : a나누기b에서 나머지를 구합니다.
연산자 이해하기 관계 연산자(※ a와 b는 임의의 변수) 논리 연산자(※ A와 B는 임의의 조건문) if 조건문 !A : A조건이 사실이 아닐 경우
연산자 이해하기 if에서의 관계 연산자 사용(※ a와 b와 c는 임의의 변수) if 조건문 if(a + b == c) { (명령문); } else if(a + b > c) else if(a + b < c) a+b가 c와 같을 경우 해당 명령문을 실행 a+b가 c보다 클 경우 해당 명령문을 실행 a+b가 c보다 작을 경우 해당 명령문을 실행
연산자 이해하기 if에서의 논리 연사자 사용(※ a와 b는 임의의 변수) if 조건문 { (명령문); } else if(a>20 | b < 40) else if(!a>20) a가 20보다 크고 b보다 작을 때 명령문 실행 a가 20보다 크거나 b보다 작을 경우 명령문 실행 a가 20보다 크지 않을 경우 명령문 실행
키패드 센서 이용하기 키패드 센서 키패드는 아날로그 핀을 키패드의 버튼마다 값을 가지고 있습니다. 아날로그 핀
키패드 센서 이용하기 키패드 센서 키패드의 특징 키패드에는 5개의 푸쉬 버튼이 들어 있습니다. 5개의 버튼이 하나의 아날로그 선에 연결되어 있습니다. 각 푸쉬 버튼마다 각자 값이 다른 저항이 있습니다. 버튼을 눌렀을 때 저항값에 따른 아날로그 값이 변합니다. 두 개의 버튼은 동시에 사용은 불가합니다.
키패드 센서 이용하기 키패드 센서 값 읽기 키패드 센서 아날로그 핀을 이용하는 아날로그 키패드 센서 값을 읽고자 할 땐 다음과 같이 사용합니다. analogRead(0); 아날로그 0번의 값을 읽어옵니다.
키패드 센서 이용하기 키패드 센서 값 읽기 키패드 센서 void setup() { 보드 레이트를 설정하여 줍니다. Serial.begin(57600); } void loop() int a0 = analogRead(0); Serial.println(a0); delay(1000); 보드 레이트를 설정하여 줍니다. 아날로그 0번 핀을 읽어옵니다 읽어온 아날로그 값을 int a0에 저장합니다. Serial.println(a0);를 사용하여 값을 출력합니다. 이 과정을 1초 기다리고 다시 반복합니다.
키패드 센서 이용하기 키패드 센서 값 읽기 키패드 센서 시리얼 모니터를 열어 키패드의 버튼을 하나하나 눌러주어 값을 확인해 봅니다.
키패드 센서 이용하기 키패드 센서 값 전역 변수로 저장하기 키패드 센서 void setup() { Serial.begin(57600); } void loop() int a0 = analogRead(0); Serial.println(a0); delay(1000); 이 소스를 이용하여 키패드의 각 버튼 값을 메모지에 저장합니다.
키패드 센서 이용하기 키패드 센서 값 전역 변수로 저장하기 키패드 센서 키패드 마다 값이 미묘하게 다르니 직접 확인 하도록 합니다.
키패드 센서 이용하기 키패드 센서 키패드 센서 값 전역 변수로 저장하기 새 파일을 만들어 줍니다.
키패드 센서 이용하기 키패드 센서 값 전역 변수로 저장하기 키패드 센서 int green = 0; int white = 143; int blue = 743 int yellow = 506 int red = 328 void setup() { } void loop() { 아까 메모해둔 키패드의 값들을 전역 변수로 먼저 작성해 줍니다. 이 상태로 실습으로 넘어갑니다.
응용 작품 만들기 미션) 전역 변수를 이용하여 키패드의 5개의 버튼에 도,래,미,파,솔을 구현 하십시오. 실습 미션) 전역 변수를 이용하여 키패드의 5개의 버튼에 도,래,미,파,솔을 구현 하십시오. 또한 스피커가 울릴 때마다 LED소자에 불이 들어오게 합니다.
응용 작품 만들기 코드 예시) 실습 int green = 0; int white = 143; int blue = 743; int yellow = 506; int red = 328; void setup() { pinMode(3, OUTPUT); } void loop() { int a = analogRead(0); if (a == green) tone(2,130,1000); digitalWrite(3, HIGH); delay(1000); digitalWrite(3, LOW); else if (a == white) tone(2,146,1000); else if (a == blue) tone(2,164,1000); else if (a == yellow) tone(2,174,1000); else if (a == red) tone(2,195,1000);