[아두이노] 아두이노 핀의 ‘입력 임피던스’와 풀업 저항의 상호작용

아두이노 프로그래밍을 할 때 INPUT_PULLUP을 설정하면 내부적으로 어떤 전기적 변화가 일어날까요? 단순히 "스위치를 누르면 0이 된다"는 결과론적인 해석을 넘어, 실제 MCU 데이터시트를 기반으로 그 물리적 본질을 파헤쳐 봅니다.


1. 전압 분배의 보이지 않는 주인공: 입력 임피던스

우리는 흔히 아두이노 핀을 '전선'처럼 생각하지만, 사실 핀 내부는 매우 높은 저항을 가진 측정 장치와 같습니다.

  • 실제 스펙: ATmega328P / 32U4 입력 저항은 최소

    100MΩ=108Ω100\,\text{M}\Omega = 10^8\,\Omega
  • 공학적 의미: 입력 전류는 나노암페어 수준으로 매우 작으며, 외부 회로에 거의 영향을 주지 않습니다.

2. 내부 풀업 모드에서의 전압 분배 계산

내부 풀업 저항을 다음과 같이 가정합니다.

Rpu=30kΩR_{pu} = 30\,\text{k}\Omega

입력 임피던스:

Zin=100MΩZ_{in} = 100\,\text{M}\Omega

① 스위치 OFF (열림)

전압 분배 공식:

Vpin=VccZinRpu+ZinV_{pin} = V_{cc} \cdot \frac{Z_{in}}{R_{pu} + Z_{in}}

값 대입:

Vpin=5100,000,00030,000+100,000,000V_{pin} = 5 \cdot \frac{100{,}000{,}000}{30{,}000 + 100{,}000{,}000}

근사 계산:

Vpin4.998VV_{pin} \approx 4.998\,\text{V}

👉 결과: 거의 완벽한 HIGH (1)


② 스위치 ON (닫힘)

이 경우 핀은 GND에 직접 연결됩니다.

Vpin=Vcc0Rpu+0V_{pin} = V_{cc} \cdot \frac{0}{R_{pu} + 0}
Vpin=0VV_{pin} = 0\,\text{V}

👉 결과: LOW (0)


3. 왜 핀 쪽에 저항(임피던스)이 필요한가?

핵심은 이겁니다:

  • 입력 임피던스가 없다면 → 전류가 MCU 내부로 직접 유입 → 칩 손상
  • 임피던스가 낮다면 → 측정 시 전압이 왜곡됨
  • 임피던스가 매우 크기 때문에 →
    👉 "회로를 건드리지 않고 관찰만 가능"

4. 핵심 요약 (엔지니어 관점)

입력 핀은
"거의 무한대에 가까운 저항을 가진 전압 측정기"
라고 보면 정확하다.

  • 내부 풀업: 약한 HIGH 생성
  • 스위치: 강한 LOW 생성
  • 입력 임피던스: 회로 안정성 유지

5. Floating 현상의 진짜 이유

입력이 떠 있는 상태에서는:

Zin100MΩZ_{in} \approx 100\,\text{M}\Omega

이 값이 너무 크기 때문에:

  • 정전기
  • EMI (전자파)
  • 주변 노이즈

같은 아주 작은 전하에도 전압이 형성됩니다.

👉 결과:
핀 값이 0 ↔ 1 사이에서 랜덤하게 튐


기술 팁

풀업/풀다운 저항의 본질은
"기준 전위를 강제로 정의하는 것" 이다.

댓글

이 블로그의 인기 게시물

공압 속도 제어: 미터인 vs 미터아웃

NPN, PNP 트랜지스터 차이점

[주식] 한국거래소(KRX) 데이터 API 입문 가이드

[PLC] 센서 NPN, PNP 출력 타입별 결선방법 (OMRON E2E-X 시리즈 3선식 배선)

전력(kW) 계산하기 (직류, 교류 단상, 교류 삼상)

[PLC] 서보 모터 브레이크 결선, 왜 릴레이 터미널을 써야 할까?

사각형의 넓이 공식의 증명

[PLC] PLC 아날로그 입출력 기본

[아두이노] 가변저항(Potential Divider)과 전압분배(Voltage Divider)

[농사] 토마토 수경재배 : 모종 이식 & 재배 간격