Онлайн-журнал «Юный киберфизик»

Битва за миллисекунды

2026-09-10 19:27 Сделай сам
Наш журнал не только для чтения, но и для создания чего-то нового. В рубрике «Сделай сам» мы будем размещать схемы, чертежи и сценарии занятий — все, что позволит вам делать новые полезные вещи и технические системы своими руками. В этот раз мы расскажем об одном из игровых сценариев Руслана Тихонова из курса «Основы схемотехники», адаптированного Алексеем Федосеевым для «Юного киберфизика». Мы ждем вашей обратной связи, запросов и идей по теме «Сделай сам».

Методические рекомендации по курсу «Основы схемотехники»

Перед вами простая электронная игра «Кто быстрее?», построенная на триггерах. Она позволяет двум игрокам точно определить, кто первый нажал на кнопку. Это упражнение предлагает не только воссоздать тренажер на скорость из любимых телевикторин («Брейн-ринг» или «100 к 1»), но и разобраться с работой базового компонента любой сложной электронной схемы — триггера.

Прежде чем обсуждать электронную схему, нарисуем логическую схему машины состояний для нашей игры (см. рисунок). Из этой схемы взаимодействия пользователя с системой видно, что нам нужны два светодиода (HL1, HL2) и три кнопки (SB1, SB2, SB3), которые позволяют описать все возможные в игре состояния. Первым наступит то событие, которое связано с соответствующей кнопкой, это приведет к переходу в состояние, связанное с включением соответствующего светодиода. В игре «Кто быстрее?» это означает, что игрок, который первый нажал на кнопку и зажег светодиод, имеет приоритетное право ответа на вопрос.

Схему будем собирать в два этапа. Сначала соберем схему из двух триггеров (см. рисунок), убедимся в ее работоспособности, а потом добавим к ней логическую микросхему, содержащую вентили ИЛИ-НЕ. Сложные схемы, содержащие несколько микросхем, удобнее собирать, проверять и отлаживать по частям.

При нажатии на правую кнопку загорается зеленый светодиод. При нажатии на среднюю кнопку (SB2) загорается красный светодиод. Светодиоды продолжают гореть и после отпускания кнопок. Повторные нажатия на эти же кнопки не дают никакого эффекта. При нажатии на левую кнопку все светодиоды гаснут.
Для реализации этой машины состояний на макетной плате нам понадобятся следующие компоненты:

  • микросхема CD4013 (два D-триггера),
  • микросхема CD4001 (ИЛИ-НЕ),
  • светодиоды: 2 шт. (красный и зеленый),
  • тактовая кнопка: 3 шт.,
  • резистор 1,2 кОм (коричневый-красный-красный-золотой): 5 шт.,
  • перемычки,
  • беспаечная макетная плата (breadboard),
  • батарея питания 9 В типа Крона (6F22, 6LR61),
  • контактная колодка для батареи Крона с проводами.
В этом примере мы используем микросхему CD4013, которая уже содержит два независимых триггера. Это более сложные триггеры, они относятся к типу D-триггеров (от англ. delay — задержка, поэтому их также называют триггерами задержки). Каждый триггер содержит четыре входа (обозначены латинскими буквами S, R, C, D) и выход представленный парафазным (двухфазным) кодом — прямой и инверсный.

Входы триггера D (информационный) и C (синхронизации, или тактовый) мы использовать в этом примере не будем, поэтому для минимизации помех и устойчивой работы схемы подключим их к «минусу» питания.

Вход под названием S (set — установить, англ.) при подаче на него напряжения высокого уровня (логическая «1») устанавливает на прямом выходе триггера тоже логическую «1» и включает тем самым светодиод, подключенный к этому выходу.

Вход под названием R (reset — сбросить, англ.) при подаче на него логической «1» устанавливает на прямом выходе триггера логический «0» и выключает светодиод. По-другому еще говорят: сбрасывает триггер в нулевое состояние. В этой схеме сброс триггеров сделан одной кнопкой — она подключена к входам R сразу обоих триггеров.

Если эта часть схемы работает правильно, переходим к окончательной сборке игры.

Предыдущая схема с двумя триггерами претерпела ряд изменений. Мы добавили микросхему CD4001 с логическими элементами ИЛИ-НЕ, а кнопки для игроков подключили к этой микросхеме.
Изменился и способ подключения кнопок: они теперь подтянуты резистором к положительному полюсу питания (а не к отрицательному, как в прошлом примере). В замкнутом состоянии кнопки устанавливают состояние логического «0» на входах элементов ИЛИ-НЕ.

После подачи питания на схему, нажимаем кнопку «Сброс» (SB1, крайняя слева). Теперь схема точно находится в исходном состоянии, ни один светодиод не горит. Если нажата вторая (SB2) или третья (SB3) кнопка и соответствующий ей светодиод (красный или зеленый) горит, то нажатие другой кнопки уже никак не повлияет на работу схемы. Чтобы вернуть схему в исходное состояние, нужно снова нажать первую (SB1) кнопку «Сброс» (крайняя слева).

Можно начинать играть. По команде ведущего игроки команд стремятся как можно быстрее нажать каждый свою кнопку. Кто нажал первым, у того и загорается светодиод. Второму игроку не удастся включить свой светодиод, даже если первый игрок уже отпустил кнопку. Для следующего раунда игры нужно нажать кнопку «Сброс».
Вопросы для самостоятельного изучения:

  1. Для чего нужны логические вентили ИЛИ-НЕ в схеме игры?
  2. Каким способом можно решить проблему фальстарта в игре, когда игрок нажимает кнопку раньше команды ведущего?
Рекомендуемая литература:

  • Токхейм Р. Основы цифровой электроники. Мир, 1988 г. Стр. 140. Глава 6. Триггеры.
  • Ревич Ю. Занимательная электроника, 3-е издание. БХВ-Петербург, 2016 г. Стр. 350. D-триггеры.
Изучить основы схемотехники подробнее