프로그래밍 언어/기초

풀업 풀다운에 대한 이해

노예 2019. 1. 25. 11:08





플업 풀다운에 대한 이해



개요


풀업과 풀다운에 대해 이해하기 위해선 먼저 "플로팅"에 대하여 설명이 되어야 한다. 해서 먼저 플로팅 상태에 대해 간단하게 설명하고 풀업과 풀다운에 대하여 설명하도록 하겠다. 



플로팅 (Floating) 상태

"상태를 알 수 없다"


플로팅이란 "유동적인, 떠있는"이란 사전적 의미를 가지고 있다. 이 의미를 디지털 회로에 비교표현 하자면 "상태를 알 수 없다"로 정의 할 수 있다. 정상적인 경우 0(Low) 이거나 1(High)이 명확해야 원하는 동작을 하겠지만 0 이거나 1이 아닌 상태라면? 정상적인 동작을 할 수 없을 것이다. 보통 이런 경우는 입력단 회로일 때 발생 할 수 있다. 여기서 입력이란 스위치 같은 물리적인 입력이 발생하는 것을 말한다.





위 그림의 경우 어떻게 동작하는지 한번 봐보도록 하자. (1)의 회로의 경우 스위치가 눌렸을 때는 "0"을 의미하겠지만 스위치가 떨어졌을 땐? 0도 1도 아닌 알 수 없는 상태가 될 것이다. 이 것이 플로팅 상태라 한다. 실제 왼쪽 회로와 동일하게 구성하고 스위치를 동작했을 경우 정상적으로 되지 않을 것이다. (2)의 경우 풀업저항 (3)의 경우 풀다운 저항이 적용되어, 스위치가떨어진 경우에 상태값이 명확해진다. 



풀업 풀다운


 스위치

ON 

OFF 

(1) 스위치

 0 V (Low) 

 플로팅 상태

(2) 풀업저항

0 V (Low)

  5 V (High) 

(3) 풀다운저항

 5 V (High)

 0 V (Low)



저항없이 그냥 연결해도 되지않나? 라고 생각 할 수 있지만 간단하게 "과전류가 되지않도록 저항을 추가한다" 라고 생각하면 편하다. 일반적인 경우 풀다운보다 풀업이 노이즈에 강하다 그래서 풀업을 더 많이 사용한다. 필요 경우에 따라 MCU 입력단이 스위치 동작에 따라 받고자 하는 상태에 따라 상황에 맞게 사용하면 된다.