반응형
플로팅(Floating) 현상 이해하기
(준비물)
아두이노 우노(Arduino Uno)
USB 케이블
스위치 모듈
점퍼 케이블
(회로 연결)
int switch_pin = 8;
void setup(){
Serial.begin(9600);
pinMode(switch_pin, INPUT); // 입력핀 설정
}
void loop(){
int read_switch = digitalRead(switch_pin); // switch_pin 데이터를 읽고 read_switch 변수에 저장
Serial.println(read_switch); // read_switch 값 출력
delay(100);
}
위와 같이 회로를 구성하고 코드를 작성하면,
이론적으로는 스위치를 눌렀을 때 8번 핀은 VCC와 연결되어 1(HIGH)이 출력되고, 스위치를 누르지 않으면 8번 핀은 VCC와 차단되어 0(LOW)이 출력되어야 한다. 하지만 실제로 실행해보면, 스위치를 누르지 않았을 때 8번 핀에서는 1(HIGH)과 0(LOW)이 불안정하게 출력된다
이렇게 1(HIGH)도 아니고 0(LOW)도 아닌 값을 가지고 있는 상태가 되는 것을 플로팅 현상이라고 한다.
플로팅 현상은 원치 않는 결과를 불러오는 등 오작동을 일으키는 원인이 되기 때문에 풀업 또는 풀다운 저항을 연결하여 해결해야 한다. 즉, 입력 핀을 정확하게 VCC나 GND에 연결해 주어야 한다.
반응형
'Arduino' 카테고리의 다른 글
[Arduino] 스위치 실습: 풀다운(Pull-down) 저항 이해하기 (0) | 2021.01.28 |
---|---|
[Arduino] 스위치 실습: 풀업(Pull-up) 저항 이해하기 (0) | 2021.01.18 |
[Arduino] 스위치 실습: 풀업(Pull-up) 및 풀다운(Pull-down) 저항 (0) | 2021.01.04 |
[Arduino] 스위치 모듈이란? (0) | 2021.01.03 |
[Arduino] Serial 실습: 시리얼 모니터에 'on'과 'off' 입력(전송)하여 LED On/Off 하기 (0) | 2021.01.02 |