1. 푸쉬버튼 알아보기.
- 디지털 입력을 위한 부품.
- 푸쉬버튼을 누르고 떼는 동안 디지털 1 (HIGH), 0 (LOW) 값을 갖는다.
- 푸쉬버튼은 누르고 있는 동안 ON, 떼면 OFF로 되돌아가는 특징을 가지고 있음.
※ 코드를 통해 누를때 OFF, 뗄때 ON 으로 제어할 수 있음.
2. 푸쉬버튼 Floating(플로팅)값 이란 ?
- 아두이노는 입력되는 전압이 2.6V ~ 5V 까지는 1 (HIGH)로 인식하고
입력되는 전압이 0V ~ 0.6V 까지는 0 (LOW)로 인식.
※ 아두이노 보드 종류에 따라 인식되는 HIGH, LOW V(전압) 범위는 다름.
- Floating (플로팅) : 부유하는, 떠 있는, 유동적인
- 0과 1 사이의 방황하는 값 (플로팅값)
- 0.6V ~ 2.6V 사이의 값
- 코드로 플로팅 값을 확인해 보자. [ 푸쉬버튼 한쪽 핀을 GND, 디지털핀으로 연결 ]
// 아래 코드를 복사하여 업로드 하여보자. void setup() { pinMode(4,INPUT); Serial.begin(9600); } void loop() { int push=digitalRead(4); Serial.print("push = "); Serial.println(push); } // swmaker_jun |
- 코드를 입력하고 업로드하여 시리얼 모니터를 띄우면 아래와 같이 플로팅 값을 확인할 수 있다.
3. Pull_UP (풀업) Pull_Down(풀다운) 회로
- 플로팅값을 해결하기 위해서는 아래와 같이 "풀업" 회로와 "풀다운" 회로를 사용
■ 풀업 Pull_Up
- 저항을 5V(전원) 쪽에 놓고 플로팅 현상을 해결 [ 풀업저항을 사용하면 핀에는 항상 5V 전압이 가해짐. ]
푸쉬버튼을 누르지 않을때 : 디지털 HIGH (1)
푸쉬버튼을 누를때 : 디지털 LOW (0)
■ 풀다운 Pull_Down
- 저항을 GND(그라운드) 쪽에 놓고 플로팅 현상을 해결 [ 풀다운을 사용하면 핀에는 항상 0V 전압이 가해짐. ]
푸쉬버튼을 누르지 않을때 : 디지털 LOW (0)
푸쉬버튼을 누를때 : 디지털 HIGH (1)
※ 아두이노 보드 종류에 따라 인식되는 HIGH, LOW V(전압) 범위는 다름.
4. 아두이노 pinMode에서 풀업모드 활용하기.
- 아두이노 PCB에 있는 저항과 회로로 풀업모드 활용하기.
■ 핀모드 INPUT_PULLUP
- 위에 코드에서 INPUT 모드를 " INPUT_PULL " 코드로만 바꿔주면 아두이노 하드웨어안에서 풀업회로를
사용할 수 있다.
- 푸쉬버튼을 누르지 않을때는 HIGH, 누를때는 LOW 값으로 출력
※ 풀업모드 업로드 후 시리얼 모니터로 확인하여 보자.
// 아두이노 풀업모드 코드
void setup() {
pinMode(4,INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
int push=digitalRead(4);
Serial.print("push = ");
Serial.println(push);
}
// swmaker_jun
'아두이노' 카테고리의 다른 글
아두이노 초음파센서 수업 자료 (0) | 2021.12.07 |
---|---|
아두이노 푸쉬버튼으로 LED 제어 및 과제 (0) | 2021.11.02 |
아두이노 가변저항으로 led 밝기 제어 (0) | 2021.11.02 |
아두이노 조건문활용 (가변저항으로 led 제어) (0) | 2021.11.01 |
아두이노 시리얼통신 활용 (가변저항 Read, 시리얼모니터 출력) (0) | 2021.11.01 |