10핀 헤더의 전원과 신호를 먼저 구분합니다
브레드보드(breadboard)는 부품과 전선을 납땜하지 않고 꽂아 회로를 바꿔 볼 수 있는 시험 기판입니다. VCC는 이 시험기에 공급하는 양의 전원이고, GND(ground)는 전류가 되돌아오는 공통 기준점입니다. SW0부터 SW3까지는 제어기가 읽는 버튼 출력이고, LED0부터 LED3까지는 제어기가 구동하는 표시등 입력입니다. SW와 LED 뒤의 숫자는 네 채널을 구별합니다. 버튼이나 LED 자체가 제어기의 입력·출력이라는 뜻과 헤더에서의 신호 방향을 혼동하지 마세요.
초기형 회로도의 J1 헤더는 다음과 같이 연결됩니다. 이는 회로도상의 핀 번호입니다. 실물 사진에서 어느 쪽이 1번 핀인지까지 알 수는 없으므로 기판의 1번 표시나 도통 측정으로 물리적 방향을 확인하세요.
| J1 핀 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
|---|---|---|---|---|---|---|---|---|---|---|
| 신호 | VCC | SW0 | SW1 | SW2 | SW3 | LED0 | LED1 | LED2 | LED3 | GND |
기판 표면의 부품 번호는 SW1~SW4, LED1~LED4처럼 1부터 시작하고 헤더의 신호명은 0부터 시작할 수 있습니다. 예컨대 첫 번째 버튼 부품 SW1이 첫 번째 신호 SW0에 해당하는 식입니다. 번호만 보고 연결하기보다 버튼 하나를 누르면서 해당 헤더 핀의 전압이 바뀌는지 확인하세요.
버튼을 놓았을 때는 기판 안의 풀다운이 LOW를 만듭니다
초기형의 누름 버튼(momentary push-button)은 누르는 동안에만 VCC와 SWx를 연결합니다. 버튼을 놓으면 SWx와 GND 사이의 10 kΩ 풀다운 저항(pull-down resistor)이 그 선을 낮은 전압, 즉 LOW로 유지합니다. 누르면 같은 선이 VCC에 연결되어 HIGH가 됩니다. 높은 전압일 때 동작하는 방식을 액티브 하이(active high)라고 합니다. 이 저항은 버튼 신호에 직렬로 들어간 보호 저항이 아니라, 신호선에서 GND로 내려가는 저항입니다.
SWx는 전압을 판별하는 제어기 입력에 연결하세요. 입력 임피던스(input impedance)가 높다는 말은 그 입력으로 흐르는 전류가 작아 버튼 쪽 전압을 거의 떨어뜨리지 않는다는 뜻입니다. 제어기 내부 풀업(pull-up)을 켜 두면 전원 쪽으로 끌어올리는 경로가 하나 더 생겨 버튼을 놓았을 때의 전압이 달라질 수 있습니다. 연결 후에는 제어기 핀에서 실제 LOW·HIGH 전압을 재고 해당 칩의 입력 전압 기준과 비교하세요.
버튼을 누른 동안에는 VCC → 버튼 → 10 kΩ 풀다운 → GND로 전류가 흐릅니다. 예를 들어 VCC가 3.3 V라고 가정하면 한 채널의 저항 전류는 3.3 V ÷ 10 kΩ = 0.33 mA입니다. 이 값은 회로도에서 계산한 값이며 측정 결과가 아닙니다. 5 V로 공급하는 기판을 3.3 V 전용 입력에 곧바로 연결해도 된다는 뜻도 아닙니다. 전원과 제어기 입력의 허용 전압을 먼저 맞춰야 합니다.
LED 전류는 제어기 출력 핀을 통과하지 않습니다
초기형의 LEDx 헤더 핀은 LED 자체가 아니라 N채널 MOSFET의 게이트(gate)에 연결됩니다. MOSFET(metal-oxide-semiconductor field-effect transistor)은 게이트 전압으로 드레인(drain)과 소스(source) 사이의 전류 경로를 여닫는 반도체 스위치입니다. LEDx를 HIGH로 올리면 MOSFET이 켜지고, LED 전류는 기판 VCC → 330 Ω 전류 제한 저항 → LED → MOSFET → GND로 흐릅니다. 제어기 출력은 LED 전류를 직접 공급하는 경로가 아닙니다. 게이트에서 GND로 연결된 10 kΩ 저항은 구동 핀이 떠 있거나 LOW일 때 게이트가 우연히 HIGH가 되는 일을 줄입니다.
전류 제한 저항(current-limiting resistor)은 LED의 전류가 지나치게 커지는 것을 막습니다. 대략적인 점검식은 I_LED ≈ (VCC − V_F − V_DS(on)) ÷ 330 Ω입니다. 여기서 V_F는 선택한 LED에 걸리는 순방향 전압이고, V_DS(on)은 MOSFET이 켜졌을 때 드레인과 소스 사이에 남는 전압입니다. 부품의 전압과 온도에 따라 값이 달라지므로 이 식은 측정값이 아닙니다. LED 전류를 결정하기 전에 실제 기판의 저항값, LED 사양, MOSFET이 제어기 HIGH 전압에서 충분히 켜지는지를 확인하세요. 3.3 V HIGH를 게이트에 가했을 때 게이트의 10 kΩ 저항에는 약 0.33 mA가 흐르며, 전환 순간에는 게이트 충전에 따른 짧은 전류도 생깁니다.
전원을 끄고 한 채널씩 확인합니다
- 전원을 끄고 헤더의 VCC·GND와 각 신호 핀을 기판 표시·회로도·도통 측정으로 대응시키세요. 비슷한 외형의 다른 버전이라면 저항의 값과 연결 위치를 다시 확인하세요.
- 시험기와 제어기의 GND를 공통으로 잇고, 시험기 VCC를 허용 범위의 전원에 연결하세요. 버튼 HIGH가 제어기 입력의 허용 전압을 넘지 않는지 확인하세요.
- 버튼 하나의
SWx만 제어기 입력에 잇고, 버튼을 놓았을 때와 눌렀을 때 제어기 핀 자체의 전압을 재세요. 그 두 값이 칩의 LOW·HIGH 판정 기준을 각각 만족하는지 확인한 다음 나머지 버튼을 추가하세요. LEDx하나를 제어기 출력에 연결하고 LOW·HIGH를 번갈아 인가해 표시등이 맞게 꺼지고 켜지는지 확인하세요. 여러 LED를 동시에 켤 때는 기판 전원과 총 전류도 확인하세요.
버튼을 한 번 눌렀는데 프로그램이 여러 번 감지한다면 먼저 핀 전압이 안정적으로 LOW·HIGH를 오가는지 확인하세요. 전압 경로가 정상인데도 접점이 잠깐 붙었다 떨어져 여러 번 감지되면 접점 바운스(contact bounce)가 원인일 수 있습니다. 이 경우 일정 시간 동안 반복 신호를 하나로 처리하는 디바운스(debounce)를 적용하세요. 바운스와 전원·접지 문제는 같은 현상이 아니므로 측정으로 구별해야 합니다.
직렬 저항이 보인다면 버전 차이를 확인합니다
나중에 공개된 개정형(rev B)은 버튼 내부 신호와 SWx 헤더 사이에 10 kΩ 직렬 저항(series resistor)을 추가했습니다. 원래의 10 kΩ 풀다운도 버튼 쪽에 남아 있으므로, “직렬 저항이 있다”는 설명을 “풀다운이 없다”는 뜻으로 해석하면 안 됩니다. 개정형에 제어기 쪽 10 kΩ 외부 풀다운을 다시 달면 버튼을 누른 동안 두 10 kΩ 저항으로 분압되어 제어기 입력이 이상적으로 VCC의 절반에 가까워질 수 있습니다. 이는 개정형의 조건부 계산이며, 위 그림의 초기형 배선에 그대로 적용할 수 없습니다. 실물의 개정 번호와 저항 연결을 먼저 확인하고, 최종 판정은 제어기 입력 핀의 측정 전압으로 하세요.