Посмотрите на рис. 4.111. В положении «Сброс» переключатель ведущего может сбросить систему и отключить питание кнопок. В положении «Игра» переключатель прекращает удерживать систему в режиме сброса и подает питание на кнопки. Я вернулся к демонстрации версии для двух игроков, чтобы сделать все как можно проще, но концепцию по-прежнему легко расширить.
Теперь я должен решить логическую проблему. В том виде, как нарисована схема, на ней все соединено вместе. Я показал направление сигналов стрелками, но пока не знаю, каким образом остановить прохождение сигнала в неправильном направлении. Если я не решу эту проблему, сигнал любого игрока будет зажигать оба светодиода. Как можно избежать этого?

Я мог бы поставить диоды в идущие «наверх» провода, чтобы ток не мог спускаться «вниз». Но у меня есть более элегантная идея: добавить элемент ИЛИ, потому что его входы электрически отделены друг от друга. Предлагаемое решение продемонстрировано на рис. 4.112.
Базовый логический элемент ИЛИ имеет только два входа. Ограничит ли это меня в увеличении количества игроков? Нет, поскольку можно купить элемент ИЛИ с тремя, четырьмя или даже с восьмью входами. Если хотя бы на одном из них окажется высокий уровень, то и на выходе будет высокий уровень. Если игроков меньше, чем входов, вы заземляете неиспользуемые входы и игнорируете их.

Теперь у меня есть четкое представление о том, каким должен быть блокиратор кнопки. Я думаю, что это должен быть еще один логический элемент. Он действует так: «Если есть только один входной сигнал, от кнопки, я его пропущу. Но если будут и другие входные сигналы, я не позволю им пройти».
Прежде чем я начну выбирать логические элементы, следует решить, каким должен быть триггер с фиксацией. Можно купить готовый триггер, который включается, если получает один сигнал, и выключается, если получает другой, однако микросхемы, содержащие триггеры, имеют множество дополнительных функций, которые не нужны для такой простой схемы, как эта. Поэтому я снова собираюсь использовать таймеры 555 в бистабильном режиме. Они требуют малого количества соединений, работают очень просто и могут обеспечивать ток достаточной силы, чтобы зажечь светодиоды. Единственная проблема заключается в том, что в бистабильном режиме таймерам 555 необходим:
• низкий уровень на входе запуска, чтобы создать высокий уровень на выходе.
• низкий уровень на входе сброса, чтобы обеспечить низкий уровень на выходе.
Получается, что кнопка каждого игрока должна будет генерировать отрицательный импульс вместо положительного. Это будет удовлетворять требованиям таймеров.
Вот, наконец, упрощенная схема (рис. ЦВ-4.113). Я хочу показать контакты таймеров 555 в их правильном положении, поэтому пришлось немного передвинуть компоненты, чтобы уменьшить количество пересечений проводов, но вы поймете, что логически это та же самая схема.
Мне не хватило места для добавления символов плюса и минуса, чтобы показать, в каких состояниях находятся выводы таймера, и поэтому красный кружок означает, что вывод находится в высоком состоянии, а синий означает низкое состояние. Черные кружки означают, что состояние вывода может меняться. Белые кружки означают, что состояние этих выводов не имеет значения, и они могут оставаться неподключенными.
Прежде чем вы попробуете собрать предлагаемую схему, проверьте ее работоспособность теоретически, поскольку на конечном этапе ошибок не должно возникнуть. Важный момент, который следует учесть: таймеру 555 необходим отрицательный уровень на запускающем выводе, чтобы создать положительный уровень на выходе. Это означает, что когда любой из игроков нажимает кнопку, она должна выдавать инверсный сигнал.
Это немного трудно для интуитивного понимания, поэтому я привожу четыре рисунка (рис. ЦВ-4.114-4.117), демонстрирующие работу схемы.

На первом шаге переключатель ведущего находится в положении сброса. Низкое напряжение на выводах сброса таймеров обеспечивает низкие уровни на их выходах. Выходы соединены со светодиодами (которые выключены) и входами логического элемента ИЛИ1. Поскольку на его входах низкий уровень, то и на выходе тоже низкий уровень. Однако элементы ИЛИ2 и ИЛИЗ игнорируют этот сигнал, поскольку один вход у каждого из этих элементов находится в высоком состоянии, которое обеспечивают подтягивающие резисторы рядом с кнопками. Вспомните о том, что если любой из входов элемента ИЛИ высокий, то выход тоже высокий. А пока запускающий вход таймера, работающего в бистабильном режиме, находится под высоким потенциалом, таймер запускаться не будет. Схема находится в стабильном состоянии.
На втором шаге ведущий задал вопрос и переместил свой переключатель вправо, соединяя кнопки игроков с отрицательной шиной. Тем не менее, никто из игроков еще не ответил, поэтому подтягивающие резисторы поддерживают схему в стабильном состоянии и уровни на выходах таймеров низкие.
