Читать «Искусство схемотехники. Том 3 (Изд.4-е)» онлайн - страница 22
Пауль Хоровиц
Заметьте, что поскольку микросхема `138 игнорирует и младшие адресные сигналы, каждому периферийному устройству назначается целый набор смежных адресов. Некоторые устройства содержат несколько внутренних регистров, и для обращения к ним мы используем несколько младших линий адреса. Вы можете считать, что дешифратор отзывается на базовый адрес периферийного устройства. Рассмотрим теперь конкретные устройства ввода-вывода в нашем приборе.
ЭЛД и микропереключатели. Это простейшие из портов. При выводе матрица ЭЛД управляется 8-разрядным регистром из D-триггеров, для которого тактовым является сигнал декодирования адреса LEDSW', объединенный с WR'. Обратите внимание на то, что стробирование выполняется срезом сигнала; это уменьшает проблемы синхронизации, связанные со временем упреждения. Мы использовали восьмиразрядный регистр `273 с бистабильными выходами (вместо более распространенной тристабильной микросхемы `574) ради входа RESET', который мы устанавливаем на время сброса процессора или начальной загрузки; в результате при запуске световая индикация отключается. Логические микросхемы семейства НСТ имеют хорошие характеристики по скорости насыщения и выходному току (8 мА при выходном напряжении 4,5 В), что дает возможность использовать заземленную матрицу ЭЛД (с микросхемами семейства LS начальный уровень ЭЛД должен быть +5 В); это очень удобно, так как диоды индицируют единицы, а не нули. Выбранная нами матрица ЭЛД имеет встроенные резисторы, органичивающие ток до 6 мА. Заметьте, что один из битов порта ЭЛД управляет твердотельным реле переменного тока. Эти реле легко запускаются логическими уровнями (гарантированное напряжение срабатывания 3 В, сопротивление нагрузки 1,5 кОм), и, кроме того, они переключаются при нулевом напряжении (см. разд. 9.08 и 9.10). Заметьте также, что строб-сигнал WRITE порта ЭЛД выполняет дополнительную функцию, сбрасывая триггер BOOT при своей первой установке; после сброса триггера порт ЭЛД можно использовать по своему усмотрению.
Организация порта микропереключателей также не сложна. На выходе использован трехстабильный 8-разрядный инвертирующий буфер `240, управляемый уровнями от микропереключателей с принудительной установкой верхнего уровня. Разрешающим сигналом буфера служит тот же сигнал декодирования адреса LEDSW', на этот раз объединенный с RD'. Другими словами, если вы записываете по адресу $86000, данные индицируются на ЭЛД; если вы читаете, то считывается байт, характеризующий установку микропереключателей. Поскольку мы использовали инвертирующий буфер, замкнутый переключатель считывается как 1, а не 0.