반응형
푸시 버튼은 여러 이름으로 불린다. ex) 버튼, 스위치
푸시 버튼을 제어하는 방법에는 두가지가 있다.
1. INPUT : 푸시 버튼을 한번 누르면 0
2. INPUT_PULLUP : 푸시 버튼을 누르고 있으면 0, 떼면 1
INTPUT과 INPUT_PULLUP 의 회로도는 조금 다르다.
INPUT 회로도
INPUT 예제
푸시 버튼의 상태를 시리얼 모니터에 출력한다.
프로그램을 실행 시키면 시리얼 모니터에 0, 1, 0, 0, 1 이런 식으로 값이 나온다.
이것은 플로팅 값이라고 하는데 0 과 1 중 정해지지 않은 값이 랜덤으로 나오는 것이다.
이 상태에서 버튼을 한번 누르면 0으로 고정 된 값이 나온다.
#define PUSH_PIN 9
void setup()
{
pinMode( PUSH_PIN, INPUT );
Serial.begin(9600);
}
void loop()
{
int value = digitalRead( PUSH_PIN );
Serial.println( value );
}
INPUT_PULLUP 회로도
저항은 220옴 사용해주면 된다.
INPUT_PULLUP 예제
프로그램을 실행 하면 시리얼 모니터에 (1,1,1,1,1) 쭉 1로 출력이 된다.
이 상태에서 버튼을 누르고 떼지 않으면 (0,0,0,0,0)으로 나온다.
버튼에서 손을 떼면 다시 1이된다.
#define PUSH_PIN 9
void setup()
{
pinMode( PUSH_PIN, INPUT_PULLUP );
Serial.begin(9600);
}
void loop()
{
int value = digitalRead( PUSH_PIN );
Serial.println( value );
}
반응형
'Arduino' 카테고리의 다른 글
[Arduino] 아두이노 7세그먼트 사용해서 숫자 카운트하기 (0) | 2024.02.02 |
---|---|
[Arduino] 아두이노 푸시 버튼으로 LED 제어하기 (0) | 2024.02.02 |
[Arduino] 아두이노 부저(Buzzer) 능동부저, 수동부저 (0) | 2024.02.02 |
[Arduino] 아두이노 초음파 센서(HC-SR04) 사용하기 (0) | 2024.02.02 |
[Arduino] 아두이노 시리얼 모니터 값 읽기, 부저 울리기 (0) | 2024.02.02 |