15. Компаратор 74AC521
15. Компаратор 74AC521
🎯 Цель урокаНаучиться сравнивать числа с помощью компаратора.
🧠 Теория (10 мин)
Зачем сравнивать?
- Условные переходы:
if (A == B) then ... - Сортировка
- Поиск
- Ограничения:
if (temp > 100) alarm()
Виды сравнения
| Операция | Символ | Пример |
|---|---|---|
| Равно | A = B | 5 = 5 → Да |
| Не равно | A ≠ B | 5 ≠ 3 → Да |
| Больше | A > B | 7 > 3 → Да |
| Меньше | A < B | 2 < 5 → Да |
| Больше или равно | A ≥ B | 5 ≥ 5 → Да |
| Меньше или равно | A ≤ B | 3 ≤ 7 → Да |
Как сравнить два бита?
A = B:
| A | B | A = B? |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Это XNOR (NOT XOR)!
$$A = B \Leftrightarrow \overline{A \oplus B}$$Сравнение многобитных чисел
A = B, если все биты равны:
$$(A_3 = B_3) \land (A_2 = B_2) \land (A_1 = B_1) \land (A_0 = B_0)$$📦 Микросхема 74AC521
74AC521 — 8-битный компаратор на равенство.
Распиновка
┌───────────────────┐
OE ──┤ 1 20 ├── VCC
A0 ──┤ 2 19 ├── A=B (выход)
B0 ──┤ 3 18 ├── A7
A1 ──┤ 4 74AC521 17 ├── B7
B1 ──┤ 5 16 ├── A6
A2 ──┤ 6 15 ├── B6
B2 ──┤ 7 14 ├── A5
A3 ──┤ 8 13 ├── B5
B3 ──┤ 9 12 ├── A4
GND ──┤ 10 11 ├── B4
└───────────────────┘
| Пин | Название | Описание |
|---|---|---|
| A0-A7 | Input A | Первое число (8 бит) |
| B0-B7 | Input B | Второе число (8 бит) |
| A=B | Output | LOW когда A = B |
| OE | Output Enable | LOW для активации |
⚠️ Инверсный выход!Выход A=B активен в LOW!
- A = B → выход = 0 (LED горит через подтяжку)
- A ≠ B → выход = 1 (LED не горит)
🔧 Фаза 3: Собираем (20 мин)
Компоненты
| Компонент | Количество |
|---|---|
| 74AC521 | 1 |
| DIP-переключатель 8-поз | 2 |
| LED | 1 |
| Резистор 330 Ом | 1 |
Схема (4-битное сравнение)
DIP A ────────────── A0-A3 (Pins 2,4,6,8)
DIP B ────────────── B0-B3 (Pins 3,5,7,9)
A4-A7 (Pins 12,14,16,18) ── GND (не используем)
B4-B7 (Pins 11,13,15,17) ── GND
OE (Pin 1) ── GND (всегда активен)
A=B (Pin 19) ──┬── [330Ω] ── LED ── VCC
│ (подтяжка к VCC!)
└── (LOW = равно)
Тестирование
| A | B | A=B (Pin 19) | LED |
|---|---|---|---|
| 0101 (5) | 0101 (5) | LOW | 🟢 Горит |
| 0101 (5) | 0011 (3) | HIGH | 🔴 Не горит |
| 1111 (15) | 1111 (15) | LOW | 🟢 Горит |
| 0000 (0) | 0001 (1) | HIGH | 🔴 Не горит |
💡 Сравнение “больше/меньше”
Через вычитание
Используй сумматор в режиме вычитания:
- Если результат положительный и не ноль → A > B
- Если C₄ = 0 при вычитании → A < B
Специализированные компараторы
74HC85 — 4-битный компаратор с выходами A>B, A=B, A<B
┌───────────────────┐
B3 ──┤ 1 16 ├── VCC
A<B ──┤ 2 15 ├── A3
A=B ──┤ 3 74HC85 14 ├── B2
A>B ──┤ 4 13 ├── A2
A>Bi ──┤ 5 12 ├── A1
A=Bi ──┤ 6 11 ├── B1
A<Bi ──┤ 7 10 ├── A0
GND ──┤ 8 9 ├── B0
└───────────────────┘
📝 Мини-задания
✅ Чеклист
- Понимаю как работает сравнение
- Знаю распиновку 74AC521
- Собрал схему сравнения
- Понимаю инверсный выход
