실험 가이드
Active Low가 헷갈릴 때: 74LS147 인코더와 74LS42 디코더
입력과 출력이 모두 Low에서 동작하는 칩을 기능표로 정리했습니다.
74LS147 우선순위 인코더를 처음 쓰면 "입력을 5 V로 올렸는데 왜 반응이 없지?"에서 막히기 쉽습니다. 실험에서도 출력이 Active Low인 것은 알고 있었지만 입력까지 Low에서 선택된다는 점을 놓쳐 한 번 다시 결선했습니다. 이름 위에 줄(1̅, D̅)이 있거나 회로 기호에 작은 동그라미가 붙은 핀은 Low일 때 켜진(활성) 상태라는 뜻입니다.
1. 74LS147 (10진 → BCD 우선순위 인코더)
| 입력 상태 | Low로 만든 핀 | 출력 D C B A | 뒤집어 읽은 값 |
|---|---|---|---|
| 모두 High | — | 1111 | 0 |
| 1번 입력만 Low | 11 | 1110 | 1 |
| 2번 입력만 Low | 12 | 1101 | 2 |
| 3번 입력만 Low | 13 | 1100 | 3 |
| 4번 입력만 Low | 1 | 1011 | 4 |
| 5번 입력만 Low | 2 | 1010 | 5 |
| 6번 입력만 Low | 3 | 1001 | 6 |
| 7번 입력만 Low | 4 | 1000 | 7 |
| 8번 입력만 Low | 5 | 0111 | 8 |
| 9번 입력만 Low | 10 | 0110 | 9 |
| 3번과 7번이 함께 Low | 13, 4 | 1000 | 7 |
입력 1~9와 출력 A~D가 모두 Active Low입니다. 출력 1111은 "아무것도 선택 안 됨(0)"이고, 출력을 비트마다 뒤집어 읽어야 입력 번호가 됩니다. 여러 입력이 함께 Low면 가장 큰 번호가 이깁니다(우선순위). 0번 입력 핀은 따로 없습니다. 전원은 16번 VCC, 8번 GND입니다.
2. 74LS42 (BCD → 10진 디코더)
| 입력 D C B A | 10진수 | 출력 0 1 2 … 9 | Low가 되는 출력 |
|---|---|---|---|
| 0000 | 0 | 0 1 1 1 1 1 1 1 1 1 | 0번 출력 (핀 1) |
| 0001 | 1 | 1 0 1 1 1 1 1 1 1 1 | 1번 출력 (핀 2) |
| 0010 | 2 | 1 1 0 1 1 1 1 1 1 1 | 2번 출력 (핀 3) |
| 0011 | 3 | 1 1 1 0 1 1 1 1 1 1 | 3번 출력 (핀 4) |
| 0100 | 4 | 1 1 1 1 0 1 1 1 1 1 | 4번 출력 (핀 5) |
| 0101 | 5 | 1 1 1 1 1 0 1 1 1 1 | 5번 출력 (핀 6) |
| 0110 | 6 | 1 1 1 1 1 1 0 1 1 1 | 6번 출력 (핀 7) |
| 0111 | 7 | 1 1 1 1 1 1 1 0 1 1 | 7번 출력 (핀 9) |
| 1000 | 8 | 1 1 1 1 1 1 1 1 0 1 | 8번 출력 (핀 10) |
| 1001 | 9 | 1 1 1 1 1 1 1 1 1 0 | 9번 출력 (핀 11) |
입력은 보통 논리(Active High)이고 출력만 Active Low입니다. 선택된 출력 하나만 Low가 되고 나머지는 High입니다. 입력이 10~15이면 모든 출력이 High입니다. 전원은 16번 VCC, 8번 GND입니다.
3. 헷갈리지 않는 방법
- 데이터시트 기능표(Function Table)를 먼저 봅니다. H/L로 적힌 표가 논리식보다 정확합니다.
- 쓰지 않는 Active Low 입력은 High(VCC)에 연결합니다. 떠 있게 두면 TTL은 대개 High로 읽지만 잡음에 약합니다.
- LED로 확인할 때는 방향을 맞춥니다. Active Low 출력은 LED를 VCC 쪽에 달고(VCC → 저항 → LED → 출력) 출력이 Low일 때 켜지게 해야 "켜짐 = 선택"으로 읽힙니다. 저항값은 LED 저항 계산기로 구하세요.
- 보고서 표에는 전압(H/L)과 논리값(0/1)을 섞지 말고, 어떤 쪽으로 적었는지 표 제목에 밝힙니다.
BCD와 2진수 변환은 진법 변환기, 7-세그먼트 디코더(7447도 출력이 Active Low)는 7-세그먼트 계산기에서 확인할 수 있습니다.