[Arduino] 아두이노 푸시 버튼 사용하기
아두이노 푸시 버튼(Push Button) 사용하기
푸시 버튼은 여러 이름으로 불린다. 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)으로 나온다. 버튼에서 손을 떼면 다시 0이된다.
#define PUSH_PIN 9
void setup()
{
pinMode( PUSH_PIN, INPUT_PULLUP );
Serial.begin(9600);
}
void loop()
{
int value = digitalRead( PUSH_PIN );
Serial.println( value );
}
댓글
댓글 쓰기