디지탈 로직의 회로에서 'H'도 'L'도 아닌 상태를 플로팅 상태라고 합니다.
풀업이나 풀다운 저항은 디지탈 회로에서 어떤 한점이 플로팅 상태에 있을때
그점의 평상시 상태의 논리를 결정해 주기 위해서 사용합니다.
풀업 저항은 그 플로팅 지점의 평상시의 상태를 'H'로 만들어 주기 위해서 사용됩니다.
풀다운 저항의 평상시의 플로팅 상태를 'L'로 만들어 주기 위해 사용합니다.
여기에 전원에도 그라운드에도 아무데도 접속되어 있지 않은
허공에 떠있는(플로팅 되어 있는) 아무데도 접속이 되지 않는 도선이 있다고 합시다.
이도선의 한쪽에 푸쉬버턴 스위치를 연결하여 그 도선이 스위치를 누르면 로직신호
'L'이 되고 스위치를 때면 'H'이 되는 간단한 스위치의 논리를 만들려고 할경우
이도선은 'H'도 'L'도 아니기 때문에 스위치를 누르지 않고 있는 평상시의 상태를
무었인가로 결정 해줘야 합니다.
스위치를 누르지 않았기 때문에 평상시의 상태는 그 도선이 'H'가 되도록
저항을 사용하여 전원+ 측과 도선 사이를 연결해주면 도선은 'H'가 될수 있겠지요.
이것이 풀업(끌어올린다는 의미) 저항입니다. 즉 아무것도 아닌 도선을
'H'의 로직 전압으로 끝어 올린것입니다.
이상태에서 스위치의 한쪽 리드는 그 도선에 접속하고 또 한가닥은 그라운드에 접속해주면
스위치를 누르면 모든 전압강하가 저항이 큰 풀업쪽으로 몰리고
스위치쪽으로 강하되는 전압은 0이 될것입니다.
결국 스위치를 누르면 도선은 로직이 'L'이 됩니다.
요구하는 기능이 정상으로 된거지요.
그런데 평상시의 플로팅된 도선의 로직 상태를 'H'로 하기 도선을 직접 'H'로 붙여도
될텐데 왜 구태여 비싼(?) 저항을 붙이냐는 의문을 가질도 모릅니다.
그럼 그렇게 전원의 +에 저항이 없이 직접 붙였다고 가정하고
그라운드와 연결된 스위치를 누르면 어떻게 될까요?
그선은 +에도 붙어 있고 그라운드에도 붙어 있는 상태가 되어 스위치를 누르는 순간
전원의 +와 그라운드(-)가 쇼트가 되어 버리는것과 같게 되겠지요.
그래서 풀업이나 풀다운 저항을 사용합니다.
하지만 디지탈 신호에서 어던 한점이 변할 필요가 없고 고정된 'H'나 'L'이라면
구태여 풀업이나 풀다운 저항을 사용할 필요없이 그냥 전원+측이나 그라운드에
직접 접속해두어도 전혀 관계없습니다.
2입력 NAND 게이트를 이용하여 단순한 반전 버퍼 역할을 하고자 할때
AND 게이트의 한쪽 입력은 그냥 '+'에 붙여할 그런 상황이 생깁니다.
평상시 '+'로 하기 위해 풀업을 쓸 필요는 없는거지요.
하지만 다른 쪽 한입력은 플로팅 되어 있는체 두면 안되겠지요.
어디엔가 다른 플로팅 되지 않은 디지탈 회로의 출력에 접속하던지
혹은 풀업이나 풀다운이 반드시 되어 줘야 하겠지요.