일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- half adder
- stop watch
- Linked List
- i2c 통신
- LED
- ring counter
- Recursion
- dataflow modeling
- gpio
- ATMEGA128A
- hc-sr04
- D Flip Flop
- BASYS3
- atmega 128a
- vivado
- FND
- Algorithm
- test bench
- behavioral modeling
- structural modeling
- KEYPAD
- uart 통신
- DHT11
- prescaling
- Edge Detector
- pwm
- soc 설계
- java
- Pspice
- verilog
- Today
- Total
거북이처럼 천천히
Floating, Pull-up, Pull-down 본문
목표) 다음과 같은 궁금증을 알아보도록 하겠다.
1. 왜 일반적으로 스위치를 MCU와 연결할 때, Floating 현상을 접하게 되는가?
2. 이 때, Floating 문제를 해결하기 위해 10K Ohm 저항과 함께 연결하는가?
- Floating 현상이란 무엇인가?
- Floating 현상은 직역하게 되면 "떠있는 상태"를 의미
- MCU에서는 신호가 5V(High-level)과 0V(Low-level) 사이에서 "떠있는 상태"여서 신호 값이
불안정한 상태임을 말한다.
- 아래와 같은 예시 회로를 통해 살펴보도록 하자.
- 위 회로에서 Switch가 닫히게 되면 예상했던 바와 같이 5V(High-level) 신호를 받을 수 있게 되면서
LED를 킨다든가, 스피커가 나오도록 만들 수 있다.
- 여기서 High 신호가 의미가 있는 이유는 5V 와 극명하게 구분이 되는 OV 전압 값이 존재하기 때문에
이를 이용하여 5V(High-level)를 1, 0V(Low-level)를 0으로 설정함으로써 0과 1을 이용한 별도의 처리
작업을 수행할 수 있는 것이다.
- Q) 만약, 닫혔던 Switch를 다시 Open하면 5V(High-level = 1) 신호가 끊기고, 0V(Low-level = 0) 신호가
입력이 될까?
- A) 예상했던 바와 달리 그렇지 않다. 주변환경에 따라 5V와 0V을 왔다 갔다 하는 불안정한 상태, 즉,
Floating 현상이 발생한다.
- Switch가 닫혀 5V와 2번 핀이 회로적으로 연결된 상태라면 5V, 즉 High 신호가 가겠지만,
Switch가 Open된다면 2번 핀 끝이 주변환경에 따라 신호 값이 변하는 불안정 상태( = Floating 상태)
가 된다.
- 따라서 스위치가 누르지 않아 회로가 Open 된 상태여도 정확한 신호(전압 값)을 인가해주기 위해서는
추가적인 대책이 필요하다.
- Q) 아래 회로 처럼 회로가 Open된 상태에서 2번 핀 끝의 전압 값을 0V로 만들어 주기 위해서
2핀과 GND를 연결하면 해결이 가능한가?
- 위와 같이 회로를 구성한다면 회로가 OPEN 상태에서는 2핀의 전압 값이 0V 가 보장이 되지만,
Switch 가 닫혀 회로가 연결되면 전류가 GND로 흘러 2핀의 전압 값이 0V가 되는 문제점이 발생
- Q) 그럼, 어떻게 하면 회로가 연결된 상태에서는 2핀에서 5V 신호를 받고, 회로가 OPEN된 상태에서
확실하게 2 핀에서 0V를 보장 받을 수 있을까?
- A) 아래와 같이 GND 쪽에 10K Ohm을 연결함으로서 연결된 상태에서는 저항으로 인해 전류가
2핀으로 흐르겠고, 회로가 OPEN되면 GND를 통해 2핀은 0V를 보장받을 수 있다.
- Floating 문제를 해결하기 위해서는 저항과 GND를 이용하여 회로를 구성해야 하며,
저항의 위치에 따른 Vout의 전압을 5V or 0V로 만들어주는 방법에 따라 1) Pull-up ,
2) Pull-down으로 구분한다.
- Pull-down : 풀 다운 구조는 저항을 GND와 연결함으로서 Floating 상태를 0V로 만들어 주는 구조
- Pull-up : 풀 업 구조는 저항을 Vcc와 연결함으로서 Floating 상태를 5V로 만들어 주는 구조
정리)
- Floating 현상은 신호가 5V(High-level)과 0V(Low-level) 사이에 떠있는 불안정한 상태를 의미
- 이를 해결하기 위해서 저항과 GND를 이용하여 Floating 상태를 확실하게 0V or 5V로 만들어줌으로서 보장될 수 있도록 만들어야 한다.
- Pull-down : 저항을 GND와 연결함으로서 Floating 값을 0V으로 끌어 내려 0V로 보장
- Pull-up : 저항을 Vcc와 연결함으로서 Floating 값을 5V으로 끌어 올려 5V로 보장
- 따라서 MCU에서는 스위치 회로를 구성할 때에는 Floating 문제를 해결하기 위해 저항과 함께 연결해야 한다.
참고 자료 및 영상