Глава 4 МИКРОСХЕМЫ, ПРИВЕТ!
Перед тем как обратиться к такой волнующей теме, как интегральные схемы (ИС) (IC — integrated circuits), я хочу сделать признание: некоторые вещи, которые я просил вас сделать в главе 3, могли бы быть сделаны гораздо проще. Означает ли это, что вы потратили свое время зря? Нет, я твердо уверен, что изготовление схем с использованием давно известных компонентов — конденсаторов, резисторов и транзисторов — предоставляет наилучшую возможность для понимания принципов электроники. Кроме того, из этой главы вы узнаете, что интегральные схемы (ИС) — это микросхемы, или иначе чипы, содержащие десятки, сотни и даже тысячи транзисторов, и которые в состоянии решать поставленные задачи с наименьшими затратами времени и сил.
СПИСОК НЕОБХОДИМЫХ ПОКУПОК ДЛЯ ЭКСПЕРИМЕНТОВ С 16 ПО 24
Приборы и инструменты
Единственный прибор, который я рекомендую использовать при работе с микросхемами, это логический пробник. Он предоставляет возможность на конкретном выводе микросхемы определить уровень напряжения, т. е. высокий или низкий уровень, что может быть очень полезно при выяснении того, что в данный момент делает ИС. Пробник имеет функцию памяти, поэтому на нем будет загораться и продолжать гореть светодиод в ответ на импульс, который может оказаться слишком коротким для того, чтобы его можно было разглядеть глазом.
Поищите в Интернете и купите самый дешевый логический пробник, который сможете найти. У меня нет каких-либо специальных рекомендаций по какой-либо торговой марке. Тот, что, который показан на рис. 4.1, достаточно хорош с практической точки зрения.
Рис. 4.1. Логический пробник позволяет определить уровень напряжения на каждом выводе микросхемы, а также показывает наличие импульсов, которые могут быть слишком короткими, чтобы их можно было заметить невооруженным глазом
Расходуемые материалы
Интегральные микросхемы
Если вы купите все, что приведено в этом списке необходимых покупок, а также у вас остались все резисторы и конденсаторы, которые надо было приобрести для предыдущих экспериментов, то у вас должно быть все, что нужно для выполнения устройств в данной главе.
Все микросхемы достаточно дешевы (в настоящее время порядка 50 центов (около 15 руб) за штуку), я полагаю, что вы купите их с запасом. Даже если вы какую-нибудь из них выведете из строя, то у вас всегда что-то еще останется. Вы также создадите запасы для будущих устройств.
Пожалуйста, прочитайте следующий разд. «Фундаментальные сведения — Выбор микросхем» до начала их приобретения.
Микросхемы имеются в продаже во всех больших розничных магазинах электроники, а также предлагаются на интернет-аукционе eBay. Посмотрите приложение, где приведен полный список сайтов в Интернете.
Выбор микросхем
На рис. 4.2 показано то, что часто называют интегральной схемой (ИС) или иначе микросхемой. Микросхема на самом деле представляет собой полученную методом травления тонкую пластинку или чип (кристалл) кремния, установленный в пластмассовый корпус, который так и называется корпус (в английском языке package — упаковка, корпус). Тонкие проводники внутри корпуса соединяют кристалл микросхемы с двумя рядами штырьковых выводов с каждой стороны. Везде в данной книге я буду использовать слово «микросхема» для обозначения этого объекта целиком (кристалл в корпусе), включая выводы, поскольку оно используется наиболее часто.
Рис. 4.2. Интегральная микросхема в пластиковом корпусе с двумя рядами выводов, сокращенно называемом DIP-корпусом (в английском языке полное название Plastic Dual-Inline Pin — PDIP, а более распространенное сокращенное DIP)
Выводы располагаются с шагом 0,1'' (2,54 мм) в два ряда, которые находятся друг от друга на расстоянии 0,3'' (7,6 мм).
Данная форма известна, как пластмассовый корпус с двойным линейным расположением выводов (Plastic Dual-Inline Package сокращенно PDIP или более часто используется просто DIP). Микросхема на данной фотографии имеет по 4 вывода с каждой стороны; другие микросхемы могут иметь и большее количество выводов. Первое что вам надо знать при приобретении микросхем, это то, что вы будете использовать микросхемы только в DIP-корпусах. В данной книге мы не будем использовать микросхемы в более современных корпусах, которые предназначены для поверхностного монтажа, поскольку они гораздо меньше по размеру, с ними значительно труднее обращаться и они требуют использования специального инструмента, который довольно дорогой. На рис. 4.3 для сравнения показаны две микросхемы с 14 выводами одна в DIP-корпусе (сверху), а другая для поверхностного монтажа (снизу). Следует заметить, что множество микросхем для поверхностного монтажа существенно меньше той, которая показана на рисунке.
Рис. 4.3. Микросхема в DIP-корпусе на заднем плане имеет в корпусе выводы, которые находятся на расстоянии 0,1'' (2,54 мм) друг от друга, что соответствует расположению контактов на макетной или перфорированной плате. Ее можно припаять без использования специальных средств. Интегральная микросхема в корпусе типа SO (SOIC — Mall-Outline (package) Integrated Circuit) — микросхема для поверхностного монтажа (на переднем плане) имеет выводы для припаивания, расположенные на расстоянии 1/20'' (1,27 мм). Некоторые ИС для поверхностного монтажа имеют расстояние между выводами 1/40'' (0,64 мм) или даже меньше. Микросхемы для поверхностного монтаж а спроектированы изначально для автоматизированной сборки, поэтому с ними довольно сложно работать вручную. На данном фото желтые линии расположены друг от друга на расстоянии 1'' (25,4 мм), чтобы вы могли представить масштаб деталей
Практически на корпусе каждой микросхемы имеется номер детали, или иначе маркировка, который(ая) ее обозначает.
На рис. 4.2 микросхема имеет следующую маркировку — KA555. На рис. 4.3 показана микросхема в DIP-корпусе с маркировкой — M74HC00B1 и микросхема для поверхностного монтажа с маркировкой — 74LVC07AD. Вы можете игнорировать вторую строку чисел и/или букв на любом корпусе ИС, поскольку они не являются частью ее маркировки.
Следует заметить, что на рис. 4.3, несмотря на то, что по внешнему виду микросхемы очень сильно отличаются друг от друга, в маркировке они имеют один и тот же номер «74». Это связано с тем, что они обе принадлежат к одному и тому же семейству «7400» логических микросхем, которое изначально имело номера от 7400 и больше (7400, 7401, 7402, 7403 и т. д.).
Очень часто их обозначают как ИС семейства «74xx», где под «xx» подразумеваются все члены данного семейства. Я предполагаю многократно использовать представителей данного семейства, поэтому вам нужно узнать, как их покупать. Я дам вам некоторый совет по этому делу, не вдаваясь в детали, поскольку вы пока еще не представляете, что микросхемы на самом деле делают.
Посмотрите на рис. 4.4, на котором видно, каким образом можно интерпретировать стандартную маркировку микросхемы, принадлежащей семейству 74xx. Начальные буквы предназначены для идентификации производителя (их вы тоже можете игнорировать, поскольку они не оказывают никакого влияния на обозначение).
Рис. 4.4. Посмотрите на микросхему семейства (74xx, в данном случае) нужного поколения (в данном случае HC — высокоскоростной КМОП-(CMOS-)микросхемы) в маркировке. Убедитесь, что вы приобретаете микросхему именно в DIP-корпусе, а не в корпусе для поверхностного монтажа. Производитель не имеет значения
Пропускайте эти буквы, пока не доберетесь до цифр «74». После этого вы обнаружите еще две буквы, которые имеют важное значение. Семейство 74xx прошло эволюцию многих поколений и буквы, которые следуют после «74», указывают на то, с каким поколением вы имеете дело. Приведу пример обозначений для некоторых поколений этого семейства микросхем.
• 74L
• 74LS
• 74C
• 74HC
• 74AHC
Вообще говоря, каждое следующее поколение становится более быстрым или более универсальным по сравнению с предыдущим. В данной книге по причинам, которые я объясню позже, мы в основном будем использовать поколение HC (поколение высокоскоростных КМОП-(CMOS-)микросхем).
После буквенной идентификации поколения микросхемы вы можете обнаружить две цифры (иногда и больше). Они обозначают специальное назначение ИС. Оставшиеся буквы и цифры вы можете проигнорировать. Возвращаясь обратно к рис. 4.3, на котором маркировка M74HC00B1 микросхемы в DIP-корпусе показывает нам, что это интегральная микросхема семейства 74xx, поколения HC (High Speed CMOS — высокоскоростных КМОП-(CMOS-)микросхем), и функциональным назначением, закодированным цифрами 00. Микросхема для поверхностного монтажа, 74LVC07AD, говорит нам, что это ИС семейства 74xx, поколения LVC, с назначением, которое закодировано цифрами 07. Для удобства мы будем обозначать первую микросхему как «74HC00», а вторую как «74HC07», поскольку вне зависимости от различных производителей и размеров корпусов фундаментальные принципы функционирования микросхемы внутри корпуса остаются одинаковыми.
Цель данного длинного объяснения состоит в том, чтобы дать вам возможность правильно интерпретировать списки в каталоге электронных компонентов, когда вы пойдете покупать интегральные микросхемы. Вы можете искать «74HC00», а продавцы в Интернете достаточно компетентны, чтобы предоставить вам соответствующие ИС от большого числа производителей, несмотря на то, что они обозначаются другими буквами в начале маркировки микросхемы, а также после того обозначения, которое совпадает с тем, что вам необходимо.
Предположим, что вам нужна микросхема, которая представлена, как 74HC04. Если на веб-сайте поставщика деталей вы ищете «74HC04», то можете найти такие варианты микросхем, как CD74HC04M96 производства компании Texas Instruments, 74HC04N от компании NXP Semiconductors или MM74HC04N от компании Fairchild Semiconductor. Поскольку все они имеют обозначение «74HC04» в центре, они все будут функционировать так, как нам необходимо.
Только будьте особенно внимательны, поскольку вам нужно купить микросхемы в относительно большом DIP-корпусе, а не в корпусе для поверхностного монтажа. Если в конце маркировки микросхемы присутствует буква «N», то вы можете быть уверены, что это именно DIP-корпус. Если же в конце обозначения нет буквы «N», то это может быть, а может и не быть DIP-корпус, и вам дополнительно потребуется проверить изображение микросхемы или же прочитать подробное описание на ИС. Если маркировка микросхемы начинается с букв SS, SO или TSS, то абсолютно точно это корпус для поверхностного монтажа и вам ее приобретать не следует. Во многих каталогах имеются фотографии интегральных микросхем, что может помочь вам в правильном выборе типа корпуса.
Далее приведен список необходимых вам микросхем.
• Таймер 555. Микросхемы STMicroelectronics SA555N, Fairchild NE555D, RadioShack TLC555 или аналогичные им. Не следует приобретать ИС КМОП-версии или любые другие экзотические версии, например те, которые имеют повышенную точность. Покупайте самые дешевые, которые найдете.
Количество — 10 шт. Микросхема таймера 555 показана на рис. 4.2.
• Логические микросхемы типа 74HC00, 74HC02, 74HC04, 74HC08, 74HC32 и 74HC86. Реальная маркировка микросхем может быть M74HC00B1, M74HC02B1, M74HC04B1 и т. д. Производства компании STMicroelectronics, или SN74HC00N, SN74HC02N, SN74HC04N и т. д. от компании Texas Instruments. Приемлемы и любые другие производители.
Следует помнить, что каждая логическая микросхема в середине маркировки должна иметь сокращение «HC», а также то, что вам нужен именно DIP-корпус (DIP или PDIP), а не корпус для поверхностного монтажа. Количество каждого типа микросхем — по меньшей мере 4 шт.
• Четырехразрядный десятичный счетчик 4026 с дешифратором для семисегментного индикатора. Микросхема CD-4026BE производства компании Texas Instruments или ее аналог. Количество — 4 шт. (вам понадобится 3, но поскольку микросхемы КМОП чувствительны к статическому электричеству, то надо иметь по меньшей мере одну в запасе).
Вам может подойти любая микросхема с цифрами «4026» в ее маркировке.
• Счетчик 74LS92, микросхема 74LS06 (инвертер с открытым коллектором) и микросхема 74LS27 (трехвходовой логический элемент ИЛИ-НЕ). Количество — по 2 шт. Помните о сокращении «LS» (сокращение от англ. Low(-power) Schottky — маломощные транзисторно-транзисторные логические схемы с диодами Шотки (ТТЛШ)) в каждой маркировке микросхемы! У нас будет один эксперимент, в котором я хочу использовать LS-поколение микросхем вместо поколения HC.
Панельки для установки микросхем
Я советую вам исключить припаивание микросхем напрямую к перфорированной плате. Если вы при этом повредите микросхемы, то отпаять их будет довольно затруднительно. Купите несколько панелек для установки микросхем в DIP-корпусах (рис. 4.5), припаяйте их к плате и затем вставляйте в них микросхемы.
Для наших экспериментов вы можете использовать самые дешевые панельки, которые можно найти (вам наверняка не нужны будут панельки с позолоченными контактами). Вам необходимы панельки для микросхем с количеством выводов 8, 14 и 16, например, такие, как позиции 276–1995, 276–1999 и 276–1998 в перечне компонентов компании RadioShack. Количество каждой позиции панелек — минимум 5 шт.
Рис. 4.5. Когда вы припаиваете панельку для микросхем к перфорированной плате, то этим вы устраняете возможный перегрев микросхем при их непосредственном припаивании к плате, уменьшаете риск выхода их из строя за счет воздействия на них статического электричества, а также упрощаете при необходимости замену ИС
Маломощные светодиоды
Логические микросхемы, которые вы будете использовать, не предназначены для управления элементами большой мощности. Для увеличения мощности выходного сигнала, если вы хотите получить яркое свечение светодиода или срабатывание реле, вам потребуется добавление транзисторов. Поскольку такое решение проблемы создаст некоторые трудности, я предлагаю в качестве альтернативы специальные маломощные светодиоды, которые потребляют всего лишь 1 мА, как например, красный светодиод HLMPK150 с малым прямым током производства компании Everlight. Для сравнения на рис. 4.6 показан этот светодиод вместе со стандартным светодиодом диаметром 5 мм. Количество — минимум 10 шт.
Рис. 4.6. Логическая микросхема поколения HC спроектирована так, что каждый ее вывод может выдать всего лишь 4 мА. Этого недостаточно для того, чтобы загорелся стандартный светодиод диаметром 5 мм (справа), который потребляет ток 20 мА. Миниатюрные светодиоды с низким потреблением тока (слева) требуют всего лишь 1 мА с последовательно подключенным резистором, что является идеальным для схем, в которых вы хотите иметь выход с минимальным количеством проблем
Светодиодные цифровые индикаторы
По меньшей мере в одном из наших устройств вам понадобится отображать цифры с помощью 7-сегментных светодиодных цифровых индикаторов (рис. 4.7). Вам понадобится либо три отдельных индикатора, либо один блок, который содержит три цифры, как например, высокоэффективный светодиодный индикатор с рассеянным излучением красного цвета BC56–11EWA от компании Kingbright, который будет иметь специальное обозначение в схемах данной книги. Если вы покупаете различные 7-сегментные индикаторы, то они должны быть индикаторами с «общим катодом». (Не следует покупать жидкокристаллические индикаторы; они требуют совершенно другой электронной схемы для управления ими.) Если у вас есть выбор по энергопотреблению, то выбирайте компоненты, потребляющие минимальный ток.
Рис. 4.7. 7-сегментные индикаторы это простейший способ для отображения выходной цифровой информации. Такими индикаторами можно управлять, используя некоторые микросхемы КМОП (CMOS). Для завершенных устройств они обычно устанавливаются позади акриловых пластиковых панелей, прозрачных для красного цвета
Реле с фиксацией
Вам может понадобиться реле на рабочее напряжение 5 В без самовозврата в первоначальное состояние (с фиксацией) после срабатывания, которое имеет две катушки вместо одной. Первая обмотка заставляет срабатывать реле; а вторая возвращает его в исходное состояние. Реле не потребляет дополнительной мощности, оставаясь пассивным в каждом состоянии. Я предлагаю использовать реле DS2E-SL2-DC5V производства компании Panasonic. Если вы покупаете другое реле, то оно должно быть с фиксацией и с двумя обмотками, на рабочее напряжение 5 В постоянного тока, с возможностью коммутации тока величиной до 1 А, двухполюсное двухпозиционное.
Потенциометры
Вам понадобятся потенциометры с линейной характеристикой с сопротивлением 5, 10 и 100 кОм (по одному каждого номинала). Кроме того, понадобится подстроечный резистор на 10 кОм (который в английском языке часто называют «trimmer»). Производитель значения не имеет.
Стабилизатор напряжения
Поскольку многие логические ИС требуют точного значения напряжения питания, равного 5 В постоянного тока, то вам потребуется стабилизатор напряжения, который в состоянии это обеспечить. С этой задачей может справиться стабилизатор LM7805. В данном случае номер микросхемы будет предшествовать или следовать за аббревиатурой, которая указывает производителя и тип корпуса, например, стабилизатор LM7805CT от компании Fairchild. Для экспериментов в данной главе подойдет стабилизатор от любого производителя, но его корпус должен выглядеть точно так же, как тот, который представлен на рис. 4.8, и если у вас есть выбор, то следует покупать стабилизатор, который в состоянии обеспечить ток до 1 А.
Рис. 4.8. Многим микросхемам требуется стабилизированный источник на напряжение 5 В, которые он может обеспечить, используя на входе напряжение от 7,5 до 9 В. Вывод слева предназначен для входа положительного напряжения, центральный вывод это общий, а правый вывод это выход стабилизированного напряжения 5 В. Для токов, превышающих 250 мА, вы должны закрепить стабилизатор винтами на металлическом радиаторе, используя отверстие в верхней части корпуса стабилизатора
Кнопочные переключатели
Это однополюсные однопозиционные кнопки (переключатели без фиксации положения), обычно имеют 4 вывода (рис. 4.9).
Обратите внимание на кнопки SKHHAKA010 от компании ALPS или любой их аналог, который имеет расположение выводов, позволяющее вставить их в макетную или перфорированную плату.
Рис. 4.9. Кнопочный переключатель, который реагирует на нажатие кончиком вашего пальца на кнопку. Это почти всегда однополюсные однопозиционные кнопки типа SPST, сконструированные для установки в платах со стандартным расположением отверстий — с шагом 0,1'' (2,54 мм)
Цифровая 12-кнопочная клавиатура
«12-кнопочная клавиатура с общим выходом» от компании Velleman (не имеет номера детали, но ее можно найти в каталоге All Electronics под кодовым номером KP-12). Количество — 1 шт.
Этот тип клавиатуры имеет то же самое расположение кнопок, что и старомодный кнопочный телефон. Он должен иметь, по меньшей мере, 13 выводов или контактов (рис. 4.10), 12 из которых подключаются к отдельным кнопкам, а тринадцатый подключается к другому выводу всех остальных кнопок. Другими словами последний вывод является «общим» для всех, а такой тип клавиатуры часто называют клавиатурой с «общим выходом». Обратите внимание, что клавиатура с «матричным кодированием» (рис. 4.11) вам точно не потребуется, поскольку, несмотря на то, что она и имеет меньшее количество выводов, для ее подключения все же требуется дополнительная внешняя схема. Если вы не можете найти клавиатуру компании Velleman, которую я предлагаю, то вам надо тщательно изучить описание клавиатуры и ее изображение, чтобы быть абсолютно уверенным, что вы покупаете именно клавиатуру с общей клеммой (катодом), а не клавиатуру с матричным кодированием.
В качестве альтернативы вы можете использовать 12 отдельных однополюсных однопозиционных дешевых кнопок без фиксации типа SPST, которые надо установить в небольшой корпус.
Рис. 4.10. При покупке цифровой клавиатуры нужно выбирать клавиатуру с 12 кнопками с компоновкой «кнопочного телефона», которая должна иметь по меньшей мере 13 контактов. Контакты здесь можно заметить на переднем крае печатной платы клавиатуры
Рис. 4.11. Эта клавиатура хотя и имеет малое количество выводов, но в данной книге использоваться не будет
Как вообще появились микросхемы
Концепция интегральных твердотельных компонентов в одном небольшом корпусе родилась в голове британского специалиста по радарам Джеффри В. А. Даммер (Geoff rey W. A. Dummer), который говорил о ней многие годы прежде, чем попытался ее безуспешно изготовить в 1956. Первая по-настоящему интегральная микросхема была изготовлена в 1956 году Джеком Килби (Jack Kilby), работавшим в компании Texas Instruments. В варианте Килби использовался германий, поскольку этот элемент уже применялся для изготовления полупроводниковых приборов. (Вы познакомитесь с германиевым диодом, когда я перейду к обсуждению детекторного радиоприемника в следующей главе данной книги.) Но у Роберта Нойса (Robert Noyce), портрет которого показан на рис. 4.12, была более интересная идея.
Рис. 4.12. Это портрет Роберта Нойса (Robert Noyce) в конце его карьеры, из интернет-ресурса Wikimedia Commons
Он родился в Айове в 1927 году, а в 1950-х годах переехал в Калифорнию, где нашел себе работу у Уильяма Шокли (William Shockley). Это было сразу после того, как Шокли организовал свой бизнес по производству транзисторов, изобретенных им совместно с другими авторами в компании Bell Labs.
Роберт Нойс был одним из восьми сотрудников, которые были обижены менеджментом компании Шокли и покинули ее, образовав собственную компанию Fairchild Semiconductor.
Когда Нойс был генеральным менеджером компании Fairchild, он изобрел кремниевую интегральную микросхему, у которой не было проблем при изготовлении, присущим микросхемам на базе германия. Роберт Нойс официально объявлен человеком, который сделал возможным использование интегральных микросхем.
Ранние разработки применялись в военной промышленности, поскольку в ракетах Минитмен требовались небольшие, легкие компоненты в системах управления. В этих системах использовались почти все микросхемы, произведенные с 1960 до 1963 года. В течение этого периода времени стоимость отдельного компонента упала от примерно $1000 до $25.
В 1960-х годах каждая ИС среднего уровня уже содержала сотни транзисторов. Интегральные схемы большой степени интеграции к середине 1970-х уже содержали до десятка тысяч транзисторов на одну микросхему, а современные ИС могут состоять из нескольких миллионов транзисторов.
В итоге Роберт Нойс (Robert Noyce) совместно с Гордоном Муром (Gordon Moore) организовал компанию Intel, но неожиданно умер от инфаркта в 1990 году. Более подробно об увлекательной истории возникновения, проектирования и изготовления микросхем вы можете узнать на сайте: http://www.siliconvalleyhistorical.org.
Эксперимент 16. ГЕНЕРИРОВАНИЕ ИМПУЛЬСОВ
Я собираюсь представить вам наиболее удачную среди всех выпускаемых микросхем — это таймер 555. Поскольку в Интернете вы можете найти большое количество руководств, в которых рассматривается это устройство, и, следовательно, можете спросить, зачем же нам нужно здесь его обсуждать, то у меня для этого есть, по меньшей мере, три причины:
1. Этого нельзя избежать. Вы просто должны знать эту микросхему. По оценке некоторых источников ежегодное производство этих микросхем составляет более 1 миллиона штук ежегодно. Микросхема таймера 555 будет использоваться тем или иным способом в большинстве схем, которые осталось рассмотреть в этой книге.
2. Микросхема таймера 555 представляет собой отличное введение в интегральные микросхемы, поскольку она является надежными, универсальным устройством и демонстрирует сразу две функции, с которыми мы познакомимся позднее: функцией компаратора и триггера (flip-flop).
3. После чтения всех руководств по ИС 555, которые я смог найти, начиная с исходного текста оригинального технического описания от компании Fairchild Semiconductor и завершая различными описаниями, посвященными электронике в качестве хобби, я пришел к заключению, что его внутреннее функционирование редко объясняется достаточно понятно.
Я хочу предоставить вам графическое изображение того, что происходит внутри, поскольку, если вы не будете иметь его, то не получите возможность творческого использования данной микросхемы.
Вам понадобятся:
1. Источник питания с напряжением 9 В.
2. Макетная плата, провода для перемычек и мультиметр.
3. Потенциометр с линейной характеристикой и сопротивлением 5 кОм. Количество — 1 шт.
4. Микросхема таймера 555. Количество — 1 шт.
5. Набор резисторов и конденсаторов.
6. Однополюсные однопозиционные кнопки без фиксации. Количество — 2 шт.
7. Светодиод (любого типа). Количество — 1 шт.
Порядок действий
Микросхема таймера 555 очень надежный электронный компонент, но все же, теоретически, разрядом статического электричества вы можете вывести ее из строя. Поэтому, чтобы это исключить, перед тем, как начинать работу с микросхемой, вам надо будет заземлиться. Эта процедура подробно описана далее в разд. «Эксперимент 18. Таймер измерения реакции человека» в примечании «Заземление себя». Хотя это примечание прежде всего относится к такому типу микросхем, которые называются CMOS (от англ. Complementary Metal-Oxide Semiconductor — комплементарный металлооксидный полупроводник — КМОП) и которые особенно уязвимы, заземление это именно та предосторожность, которой не следует пренебрегать в любом случае.
Посмотрите на маленький идентификационный элемент в форме круглого точечного углубления, на корпусе микросхемы и поверните корпус таким образом, чтобы эта метка (или иначе ключ) находилась в левом верхнем углу при направленных от вас выводах микросхемы. Если же на вашей микросхеме идентификационный элемент (ключ) выглядит как полукруглая выемка на середине одного из торцов корпуса, то надо повернуть микросхему таким образом, чтобы эта выемка находилась вверху.
При таком расположении микросхемы ее выводы нумеруются против часовой стрелки, начиная с левого верхнего вывода (находящегося рядом с ключом). Обратите внимание на рис. 4.13, на котором, кроме того, приведены наименования выводов микросхемы таймера 555, хотя вам пока нет необходимости знать о них что-то больше.
Рис. 4.13. Обозначение выводов микросхемы таймера 555. Выводы всех подобных микросхем нумеруются против часовой стрелки, начиная с левого верхнего угла. При этом метка (ключ) на корпусе должна находиться в верхней части корпуса
Вставьте микросхему в вашу макетную плату таким образом, чтобы его выводы попали в отверстия посередине платы. Теперь можно легко подать напряжение питания на одни выводы и получить сигналы с других выводов. Для более точного определения положения микросхемы в первом устройстве посмотрите на рис. 4.14. Таймер на нем обозначен, как «IC1», поскольку «IC» является общепринятым сокращением словосочетания «Integrated Circuit» (интегральная схема — ИС).
Рис. 4.14. Эта схема дает возможность исследовать поведение микросхемы таймера 555.
Используйте ваш мультиметр, чтобы осуществлять контроль напряжения на выводе 2, как это показано на рисунке. Обращаю ваше внимание на то, что на схеме нет резисторов с обозначениями R1, R2 или R3 и нет конденсаторов C1 или C2, поскольку они будут добавлены в схему позднее.
В схеме используются следующие элементы: R4 — резистор с сопротивлением 100 кОм; R5 — резистор с сопротивлением 2,2 кОм; R6 — резистор с сопротивлением 10 кОм; R7 — резистор с сопротивлением 1 кОм; R8 — потенциометр с линейный характеристикой и сопротивлением 5 кОм; C3 — конденсатор электролитический емкостью 100 мкФ; C4 — конденсатор электролитический емкостью 47 мкФ; C5 — конденсатор керамический 0,1 мкФ; IC1 — микросхема таймера 555; S1, S2 — кнопочные однополюсные однопозиционные переключатели без фиксации; D1 — светодиод общего назначения.
Резистор R5 поддерживает положительный потенциал на выводе 2 (Запуск) до тех пор, пока не будет нажата кнопка S1, которая понижает напряжение в этой точке до значения, задаваемого положением оси потенциометра R8. Когда напряжение на входе «Запуск» падает ниже 1/3 напряжения питания, выход микросхемы (вывод 3) переходит в состояние высокого уровня в течение периода времени, которое определяется номиналами R4 и C4. Кнопочный переключатель S2 осуществляет сброс таймера путем уменьшения напряжения на выводе 4 (Сброс). Конденсатор C3 сглаживает пульсации напряжения питания, а конденсатор С5 изолирует вывод 5 (Управляющее напряжение), чтобы он не смог оказать влияние на функционирование этой схемы. (Мы будем использовать вывод 5 в следующем эксперименте.)
Для всех интегральных схем необходим источник питания.
На микросхему таймера 555 напряжение питания должно быть подано следующим образом — отрицательное напряжение на вывод 1, а положительное на вывод 8. Если вы случайно перепутаете полярность, то это может привести к выходу ИС из строя, поэтому будьте очень внимательны при подключении ваших перемычек для подачи питания.
Установите на вашем сетевом адаптере выходное напряжение равным 9 В. Это вполне подходящее значение напряжения для выполнения эксперимента, если вы присоедините плюс питания к правой стороне макетной платы, а минус к левой стороне, как это показано на рис. 4.14. C3 — это электролитический конденсатор большой емкости, по меньшей мере 100 мкФ, который подключен параллельно источнику напряжения для сглаживания его пульсаций и для обеспечения накопления определенного заряда при подаче напряжения питания на микросхему, которая осуществляет переключения. Кроме этого, он также ограничивает другие быстрые перепады напряжения. Хотя микросхема таймера 555 не является устройством, которое было специально спроектировано для очень быстрого переключения. Однако существуют и другие микросхемы, являющиеся таковыми, и поэтому вы должны взять за правило применять такого рода средства защиты от быстрых переключений.
Сначала повернем ось потенциометра против часовой стрелки до конца для того, чтобы максимально увеличить сопротивление между точками, к которым он подключен. После этого, когда вы приложите измерительный провод вашего тестера к выводу 2, то вы должны получить напряжение 6 В после нажатия кнопки S1.
Теперь поверните потенциометр по часовой стрелке и снова нажмите кнопку S1. Если светодиод D1 не загорится, то продолжайте вращать потенциометр и нажимать и отпускать эту кнопку.
Когда вы повернете ось потенциометра примерно на две трети ее полного хода, то вы должны увидеть, что светодиод после каждого нажатия кнопки S1 будет загораться и светиться примерно 5 сек. Далее приведены некоторые факты, в справедливости которых вам следует убедиться самостоятельно.
• Светодиод продолжает гореть после того, как вы отпускаете кнопку S1.
• Вы можете удерживать нажатой кнопку S1 достаточно долго (но меньше продолжительности цикла таймера) и светодиод всегда будет выдавать световой импульс одной и той же длительности.
• Таймер срабатывает после снижения напряжения на выводе 2. Вы можете проверить это своим мультиметром.
• Светодиод D1 будет либо полностью включен, либо полностью выключен. Вы не сможете увидеть слегка мерцающий светодиод, когда он находится в выключенном состоянии, а переход из положения «выключено» и «включено» происходит очень быстро и четко.
Посмотрите на соответствующую электрическую схему устройства (рис. 4.15) и на расположение всех компонентов на вашей макетной плате (рис. 4.16). Согласно справочной информации, представленной в листах технических данных таймера 555, в схему нужно будет добавить некоторые компоненты, которые мы обозначим как R1, R2, C1 и C2. Поэтому в этой исходной схеме резисторы обозначены, начиная с R4, а конденсаторы, начиная с C3.
Рис. 4.15. Графическое представление электрической схемы устройства, монтажная схема которого показана на рис. 4.14. В этой главе схематические схемы выполнены таким образом, что они максимально похожи на расположение компонентов на макетной плате. Это не всегда самое оптимальное изображение компоновки, но пользуясь этим изображением проще всего выполнять монтаж. Номиналы всех компонентов схемы представлены на рис. 4.14
Рис. 4.16. Здесь показано, как выглядят компоненты схемы после их установки на макетную плату. Зажимы типа «крокодил» присоединены к проводу, который соединяет электролитический конденсатор C3 емкостью 100 мкФ с потенциометром R8. Напряжение питания на плату не подано
Когда кнопка S1 не нажата, на вывод 2 таймера 555 через резистор R5, который имеет сопротивление 2,2 кОм, поступает положительное напряжение. Поскольку внутреннее входное сопротивление таймера на выводе 2 имеет очень высокое значение, то напряжение на нем будет почти равно напряжению источника питания, т. е. 9 В.
Если же нажать на кнопку S1, то помимо этого к выводу 2 через резистор R8 (потенциометр с сопротивлением 5 кОм) будет подключен еще и минусовой вывод источника питания. Таким образом, для вывода 2 резисторы R8 и R5 образуют делитель напряжения. Вы, наверное, можете вспомнить аналогичное решение, когда вы выполняли тестирование транзисторов. Напряжение между этими резисторами будет меняться в зависимости от значений их сопротивлений.
Если ось потенциометра R8 повернуть примерно наполовину, то сопротивление потенциометра будет примерно равно сопротивлению резистора R5, т. е. в средней точке делителя, подключенной к выводу 2, напряжение будет равно примерно половине напряжения источника питания. Но когда вы будете поворачивать ось потенциометра таким образом, чтобы его сопротивление уменьшалось, напряжение на выводе 2 микросхемы начнет постепенно уменьшаться.
Если у вас есть зажимы на измерительных проводах вашего мультиметра, то вы можете закрепить их на соответствующих выводах элементов, а затем следить за тестером при повороте потенциометра в одну и в другую сторону, после чего каждый раз следует нажимать на кнопку S1.
Графики на рис. 4.17 иллюстрируют происходящее. На верхнем графике показано напряжение, которое приложено к выводу 2 микросхемы при произвольных нажатиях кнопки и различных положениях оси потенциометра. На нижнем графике показано, что микросхема таймера 555 срабатывает тогда, и только тогда, когда напряжение на выводе 2 становится меньше напряжения 3 В. Что такого особенного в этой величине 3 В? Это одна треть от напряжения питания 9 В.
Рис. 4.17. На верхнем графике показано напряжение запуска (вывод 2), когда нажата кнопка, причем интервалы нажатия и отпускания кнопки разные при различных положениях оси потенциометра. Нижний график иллюстрирует выходной сигнал (вывод 3), который скачкообразно меняется от нуля до напряжения питания, в тот момент времени, когда напряжение на выводе 2 станет меньше 1/3 напряжения питания
Далее следуют пункты, которые надо проверить при выполнении домашнего задания.
• Выход микросхемы таймера 555 (вывод 3) выдает положительный импульс только тогда, когда напряжение запуска (вывод 2) становится меньше одной трети напряжения питания схемы.
• Микросхема таймера 555 каждый раз формирует положительной импульс одной и той же длительности (начиная с момента выдачи запускающего напряжения на выводе 2).
• Чем больше сопротивление резистора R4 или емкость конденсатора C4, тем больше длительность выходного импульса.
• Когда на выходе (вывод 3) будет напряжение высокого уровня, то это напряжение будет практически равно напряжению питания. Когда на выходе напряжение низкого уровня, то оно почти равно нулю.
Микросхема таймера 555 преобразует хаотичный мир входных запускающих импульсов в прецизионный и регулируемый на выходе. Микросхема на самом деле не включается и не выключается абсолютно мгновенно, но все-таки достаточно быстро, чтобы каждый раз можно было бы считать ее изменяющейся мгновенно.
Теперь осталась еще одна вещь, которую следует попробовать. Срабатывание таймера приводит к тому, что загорается светодиод D1. Если же в это время нажать на кнопку S2, то она на вывод 4 (Сброс) подаст нулевое напряжение. При этом светодиод должен мгновенно погаснуть.
Когда напряжение на выводе «Сброс» станет низким, выход тоже становится низким вне зависимости от напряжения, которое приложено к выводу «Запуск».
Есть еще одна вещь, о которой я хотел бы упомянуть до начала использования таймера в более интересных схемах. Я включил резисторы R5 и R6 таким образом, что как только вы подадите питание на таймер, он не должен формировать импульсы, но был бы готов к выполнению этого. Данные резисторы задают положительные напряжения соответственно на выводах «Запуск» и «Сброс», что создает такие условия, при которых таймер 555 будет готов запуститься, как только на него подадите напряжение питания.
Пока напряжение на выводе «Запуск» будет оставаться высоким, таймер не будет генерировать импульсы. (Он генерирует импульсы только, когда это напряжение будет меньше некоторого порогового значения.)
Пока напряжение на выводе «Сброс» будет оставаться высоким, таймер будет в состоянии формировать импульсы. (Генерация прекращается, когда напряжение на этом выводе будет иметь низкий уровень.)
Резисторы R5 и R6 известны, как подтягивающие резисторы, поскольку подтягивают напряжение в точках их подключения к напряжению питания. Вы с легкостью можете подавить это напряжение, используя непосредственное подключение этих точек к отрицательному выводу источника питания. Типичное значение сопротивления подтягивающего резистора для таймера 555 составляет 10 кОм. В соответствии с законом Ома при наличии источника питания с напряжением 9 В через резистор будет протекать ток, равный 0,9 мА.
Наконец, вы можете задаться вопросом о назначении конденсатора C5, присоединенного к выводу 5. Этот вывод известен, как вывод «Управляющего напряжения», что означает, что если вы подаете на него напряжение, то вы можете управлять чувствительностью таймера. Я вернусь и рассмотрю это более подробно несколько позднее. Поскольку мы не используем эту функцию прямо сейчас, то в качестве нормального решения будет подключение к выводу 5 конденсатора, чтобы защитить его от колебаний напряжения питания и предотвратить попадание на него какого-либо сигнала, который окажет на этот вывод негативное воздействие при нормальном функционировании.
Прежде чем продолжите чтение, убедитесь, что вы знакомы с основными функциями таймера 555.
Внутри таймера 555. Режим одновибратора (моностабильный)
Пластмассовый корпус таймера 555 содержит пластинку кремния (кристалл), на которой вытравлены сотни транзисторных переходов согласно схеме, которая слишком сложна, чтобы ее можно было обсудить в данной книге. Тем не менее я смог обобщить функции этих внутренних элементов, разделив их на основные группы, которые показаны на рис. 4.18. Кроме этого на этой схеме показаны внешний резистор R4 и два внешних конденсатора С4 и С5, которые обозначены так же, как и на схеме, приведенной на рис. 4.15.
Рис. 4.18. Внутренняя структурная схема таймера 555. Белыми линиями показаны резисторы и соединения внутри микросхемы. Треугольниками с буквами «A» и «B» обозначены два компаратора. Прямоугольник, обозначенный «FF» — это триггер (flip-flop), который находится либо в одном, либо в другом стабильном состоянии, аналогично двухполюсному двухпозиционному переключателю. Снижение уровня напряжения на выводе 2 контролируется компаратором «А», который при определенном значении напряжения переключает триггер (переключатель) в нижнее по схеме положение (DOWN), и таким образом формирует положительный импульс на выходе микросхемы (вывод 3). Когда конденсатор C4 зарядится до напряжения, равного 2/3 напряжения питания, что определяется компаратором «В», который в это время переключает триггер (переключатель) в верхнее по схеме положение (UP). В этом состоянии триггера заряженный ранее конденсатор C4 разряжается через вывод 7
Символами питания с минусом «—» и плюсом «+» внутри интегральной микросхемы отмечено напряжение питания, которое подается на ее выводы 1 и 8 соответственно. Я опустил внутренние соединения этих выводов, чтобы сделать схему более понятной.
Два желтых треугольника, обозначенных буквами «A» и «B», означают два внутренних компаратора. Каждый компаратор сравнивает два напряжения на двух входах (в основании треугольника) и выдает выходное напряжение (из вершины треугольника) в зависимости от того, одинаковый сигнал на входах или различный. В дальнейшем в данной книге мы обязательно будем использовать компараторы для различных целей.
Прямоугольник зеленого цвета, который внизу обозначен буквами «FF», означает триггер (flip-flop). На структурной схеме я показал его в виде двухполюсного двухпозиционного переключателя, поскольку в данном случае он функционирует именно так, хотя, естественно, это твердотельный полупроводниковый переключатель.
Изначально, когда вы подаете напряжение питания на микросхему, триггер находится в верхнем по схеме положении (которое и показано на рис. 4.18), когда отрицательный (общий) вывод источника питания, обозначенный символом «—», поступает на выход микросхемы (вывод 3). Если на триггер приходит сигнал (DOWN) от компаратора «А», то он переключается в нижнее по схеме положение и затем какое-то время остается в этом состоянии. Когда же на триггер приходит сигнал (UP) от компаратора «В», то он снова переключается в верхнее по схеме положение и фиксируется уже в этом состоянии. Обозначения «UP» (вверх) и «DOWN» (вниз) на выходах соответствующих компараторов будут напоминать вам, что каждый из них делает, когда переходит в активное состояние.
Триггер является основным элементом в цифровой электронике. Компьютеры не смогли бы функционировать без использования этого элемента.
Обратите внимание на внешний провод, который присоединяет вывод 7 к конденсатору С4. Пока триггер находится в верхнем по схеме положении, на этот вывод поступает «—» источника питания, что препятствует заряду конденсатора от «+» источника питания через резистор R4.
Если напряжение на выводе 2 падает до 1/3 напряжения питания, то компаратор «А», замечая это, выполняет переключение триггера. Это приводит к началу формирования положительного импульса на выводе 3, а также к отключению «—» источника питания от вывода 7. Поэтому в это время конденсатор C4 через резистор R4 начинает заряжаться от «+» источника питания. Пока выполняется заряд конденсатора, на выходе таймера продолжает присутствовать «+» источника питания, т. е. продолжается формирование положительного импульса.
По мере заряда конденсатора C4 компаратор «В» через вывод 6, который называется «Порог» (Threshold), отслеживает возрастающее на конденсаторе напряжение. Когда конденсатор зарядится до значения, равного 2/3 напряжения источника питания, компаратор «В» сработает и выдаст сигнал «UP» (вверх) на триггер, возвращая его обратно в исходное состояние, которое показано на рисунке. Это приводит к разряду конденсатора через вывод 7, который так и называется «Разряд» (Discharge). В это время триггер прекращает формирование положительного импульса на выходе микросхемы (вывод 3) и выдает на него «—» источника питания. Таким образом таймер 555 возвращается в исходное состояние.
Обобщая все предыдущее, приведу последовательность основных выполняемых событий:
1. Изначально триггер через источник питания закорачивает (разряжает) конденсатор C4 и выдает на выходе микросхемы (вывод 3) низкий уровень сигнала («—» источника питания).
2. После уменьшения напряжения на выводе 2 до значения, равного 1/3 напряжения питания или менее того, микросхема на выходе (вывод 3) начинает формирование положительного импульса и предоставляет возможность конденсатору C4 начать заряжаться через резистор R4.
3. Когда конденсатор достигает 2/3 напряжения питания, микросхема разрядит конденсатор C4, завершится формирование положительного импульса и на выходе (вывод 3) снова будет напряжение низкого уровня.
В рассмотренном случае таймер 555 работает в режиме ждущего одновибратора, что означает, что он выдает только по одному импульсу, а вы, чтобы получить каждый следующий импульс, должны заставить его сработать.
Длительность формируемого импульса можно регулировать за счет изменения значений сопротивления резистора R4 и емкости конденсатора C4. Каким же образом вам узнать какие значения надо выбрать? Обратитесь к следующему разд. «Фундаментальные сведения» и посмотрите на табл. 4.1 с приблизительными уже рассчитанными данными. В этом же разделе имеется формула, воспользовавшись которой, вы можете рассчитать и свои собственные значения.
Я не побеспокоился о том, чтобы в данную таблицу включить импульсы длительностью менее 0,01 сек, поскольку одиночный импульс такой длительности, как правило, не имеет практической ценности. Кроме того, я округлил значения в таблице до 2 цифр после запятой, поскольку значения емкости конденсатора редко бывают более точными.
Приведенная далее табл. 4.1 показывает длительность формируемого таймером 555 импульса в режиме одновибратора.
• Длительность импульса приводится в секундах с округлением до двух значащих цифр после запятой.
• Горизонтальная шкала показывает значение сопротивления между выводом 7 и положительным выводом источника питания.
• Вертикальная шкала показывает общие значения емкости между выводом 6 и отрицательным выводом источника питания.
Чтобы рассчитать различную длительность импульса, надо выполнить умножение по формуле:
tи = сопротивление х емкость х 0,0011,
где сопротивление приводится в килоомах, емкость в микрофарадах, а длительность получается в секундах.
Как родился таймер
В конце 1970 года, когда имелось полдюжины корпораций, пустивших корни на плодородной почве Силиконовой долины, компания Signetics приобрела идею у инженера по имени Ханс Камензинд (Hans Camenzind). Это не была такая уж революционная идея — имелось всего 23 транзистора и набор резисторов, которые могли работать, как программируемый таймер. Таймер обещал быть универсальным, стабильным и простым, но все эти достоинства бледнели при обращении к его начальной стоимости. Используя революционную технологию создания интегральных микросхем, компания Signetics смогла оформить все устройство в одном кремниевом чипе.
Рис. 4.19. Ханс Камерзинд (Hans Camen zind) изобретатель и разработчик микросхемы таймера 555 производства компании Signetics
Разработка предполагала пройти некоторый путь проб и ошибок. Камензинд, работая один, выполнил все устройства в большом масштабе, используя имеющиеся в наличии транзисторы, резисторы и диоды, установленные на макетной плате. Он начал с того, что немного поменял номинальные значения разных компонентов, следя за тем, каким образом схема будет реагировать на разные изменения в процессе производства и такие факторы, как, например, изменение температуры в процессе эксплуатации. Он сделал, по меньшей мере, около 10 различных вариантов схемы. На это ушло несколько месяцев работы.
Затем настало время ручной работы. Камензинд садился за рабочий стол и, используя специально изготовленный компанией нож «X-Acto», наносил свою схему на большой лист пластика. Компания Signetics затем уменьшила это изображение с помощью фотографии в масштабе примерно 300:1. Они протравили ее в тонкой кремниевой пластине, а затем поместили всю эту конструкцию в прямоугольный пластмассовый корпус с номером изделия, который был отпечатан на крышке. Таким образом родился таймер 555.
Ему была уготована судьба наиболее популярной микросхемы в истории, как по количеству проданных единиц (десятки миллионов, и этот счет растет) и продолжительности существования конструкции (она остается неизменной вот уже сорок лет). Микросхема таймера 555 использовалась везде — от ракет до детских игрушек. Он может заставить мигать огни, приводить в действие охранную сигнализацию, менять длительность между звуковыми сигналами и создавать сами звуковые сигналы. В настоящее время ИС разрабатываются большими командами производителей и тестируются путем моделирования их поведения с помощью программного обеспечения компьютера.
Таким образом, микросхемы, расположенные внутри компьютера, предоставляют возможность спроектировать новые ИС. Золотые дни конструкторов-одиночек, таких как Ханс Камерзинд, давно прошли, но его гений до сих пор живет внутри каждого таймера 555, который выходит с заводского конвейера. (Если вы хотите узнать больше об истории возникновения микросхем, посетите страничку http://www.semiconductormuseum.com/Museum_Index.htm)
Почему таймер 555 так полезен?
В своем режиме одновибратора (моностабильном), который мы только что рассмотрели, таймер 555 генерирует один импульс фиксированной (но программируемой) длительности.
Есть ли у вас какие-либо мысли, как можно было бы использовать этот прибор? Подумайте о продолжительности времени, когда импульс от таймера 555 управляет некоторым другим компонентом. Датчик движения для включения наружного освещения, например. Когда инфракрасный детектор «видит», что что-то движется, то загорается свет на определенный период времени, который может задаваться таймером 555.
Другим применением может быть тостер. Когда кто-то опускает кусок хлеба, переключатель замыкает контакты, что приводит к включению цикла работы тостера. Чтобы изменять длительность этого цикла, вы вместо сопротивления R4 можете использовать потенциометр и присоединить его к ручке, установленной на корпусе устройства, чтобы с его помощью задавать необходимый уровень прожаренности хлеба. В конце цикла тостера выходной сигнал от таймера 555 должен пройти через мощный транзистор, который в свою очередь подает напряжение питания на катушку электромагнита (это что-то вроде реле, за исключением того, что у нее нет контактов для включения/выключения), выбрасывающего прожаренный кусок хлеба.
Еще одно применение. Периодически включаемые дворники автомобиля могут управляться таймером 555 — и в прежних моделях автомобилей это было именно так.
А что можно сказать об охранной сигнализации, которую мы описывали в конце главы 3? Одна из функций, которую я упоминал, и которая не была реализована, это возможность самостоятельного отключения системы сигнализации через определенный, фиксированный интервал времени. Для выполнения этого мы можем использовать регулируемый выходной сигнал таймера.
Эксперимент, который вы сейчас будете выполнять, выглядит примитивным, но в нем фактически реализуются все его возможности.
Ограничения при использовании микросхемы таймера 555
1. Таймер может запускаться от стабильного источника питания с напряжением от 5 до 15 В.
2. Большинство производителей рекомендуют регулирующий резистор, присоединенный к выводу 7, в диапазоне сопротивлений от 1 кОм до 1 МОм.
3. Величина емкости времяопределяющего конденсатора может быть настолько высокой, насколько продолжительным вы хотите получить временной интервал, но точность при увеличении длительности интервала будет падать.
4. На выходе микросхемы может быть получена мощность до 100 мА при напряжении питания 9 В. Этого достаточно для большинства небольших реле или миниатюрных динамиков, что вы увидите в следующих экспериментах.
Во всех схемах данной книги я привожу микросхемы точно с таким расположением, как было показано ранее — вывод 1 находится вверху слева. В других схемах, которые вы можете найти на веб-сайтах или других книгах, все может быть показано иначе. Для удобства изображения схем некоторые часто указывают номера выводов микросхем таким образом, что вывод 1 необязательно находится рядом с выводом 2.
Посмотрите на схему на рис. 4.20 и сравните ее со схемой на рис. 4.15. Все соединения выполнены одинаково, но на рис. 4.20 расположение выводов показано так, что оно упрощает изображаемую схему.
«Произвольное расположение выводов» это обычная вещь, поскольку программное обеспечения для изображения схем использует именно этот прием, а для больших микросхем это необходимо для повышения функциональной четкости схемы (например, логической группировки наименований выводов по сравнению с их физическим расположением в микросхемах памяти). Когда же вы в первый раз собираетесь использовать микросхему, я думаю, что вам будет легче понять схему, которая приведена таким образом, что положение выводов микросхемы на схеме будет совпадать с их физическим расположением на корпусе. Поэтому именно такой метод изображения я и буду использовать.
Рис. 4.20. Многие рисуют схемы, в которых номера выводов микросхем располагаются в произвольном порядке, что значительно уменьшает схему и упрощает понимание ее функций. Это не помогает, когда вы начинаете реально выполнять подключения. Здесь приведена точно такая же схема, как и на рис. 4.15. Однако этот вариант схемы будет труднее реализовать на макетной плате
Эксперимент 17. УСТАНОВКА ТОНАЛЬНОСТИ ЗВУКА
Я собираюсь показать вам два других примера использования таймера 555.
Вам понадобятся все те же компоненты, что и для эксперимента 16 плюс дополнительно:
1. Еще одна микросхема таймера 555. Общее количество — 2 шт.
2. Миниатюрный динамик. Количество — 1 шт.
3. Потенциометр с линейной характеристикой и сопротивлением 100 кОм. Количество — 1 шт.
Порядок действий
Оставьте все компоненты эксперимента 16 на том месте, в котором вы их установили на макетной плате, и добавьте следующую часть схемы немного ниже, как это показано на монтажной (рис. 4.21) и электрической (рис. 4.22) схемах. На этих схемах между выводами 6 и 7 микросхемы, вместо перемычки, которая закорачивала эти выводы в предыдущей схеме, вставлен резистор R2, а внешней цепи запуска с использованием вывода 2 больше нет. Вместо этого вывод 2 перемычкой подключен к выводу 6.
Рис. 4.21. Эти компоненты должны быть добавлены на ту же самую макетную плату чуть ниже компонентов, которые показаны на рис. 4.14. Следует использовать следующие значения для тестирования микросхемы таймера 555 в автоколебательном режиме:
R1 — резистор с сопротивлением 1 кОм; R2 — резистор с сопротивлением 10 кОм; R3 — резистор с сопротивлением 100 Ом; C1 — конденсатор емкостью 0,047 мкФ (керамический или электролитический); C2 — конденсатор емкостью 0,1 мкФ (керамический); IC2 — микросхема таймера 555
Рис. 4.22. Это вариант электрической схемы приведенной выше монтажной схемы на рис. 4.21. Значения и обозначения компонентов на схемах одинаковы
Самый простой путь для этого — проложить провод перемычки сверху корпуса микросхемы.
Из схемы, показанной на рис. 4.22, я убрал сглаживающий конденсатор, поскольку я предполагаю, что вы собираете вторую часть схемы на той же самой макетной плате, что и первую, где уже есть сглаживающий конденсатор С3.
Динамик подключается последовательно резистору с сопротивлением 100 Ом (R3), который заменил светодиод, демонстрирующий наличие выходного сигнала микросхемы. Вывод 4 (Сброс) подключения непосредственно к положительному выводу источника питания, поскольку в этой схеме функцию сброса я использовать не собираюсь.
Итак, что же случится, если подать напряжение питания? Вы немедленно должны услышать гул из динамика. Если вы ничего не услышали, то это определенно есть следствие ошибки подключения.
Следует заметить, что теперь с помощью кнопки вы не можете изменить состояние микросхемы. Причина заключается в том, что конденсатор C1 заряжается и разряжается, а его меняющееся напряжение подключается через перемычку, проходящую сверху корпуса микросхемы к выводу 2 (Запуск). Таким образом, таймер 555 выполняет переключение самостоятельно. Более подробно я опишу это в следующем разд. «Теория — Внутри таймера 555. Автоколебательный режим» (режим генератора импульсов), если вы хотите увидеть точно, что происходит внутри.
В данном случае микросхема работает в автоколебательном режиме. Автоколебательный — означает, что он не стабилен, поскольку бесконечно переключается то в одно, то в другое состояние, посылая импульсы в течение всего времени пока схема подключена к источнику питания. Импульсы столь кратковременны, что их можно услышать в виде постоянного гула.
Фактические значения компонентов, которые я задал с помощью R1, R2 и C1, дают возможность микросхеме таймера 555 генерировать импульсы с частотой 1500 импульсов в секунду. Другими словами, таймер создает звук с частотой 1,5 кГц.
Посмотрите на табл. 4.2 далее в разд. «Фундаментальные сведения», чтобы увидеть насколько сильно отличаются значения R2 и C1, создающие импульсы разной частоты в «автоколебательном» режиме. Следует помнить, что эта таблица рассчитана при фиксированном значении сопротивления резистора R1 равного 1 кОм!
Приведенная далее табл. 4.2 показывает рассчитанную частоту автоколебаний для микросхемы таймера 555 в зависимости от значений времязадающих компонентов: емкости конденсатора С1 и сопротивления резистора R2 при неизменном значении сопротивления резистора R1 равного 1 кОм.
• Частота — количество циклов в секунду, округляется до двух цифр после запятой.
• По горизонтали приведены значения сопротивлений для резистора R2.
• По вертикали показаны значения емкости конденсатора С1.
• Предполагается, что сопротивление резистора R1 неизменно и равно 1 кОм.
Чтобы рассчитать различную частоту: нужно удвоить сопротивление резистора R2, прибавить к нему сопротивление R1, умножить эту сумму на величину емкости C1 и разделить результат на 1440. Таким образом мы получим:
Частота автоколебаний = 1440/((R1 + 2R2)хC1) периодов колебаний в секунду.
В формуле сопротивления резисторов R1 и R2 приведены в килоомах (кОм), емкость конденсатора C1 в микрофарадах (мкФ), а частота в герцах (Гц) (количество периодов колебаний в секунду). Следует заметить, что период колебаний измеряется от начала одного импульса и до начала следующего. Длительность каждого импульса не равна длительности промежутка между каждым импульсом. Этот вопрос обсуждается далее в разд. «Теория — Внутри таймера 555. Автоколебательный режим».
Внутри таймера 555. Автоколебательный режим
Теперь то, что происходит, показано на рис. 4.23.
Рис. 4.23. Когда таймер 555 используется в автоколебательном режиме, резистор R2 располагается между выводами 6 и 7, а вывод 6 подключен с помощью внешнего провода к выводу 2 таким образом, чтобы таймер выполнял самостоятельные переключения
Изначально, как это было ранее в режиме одновибратора, триггер FF (на рисунке показан в виде переключателя) закорачивает на «землю», т. е. на «—» источника питания, конденсатор C1. Но теперь низкое напряжение на этом конденсаторе по внешнему проводу поступает с вывода 7 к выводу 2. Это низкое напряжение указывает микросхеме, что она должна переключиться сама. Триггер послушно переключается в положение, соответствующее нижнему по схеме положению «включен», и посылает положительный импульс на динамик, одновременно отключая отрицательное напряжение с вывода 7.
Теперь конденсатор C1 начинает заряжаться так же, как он это делал в моностабильном режиме, вместо зарядки через последовательно подключенные резисторы R1 и R2. Поскольку резисторы имеют относительно небольшое значение сопротивления, а конденсатор C1 небольшую емкость, то он заряжается достаточно быстро. Когда же напряжение на конденсаторе, так же, как и ранее, достигнет 2/3 полного напряжения, срабатывает компаратор «В», переключая триггер в верхнее по схеме положение «выключен», разряжая конденсатор и прекращая подачу положительного импульса через вывод 3.
Конденсатор требует больше времени для разряда, чем это было ранее, поскольку сейчас резистор R2 подключен между конденсатором и выводом 7 (Разряд). В то время пока конденсатор разряжается, уменьшается его напряжение, но при этом он с помощью провода остается подключенным к выводу 2. Когда это напряжение падает до 1/3 от полного напряжения источника питания или немного менее, срабатывает компаратор «А», переключает триггер, начиная процесс снова.
Подведем итоги.
1. В автоколебательном режиме, как только напряжение питания подключено к микросхеме, триггер в исходном состоянии способствует уменьшению напряжения на выводе 2, заставляя тем самым сработать компаратор «А», который переключает триггер (переключатель) в нижнее по схеме положение.
2. На выход микросхемы (вывод 3) поступает сигнал высокого уровня («+» источника питания). Через резисторы R1 и R2, подключенные последовательно, начинает заряжаться конденсатор С1.
3. Когда конденсатор достигает напряжения, равного 2/3 напряжения питания, триггер переключается в верхнее по схеме состояние и на выход (вывод 3) снова поступает напряжение низкого уровня. Конденсатор C1 вновь начинает разряжаться через сопротивление R2.
4. Когда напряжение на конденсаторе становится меньше 1/3 полного напряжения питания, соответственно уменьшается напряжение на выводе 2, что приводит снова к переключению триггера в нижнее по схеме положение, и цикл повторяется.
Разная длительность состояний триггера
Когда таймер работает в автоколебательном режиме, конденсатор C1 заряжается через последовательно подключенные резисторы R1 и R2. Но когда конденсатор C1 разряжается, то он это делает только через резистор R2. Это означает, что конденсатор заряжается медленнее, чем разряжается. Во время заряда конденсатора выходное напряжение на выводе 3 остается высоким; а во время разряда — будет низким. Следовательно, состояние триггера «включен» всегда продолжительнее состояния «выключен». На рис. 4.24 это показано в виде простой временной диаграммы.
Рис. 4.24. В автоколебательном режиме таймера 555 времязадающий конденсатор C1 заряжается через последовательно соединенные резисторы R1 и R2, а разряжается только через резистор R2. Поэтому в течение одного периода на выходе состояние триггера «включен» имеет большую длительность, чем состояние «выключен»
Если вы хотите, чтобы длительности одного и другого состояний были одинаковы или же вы желаете независимо регулировать длительности этих состояний (например, передать очень короткий импульс на другую микросхему, за которым до следующего импульса должна следовать большая пауза), то все что вам нужно, это просто добавить один диод, как это показано на рис. 4.25.
Рис. 4.25. Это модификация схемы, приведенной на рис. 4.22. При добавлении диода D2 таймер 555 продолжает работать в автоколебательном режиме, но диод из прежней цепи заряда конденсатора C1 фактически убирает резистор R2. Теперь длительность состояния триггера «включен» можно регулировать изменением сопротивления резистора R1, а длительность состояния «выключен» — сопротивлением резистора R2, т. е. независимо друг от друга
Теперь, когда конденсатор C1 заряжается, ток его заряда фактически определяется только сопротивлением резистора R1, поскольку при этом резистор R2 закорочен диодом D1, включенным в прямом направлении. Когда же конденсатор C1 разряжается, диод для тока разряда оказывается включенным в обратном направлении, и поэтому разряд осуществляется только через резистор R2.
Итак, в этой схеме время заряда конденсатора определяется только сопротивлением резистора R1, а время разряда — только сопротивлением резистора R2. Формула для расчета будет следующей:
Частота = 1440/((R1 + R2)хC1).
Если вы зададите равные значения сопротивлений резисторов R1 и R2 (R1 = R2), то должны получить почти одинаковые длительности генерируемых импульсов и пауз между ними («почти» — потому что на диоде все же имеется хоть и небольшое, но падение напряжения, примерно 0,6 В). Точное значение этого напряжения зависит, прежде всего, от технологии, которая использовалась при изготовлении диода, а точнее от применяемого материала (кремния или, например, германия).
Доработка схем таймера, работающего в автоколебательном режиме
Если в схемах, показанных на рис. 4.22 или 4.25, вы вместо резистора R2 установите потенциометр с сопротивлением 100 кОм, то вы, поворачивая его ось, получите возможность изменять частоту генерируемых колебаний в ту или иную сторону.
Другой возможностью «настроить» таймер является использование вывода 5 «Управляющее напряжение», как это показано на рис. 4.26.
Рис. 4.26. Вывод «Управляющее напряжение» (вывод 5) используется редко, но может быть полезен. Изменяя напряжение на нем можно регулировать частоту таймера 555. Эта схема дает вам возможность протестировать использование этого вывода. Значения компонентов:
R1 — резистор с сопротивлением 1 кОм; R2 — резистор с сопротивлением 10 кОм; R3 — резистор с сопротивлением 100 Ом; R9, R11 — резисторы с сопротивлением 1 кОм; R10 — потенциометр с линейной характеристикой и сопротивлением 100 кОм; C1 — конденсатор 0,0047 мкФ
Отсоедините конденсатор, который был соединен с этим выводом и замените его последовательно подключенными резисторами, которые показаны на рисунке. Номинал обоих резисторов R9 и R11 — 1 кОм; они расположены с двух сторон резистора R10, который является потенциометром с сопротивлением 100 кОм. Такая схема включения гарантирует, что сопротивление между выводом 5, а также положительным и отрицательным выводами источника питания всегда будет иметь сопротивление не менее 1 кОм. Подключение его напрямую к источнику напряжения не приведет к повреждению таймера, но не позволит ему генерировать слышимые звуковые сигналы. Когда вы поворачиваете потенциометр то в одном, то в другом направлении, вы будете менять частоту в большом диапазоне значений. Если вы хотите генерировать какую-либо специфическую частоту, то вместо этого можно использовать подстроечный потенциометр.
Основным преимуществом использования вывода 5 для настройки частоты является то, что вы можете осуществлять удаленное управление. Подключите выход (вывод 3) еще одного, работающего в автоколебательном режиме, таймера 555, но при этом генерирующего меньшую частоту, через резистор с сопротивлением 2,2 кОм к выводу 5 первого таймера. В этом случае вы получите эффект сирены, генерирующей двухтональный сигнал, когда один таймер управляет другим. Если же между выводом 5 и землей вы дополнительно добавите еще и конденсатор емкостью 100 мкФ, то за счет заряда и разряда конденсатора изменение частоты звука будет более плавным. Далее я опишу это подробнее. Рассмотрение управления одной микросхемы с помощью другой привело меня к написанию целого отдельного раздела, что будет нашим последним изменением эксперимента.
Соединение микросхем в цепь
Вообще говоря, микросхемы конструируются таким образом, чтобы они могли взаимодействовать друг с другом. В этом отношении проще таймера 555 нельзя ничего придумать, поскольку:
• вывод 3, это выход одного таймера 555, который может быть подключен напрямую к выводу 2 (Запуск) второго аналогичного таймера;
• мощность на выходе микросхемы может быть достаточной для обеспечения напряжением питания соответствующего вывода 8 другой микросхемы таймера 555;
• выход пригоден для подачи сигнала управления или напряжения питания также и на другие типы микросхем.
На рис. 4.27 показаны эти возможные варианты.
Рис. 4.27. Три способа соединения микросхем таймера 555. Выход микросхемы IC1 может стать: источником питания для второго таймера, изменять напряжение на его выводе «Управляющее напряжение» или активировать вывод «Запуск»
Когда на выходе первого таймера 555 появляется сигнал высокого уровня, то это будет соответствовать примерно от 70 до 80 % напряжения источника питания. Другими словами, когда вы используете напряжение питания 9 В, на выходе у вас будет сигнал с напряжением, по меньшей мере, 6 В. Это все еще больше минимального напряжения питания 5 В, которое достаточно для второй микросхемы, чтобы сработал его компаратор, поэтому с этим проблем не возникает. Вы можете соединить в цепь два таймера 555, которые уже установлены на вашу макетную плату. На рис. 4.28 (ЦВ-рис. 4.28) показано, как нужно выполнить совместное подключение двух схем, которые были приведены ранее на рис. 4.15 и 4.22.
Рис. 4.28. Вы можете совместить две схемы, которые показаны на рис. 4.15 и 4.22, просто отсоединив провод, который подает напряжение питания на вывод 8 второго таймера, и установив вместо него другой, соединяющий этот вывод с выходом первого таймера (провод на цветном изображении показан красным цветом)
Проложите провод от вывода 3 (выход) первой микросхемы к выводу 8 (вывод питания) второй и отсоедините существующий провод, подключенный к этому же выводу 8. Новый провод на цветном рисунке показан красным цветом. Теперь после нажатия кнопки S1 запуска первой микросхемы ее выход станет источником питания второй микросхемы.
Вы можете также использовать выход одной микросхемы для запуска другой (т. е. вы можете подсоединить вывод 3 первой микросхемы к выводу 2 второй). Когда сигнал на выходе первой микросхемы имеет низкий уровень, он будет меньше половины вольта. Это существенно ниже порогового напряжения, которое требуется для запуска второй микросхемы. Почему вы хотели бы сделать так? Да, вы можете захотеть, чтобы оба таймера работали в режиме одновибратора (моностабильном), чтобы в конце импульса высокого уровня первой микросхемы (по отрицательному перепаду) запускалось формирование импульса высокого уровня второй микросхемы. Фактически таким способом вы можете соединить в одну последовательную цепь столько таймеров, сколько хотите; при этом последняя микросхема будет запускать первый, а все они будут последовательно включать светодиоды, как на новогодней елке. На рис. 4.29 показано, как могут быть соединены таким способом четыре таймера при пространственном расположении, в котором они будут занимать минимальную площадь (и будут соединены навесным проводным монтажом на перфорированной плате, а не на плате такого вида, как наша макетная плата). Каждый вывод микросхемы, обозначенный соответствующими цифрами от 1 до 4, обладает достаточной мощностью, чтобы подключить к ним до 10 светодиодов, если вы будете использовать нагрузочные резисторы с относительно большим сопротивлением для ограничения их тока.
Рис. 4.29. Четыре таймера 555 могут быть соединены в одну последовательную цепь по кругу, заставляя мигать четыре группы светодиодов, как огни на новогодней елке или рекламе кинотеатра
Кстати, вы можете уменьшить количество микросхем путем использования двух микросхем таймеров 556 вместо четырех таймеров 555. Каждая такая микросхема таймера 556 содержит пару таймеров 555 в одном корпусе. Но поскольку вы должны сделать то же самое количество внешних подключений (без учета подключения напряжения питания), я не стал бы беспокоиться о применении этого варианта.
Кроме того, вы даже можете использовать таймер 558, который содержит уже четыре схемы таймера 555, которые будут работать в автоколебательном режиме. Однако я решил не использовать эту микросхему, поскольку его выходы ведут себя несколько иначе, чем в обычным таймере 555. Но вы все же можете приобрести таймер 558 и «поиграть» с ним по своему желанию. Он идеален для изготовления «цепи из четырех таймеров», которую я предложил ранее. В справочных листах технической документации такая возможность предполагается.
И наконец, возвращаясь назад к идее изменения частоты таймера 555, работающего в автоколебательном режиме, вы можете выполнить схему из двух таймеров, как это показано на рис. 4.30 (ЦВ-рис. 4.30).
Рис. 4.30. Когда оба таймера находятся в автоколебательном режиме, но частота колебаний микросхемы IC1 гораздо меньше, чем IC2, выход IC1 (вывод 3) может быть использован для модулирования звука, генерируемого второй микросхемой IC2. Следует иметь в виду, что это существенное изменение схемы по сравнению с предыдущей, поэтому у нескольких ее компонентов пришлось поменять обозначения. Чтобы избежать ошибок вы можете демонтировать старую схему с вашей макетной платы и выполнить новую версию по этому эскизу.
Попробуйте изначально следующие номиналы компонентов: R1, R4, R6, R7 — резисторы с сопротивлением 1 кОм; R2, R5 — резисторы с сопротивлением 10 кОм; R3 — резистор с сопротивлением 100 Ом; C1 — конденсатор емкостью 0,047 мкФ; C2, C3 — конденсаторы емкостью 100 мкФ; C4 — конденсатор емкостью 68 мкФ; C5 — конденсатор емкостью 0,1 мкФ
Провод, соединяющий выход микросхемы IC1 (вывод 3) и вывод управляющего напряжения (вывод 5) микросхемы IC2, на цветном изображении показан красным цветом. Схема включения первого таймера изменена на автоколебательный режим, и он генерирует на выходе импульсы с частотой примерно 4 Гц. Чтобы предоставить вам визуальное подтверждение того, что происходит в схеме, к этому сигналу подключен светодиод D1 и далее с помощью провода сигнал через резистор R7 подается на вывод управляющего напряжения второго таймера.
Конденсатор C2 это конденсатор с большой емкостью, которому требуется значительное время для заряда, осуществляемого через резистор R7. В то время как происходит его заряд, напряжение на выводе 5 медленно возрастает, поэтому тон, генерируемый микросхемой IC2, постепенно возрастает. Затем микросхема IC1 достигает окончания своего цикла и сама переключается в той точке, когда конденсатор C2 разряжается и генерирование звукового сигнала микросхемой IC2 снова прекращается.
Вы можете настроить эту схему для создания всех типов звуковых сигналов с гораздо большими возможностями управления, чем это делается при использовании программируемого однопереходного транзистора, который может выполнять те же самые функции. Теперь можно попробовать несколько вариантов изменения схемы.
• Увеличьте вдвое или уменьшите наполовину емкость конденсатор С2.
• Полностью пренебрегите конденсатором C2 и поэкспериментируйте с изменением сопротивления резистора R7.
• Замените резистор R7 на потенциометр с сопротивлением 10 кОм.
• Измените емкость конденсатора C4 для увеличения или уменьшения длительности цикла микросхемы IC1.
• Уменьшите сопротивление резистора R5 в два раза при одновременном удвоении емкости конденсатора C4. Это приведет к тому, что частота микросхемы IC1 остается примерно такой же, но длительность сигнала высокого уровня становится значительно большей по сравнению с длительностью сигнала низкого уровня.
• Измените напряжение питания — вместо напряжения 9 В подайте 6 В или 12 В.
Помните, что вы не можете вывести из строя таймер 555, выполняя изменения напряжения в этом диапазоне. Нужно только быть уверенным, что отрицательный вывод источника питания (Земля) подключен к выводу 1 микросхемы таймера, а положительный — к выводу 8.
Эксперимент 18. ТАЙМЕР ДЛЯ ОПРЕДЕЛЕНИЯ РЕАКЦИИ ЧЕЛОВЕКА
Поскольку таймер 555 способен функционировать на частотах, измеряемых в тысячах герц, вы можете использовать его для определения скорости человеческой реакции. Вы имеете возможность устроить соревнование с друзьями на проверку быстроты реакции, а также выяснить, как скорость реакции зависит от вашего состояния, времени дня или от того, насколько хорошо вы выспались накануне.
Перед тем как продолжить, я должен предупредить вас, что эта схема имеет больше соединений, чем те схемы, которые вы делали ранее. Схематически она не на много сложнее, но требует большого количества соединений и может быть выполнена только на макетной плате, которая имеет 63 ряда отверстий. Поскольку мы можем разделить нашу работу на несколько этапов, то это поможет вам определить ошибки, если таковые возникнут.
Вам понадобятся:
1. Микросхема 4026. Количество — 4 шт. (на самом деле вам нужно только 3, но купите еще одну на случай выхода какой-нибудь из строя).
2. Таймеры 555. Количество — 3 шт.
3. Кнопки (однополюсные однопозиционные переключатели без фиксации). Количество — 3 шт.
4. Три светодиодных цифровых индикатора или один индикатор для отображения трех цифр (см. список необходимых покупок в начале данной главы). Количество — 1 шт.
5. Макетная плата, резисторы, конденсаторы и мультиметр, как обычно.
Шаг 1. Индикатор
Вы можете использовать три отдельных светодиодных индикатора для каждой цифры, но я предлагаю вам купить семисегментный светодиодный индикатор BC56–11EWA производства компании Kingbright, который приведен в списке необходимых покупок в начале данной главы. Он содержит три семисегментных цифровых индикатора в одном корпусе.
Вы должны будете установить его с правой стороны вашей макетной платы в ее середине, чтобы индикатор закрывал ее среднюю часть. Индикатор плотно вставьте в макетную плату так, как это показано на рис. 4.31. На этом этапе не следует предварительно вставлять какие-либо другие компоненты.
Рис. 4.31. После добавления резистора с сопротивлением 1 кОм между общим катодом индикатора и отрицательным выводом источника питания вы можете использовать положительное напряжение для зажигания каждого сегмента индикатора по очереди
Теперь установите на вашем источнике питания напряжение, равное 9 В, и подключите отрицательный вывод к тому ряду отверстий, которые находятся с правой стороны макетной платы.
Вставьте резистор с сопротивлением 1 кОм между отрицательным выводом источника питания (Земля) и каждым из трех выводов: 18, 19 и 26 индикатора BC56–11EWA, который является устройством с «общим катодом», что означает общее соединение всех катодов всех светодиодов (светодиодного сегмента) каждого цифрового индикатора. (Номера выводов индикатора показаны на рис. 4.32.
Рис. 4.32. Этот семисегментный индикатор BC56–11EWA компании Kingbright содержит три индикатора в одном корпусе и может управляться тремя последовательно соединенными десятичными счетчиками 4026. Номера выводов показаны на ИС. Сегменты от «a» до «g» индикатора цифры 1 идентичны выводам, обозначенным от «1a» до «1g». Сегменты от «a» до «g» индикатора цифры 2 соответствуют обозначениям от «2a» до «2g». Сегменты от «a» до «g» индикатора цифры 3 соответствуют обозначениям от «3a» до «3g»
Если вы используете другой тип индикатора, то нужно просмотреть соответствующий справочный лист технических данных, чтобы найти какой вывод (выводы) должен быть подключен к отрицательному выводу источника питания (Земля)).
Включите источник питания и коснитесь оголенным концом провода, идущего от положительного вывода источника питания, каждого ряда отверстий, соответствующих выводам всех сегментов индикатора. При этом вы должны увидеть, что каждый сегмент загорится, как это показано на рис. 4.31 для сегмента «с» цифры 1.
Каждая десятичная цифра от 0 до 9 отображается группой определенных сегментов. Эти сегменты на индикаторе всегда обозначаются строчными латинскими буквами от «a» до «g» (рис. 4.33). Дополнительно часто используется светодиод для отображения десятичной точки, хотя мы и не будем ее использовать, на рисунке она обозначена буквой «h».
Рис. 4.33. Наиболее часто используемый и применяемый цифровой индикатор состоит из 7 светодиодных сегментов, каждый из которых имеет буквенное обозначение, как показано на этом рисунке, плюс сегмент для отображения десятичной точки
Посмотрите на рис. 4.32, где показан индикатор BC56–11EWA от компании Kingbright, и рядом с каждым выводом вы заметите обозначение всех соответствующих сегментов индикатора. Вы можете проверить индикатор, подключая провод от положительного вывода источника питания к каждому выводу сегмента, чтобы убедиться, что этот сегмент загорается.
Кстати, данный индикатор имеет два сдвоенных вывода, пронумерованных цифрами 3 и 26 со значком «—» в небольшом кружке и расположенной рядом цифрой 1. Этот символ обозначает то, что эти два вывода предназначены для подключения провода от отрицательного вывода источника питания (Земля) первой цифры индикатора. Почему два вывода вместо одного? Я не знаю. Вам же необходимо использовать только один, а поскольку это пассивный элемент, то не имеет значения, если вы оставите неиспользуемые выводы неподключенными. Нужно позаботиться только о том, чтобы случайно не подать на них положительного напряжения, поскольку это может привести к короткому замыканию.
Цифровое табло не имеет источника питания или собственной логики. Это просто набор светоизлучающих диодов. На самом деле от этого пока большой пользы нет до тех пор, пока мы не сможем определить способ включения светодиодов, объединенных в группу — это и будет нашим следующим шагом.
Шаг 2. Счетчик
К счастью, у нас есть микросхема с обозначением 4026, которая, получая импульсы, считает их и выдает соответствующие выходные напряжения, которые в свою очередь могут управлять 7-сегментным индикатором так, что он будет отображать цифры от 0 до 9. Единственная проблема заключается в том, что это устаревший тип микросхемы с технологией CMOS (что означает Complementary Metal Oxide Semiconductor — комплементарный металло-оксидный полупроводник — КМОП), которая чувствительна к статическому электричеству. Прежде чем продолжить, в следующем далее примечании прочтите предосторожности, которые следует обязательно выполнять при работе с такими микросхемами.
Чтобы избежать неприятностей, которые могут случиться, когда вы будете подавать напряжение питания на схему и чтобы ничего не случилось, следует убедиться, что вы выполняете приведенные здесь предосторожности, когда работаете с устаревшим поколением микросхем с технологией КМОП (CMOS) (которые часто имеют обозначения от 4000 и выше, например, 4002, 4020 и т. д.).
Микросхемы часто поставляются таким образом, что их штырьковые выводы закорочены черной губкой. Эта губка обладает хорошей электропроводностью, и вы должны держать их в таком виде до тех пор, пока они не понадобятся.
Если микросхемы поставляются в пластмассовых трубчатых упаковках, то вы можете извлечь их и наколоть их штырьковыми выводами на кусочек проводящей губки или, если у вас нет губки, использовать для этой цели алюминиевую фольгу. Идея состоит в том, чтобы не дать какому-либо одному выводу микросхемы получить гораздо больший потенциал, чем потенциал другого вывода.
При работе с компонентами КМОП (CMOS) очень важную роль играет заземление самого работающего. Я обнаружил, что в сухую погоду на мне накапливается статическое электричество, когда я прохожу в носках по полу, покрытому линолеумом, содержащим определенное количество синтетических волокон. Вы можете купить антистатический браслет, чтобы заземлить ваше тело, или просто коснуться большого металлического объекта, например металлического шкафа для папок, перед тем как брать в руки вашу печатную плату. Я приучил себя работать в таком положении, когда носок моей ноги касается металлического шкафа, что решает эту проблему.
Никогда не надо паять микросхемы КМОП (CMOS), когда на них подано напряжение питания.
Заземление наконечника вашего паяльники тоже неплохой способ защиты от статического электричества.
Но лучше всего не паять микросхемы КМОП (CMOS) вообще. Когда вы готовы «увековечить» устройство, переместите все компоненты с макетной платы на перфорированную печатную плату, припаяйте к ней подходящую панельку для такой микросхемы, а затем вставьте ее в эту панельку. Если у вас возникнет проблема в будущем, то вы можете извлечь неисправную микросхему и вставить исправную.
Используйте заземленную проводящую поверхность на вашем рабочем столе. Самый дешевый способ добиться этого — положить кусок алюминиевой фольги и заземлить его (с помощью «крокодила» с длинным проводом), подключив этот провод к радиатору или к большому стальному объекту. Я предпочитаю использовать кусок проводящей губки для поверхности моего стола. Это тот же самый тип губки, которая используется при упаковке интегральных микросхем. Однако такая губка довольно дорого стоит.
Выключите напряжение питания и подсоедините провода блока питания к верхней части макетной платы так, как это необходимо для данного эксперимента — нам в данном случае потребуется положительное и отрицательное напряжение питания на двух краях макетной платы. Разводку питания можно посмотреть на рис. 4.34 (ЦВ-рис. 4.34).
Рис. 4.34. При монтаже схем рядом с микросхемами с обеих сторон вашей макетной платы очень удобно иметь шины питающих напряжений с контактами, к которым подключены провода от источника питания. Для схемы таймера для измерения реакции человека нужно напряжение питания 9 В со сглаживающим конденсатором емкостью 100 мкФ, который должен быть установлен так, как это показано на рисунке. Если на левой и правой стороне вашей макетной платы не имеется цветной маркировки колонок контактных отверстий (шин), то я предлагаю выполнить такую маркировку с помощью несмываемых цветных маркеров
Если макетная плата не имеет цветной маркировки колонок отверстий, предназначенных для подключения питания, то я предлагаю использовать для их обозначения цветные маркеры Шарпи (Шарпи — популярная торговая марка маркеров/фломастеров в США, в том числе с нестираемым и несмываемым составом), чтобы избежать ошибок при подключении питания с неправильной полярностью, что может привести к выходу из строя компонентов.
При питании микросхемы счетчика 4026 от источника с напряжением 9 В она обладает достаточной выходной мощностью для включения светодиодов нашего индикатора. Следует убедиться, что микросхема сориентирована правильно, и затем вставить ее в макетную плату рядом и немного выше вашего трехзначного индикатора, оставив между ними незанятый только один ряд контактных отверстий.
На схеме (рис. 4.35) изображено подключение выводов микросхемы 4026 к индикатору. Стрелки с цифрами показывают номера выводов индикатора, к которым должны быть подключены эти выводы счетчика.
Рис. 4.35. Микросхема IC3 — это десятичный счетчик 4026, а IC4 — это трехзначный цифровой 7-сегментный индикатор. Стрелками с цифрами показаны номера выводов индикатора, к которым должен быть подключен соответствующий вывод счетчика
На рис. 4.36 показана схема расположения и назначения каждого вывода микросхемы 4026. Вы должны сравнить ее со схемой, приведенной на рис. 4.35.
Рис. 4.36. Десятичный счетчик 4026 представляет микросхему, выполненную по технологии КМОП (CMOS), которая получает синхронизирующие тактовые сигналы, поступающие на вывод 1, считает их от 0 до 9, дешифруя полученный код в выходные сигналы, соответствующие интерфейсу трехзначного цифрового семисегментного индикатора
К схеме следует добавить кнопку между положительным полюсом источника питания и выводом 1 счетчика 4026, а также подключить этот вывод через резистор с сопротивлением 10 кОм к отрицательному полюсу источника питания (Земля), чтобы поддерживать отрицательный потенциал на этом выводе до тех пор, пока не будет нажата кнопка. Следует убедиться, что все подключения к источнику питания выполнены правильно, и затем подать напряжение питания. Вы должны обнаружить, что когда вы слегка будете нажимать на кнопку, счетчик будет считать, а индикатор отображать цифры от «0» до «9», а затем снова начнет с «0». Вы также можете обнаружить, что микросхема счетчика иногда неверно воспринимает нажатие на кнопку и сразу отсчитывает две или более единиц за одно касание. Я вернусь к этой проблеме несколько позднее.
Сегменты светодиода не будут светить очень ярко, поскольку последовательно подключенные резисторы R4—R6 c сопротивлением 1 кОм будут оставлять им ровно столько мощности, сколько им требуется. Эти резисторы необходимы для ограничения избыточного тока, поступающего от счетчика.
Счетчики и семисегментные индикаторы
Большинство счетчиков получают поток импульсов и распределяют их группу выводов в определенной последовательности. Десятичный счетчик 4026 является необычным в том смысле, что он на свои выходные выводы выдает такие комбинации напряжений, которые специально рассчитаны, чтобы заставить светиться семисегментные индикаторы.
Отдельные счетчики на своих выходах создают положительные сигналы (они являются «источниками» тока), в то время как другие создают отрицательный сигнал на выходе (они являются «приемниками» тока). Некоторым семисегментным индикаторам для отображения требуются положительные входные сигналы. Такие индикаторы называются индикаторами с общим катодом. Другим индикаторам требуются отрицательные входные сигналы и потому их называют индикаторами с общим анодом. Выходные сигналы счетчика 4026 положительные, поэтому для него нужен индикатор с общим катодом.
Тщательно проверяйте справочные листы технических данных для каждой микросхемы счетчика, чтобы определить какую мощность они потребляют и какую мощность они могут выдавать.
Микросхемы КМОП (CMOS) являются несколько устаревшими, но они очень полезны для тех, кто выбрал электронику в качестве хобби, поскольку они способны использовать широкий диапазон значений напряжения питания — в случае интегральной микросхемы счетчика 4026 этот диапазон простирается от 5 до 15 В. Другие виды микросхем в этом смысле не столь универсальны.
Большинство счетчиков могут быть источниками или приемниками только для нескольких миллиампер выходной мощности. Когда микросхема 4026 работает от источника питания 9 В, она может быть источником тока со значением примерно до 4 мА на каждый вывод. Этого вполне достаточно для эксплуатации светодиодного семисегментного индикатора.
Вы можете включить резисторы последовательно на каждом выводе счетчика и на каждом входе цифрового индикатора, но более простое и менее затратное по времени решение, это использование одного последовательно подключенного резистора для каждого индикатора цифры между общим выводом катодов светодиодов сегментов и землей. В эксперименте, который я описываю, используется именно такое решение. Недостаток его заключается в том, что цифры, которые требуют использования только двух сегментов в индикаторе (например, цифра «1»), будут светиться ярче, чем те, которые используют много сегментов (например, цифра «8»).
Если же вы хотите, чтобы ваша трехразрядная индикация с профессиональной точки зрения выглядела ярко и безупречно, то вам нужно использовать транзисторы для управления выводами каждого сегмента в каждом цифровом индикаторе. В качестве альтернативы могут быть использованы микросхемы, которые для усиления тока содержат множество операционных усилителей.
Когда десятичный счетчик при счете достигает значения «9» и переключается на значение «0», он выдает импульс со своего вывода «сигнал переноса». С помощью этого выходного сигнала можно запустить другой счетчик, который уже будет выполнять счет десятков. Вывод сигнала переноса этого второго счетчика может быть подключен к третьему счетчику, который будет осуществлять счет сотен и т. д. Кроме десятичных счетчиков существуют шестнадцатеричные счетчики (которые считают до 16), восьмеричные счетчики (до 8) и т. д.
Зачем нужно что-либо подсчитывать не в десятках? Представьте, что у вас есть цифровые часы с четырехзначной индикацией, которые выполняют счет по-разному. Правая крайняя цифра изменяет свое значения после достижения «10». Следующая слева цифра считает до «6». Первая цифра единиц часов, которая считает до «10», выдает сигнал переноса схеме, которая считает до «2», и выдает следующий сигнал переноса. Крайняя слева цифра может быть либо отключенной, либо показывать «1», при отображении времени в 12-часовом формате. Естественно, что существуют счетчики, которые специально спроектированы, чтобы выполнять эту работу.
Счетчики имеют ряд управляющих выводов, таких как: «Запрет тактирования» (Disable clock), который указывает счетчику игнорировать его входные импульсы и приостановить или, иначе говоря, «заморозить» индикацию; вывод «Разрешить индикацию» (Enable display), который разрешает подавать сигналы на выходы микросхемы для последующей их индикации; вывод «Сброс» (Reset), с помощью которого обнуляется результат отсчета.
Счетчику 4026 необходим положительный сигнал на входе, чтобы сделать активным каждый управляющий вывод. Когда выводы заземлены, то их функции отключены.
Чтобы выполнить отсчет счетчиком 4026 и отобразить результат на табло, вы должны заземлить выводы «Запрет тактирования» и «Сброс» (чтобы отключить их функции) и приложить положительный потенциал к выводу «Разрешить индикацию» (для активации выхода). Обратите свое внимание на рис. 4.36, где приведено назначение выводов.
Предположим, что вы успешно собрали схему со счетчиком для управления одного разряда цифрового семисегментного индикатора, а теперь хотите добавить еще два счетчика, которые будут управлять двумя оставшимися разрядами индикатора. Первый счетчик предназначен для счета единиц, второй — десятков, а третий — сотен.
На рис. 4.37 я продолжу изображать схему с использованием стрелок с цифрами, которые будут показывать вам, какие выводы счетчиков должны быть подключены к соответствующим выводам цифрового трехразрядного индикатора. В противном случае схема будет представлять спутанный клубок проводов, пересекающихся друг с другом.
Рис. 4.37. Эта тестовая схема выполнена так, как, вероятно, вы бы хотели ее разместить на макетной плате, что позволит вам управлять счетчиком вручную для проверки того, что табло производит изменение показаний последовательно от 000 до 999.
Значения компонентов схемы: R1—R6 — резисторы с сопротивлением, равным 1 кОм; S1, S2, S3 — однополюсные однопозиционные кнопки без фиксации, нормально разомкнутые; IC1, IC2, IC3 — микросхемы десятичного счетчика 4026; IC4 — трехразрядный цифровой светодиодный семисегментный индикатор с общим катодом; C1 — конденсатор электролитический, сглаживающий с емкостью минимум 100 мкФ.
Соедините проводами выводы счетчиков IC1, IC2 и IC3 с выводами индикатора IC4, номера которых указаны рядом со стрелками. Для того чтобы не загромождать схему, реальные проводные соединения не были показаны. Проверьте подключения согласно схеме расположения выводов индикатора (см. рис. 4.32)
В этом месте вас может охватить ужас от такого числа соединений, но на самом деле, при использовании макетной платы это не должно занимать более получаса для завершения этой части проекта.
Я полагаю, что вы все же попытаетесь сделать это, поскольку есть что-то магическое, когда устройство индикации выполняет счет от 000 до 999 «все в себе», а я выбрал это устройство, потому что оно также имеет большую ценность с образовательной точки зрения.
Кнопка S1 подключается к выводу «Запрет тактирования» (Disable clock) микросхемы IC1, так что, когда вы будете удерживать кнопку в нажатом состоянии, счетчик считать не будет. Поскольку микросхема IC1 управляет следующим счетчиком IC2, а он в свою очередь управляет третьим счетчиком IC3, то, если вы приостанавливаете счетчик IC1, остальные две микросхемы так же будут ждать возобновления счета. Поэтому далее в этой схеме вам более не потребуется использовать выводы «Запрет тактирования» (Disable clock).
Кнопка S2 подключена к выводам «Сброс» (Reset) всех трех счетчиков, поэтому, когда вы удерживаете ее в нажатом состоянии, все они должны быть обнулены.
Кнопка S3 посылает положительные импульсы вручную на вывод «Тактовый вход» первого счетчика.
Параллельно всем кнопкам S1, S2 и S3 подключены резисторы с сопротивлением 1 кОм, но соединенные с минусовым выводом источника питания («земля»). Идея состоит в том, что, когда кнопки не нажаты, эти подтягивающие резисторы будут поддерживать потенциал выводов близким к потенциалу земли (нулю). Когда вы нажимаете одну из кнопок, прямо на микросхему осуществляется подача положительного напряжения, что может легко перекрыть отрицательное напряжение. Таким образом, выводы остаются либо в явно положительном, либо в явно отрицательном состоянии. Если же вы отсоедините один из этих подтягивающих резисторов, то вы, вероятно, заметите неустойчивые состояния цифр на индикаторе. (Сам цифровой индикатор имеет несколько неподсоединенных выводов, но они не создают никаких проблем, поскольку индикатор — это пассивный элемент, который просто осуществляет включение светодиодных сегментов).
Примечание
Всегда следует подключать выводы КМОП-(CMOS-)микросхем таким образом, чтобы они были либо положительными, либо отрицательными. Смотрите следующее предупреждающее примечание «Никаких плавающих выводов»
Я полагаю, что вы уже подключили все провода согласно предыдущей схеме. После этого с помощью небольших отрезков одножильного провода 22 AWG (0,64 мм) нужно выполнить все соединения выводов панелек микросхем IC1, IC2 и IC3 с цифровым семисегментным индикатором IC4 (см. рис. 4.37).
Включите напряжение питания и нажмите кнопку S2. На вашем индикаторе вы должны увидеть 3 нуля.
Каждый раз после нажатия кнопки S3 результат счета будет увеличиваться на 1. Если вы снова нажмете кнопку S2, то счетчики и индикатор примут исходное нулевое положение. Если вы будете удерживать нажатой кнопку S1, одновременно периодически нажимая на кнопку S3, то счетчик будет оставаться в определенном зафиксированном («замороженном») положении, игнорируя все счетные импульсы, поступающие от кнопки S3.
Микросхема КМОП-(CMOS-)структуры является по своей «природе» гиперчувствительной. Любой вывод, который не подключен к источнику питания или «земле», называют плавающим. Подобные выводы могут стать антенной, которая будет реагировать на малейшие изменения в окружающей микросхему среде.
Микросхема счетчика 4026 имеет вывод, который обозначен, как «Запрет тактирования» (Disable clock). Технические данные производителя услужливо сообщают нам, что, если вы подадите на этот вывод положительное напряжение, то интегральная микросхема прекратит счет и «заморозит» показания на индикаторе. Если вы не хотите этого, то вы можете просто игнорировать этот вывод и оставить его неподключенным, по меньшей мере, пока выполняете тестирование микросхемы. На самом деле это очень плохая идея!
К сожалению, справочный лист технических данных не представляет информацию о том, что для нормального функционирования тактовых импульсов функция запрещения тактирования должна быть отключена путем соединения вывода «Запрет тактирования» (Disable clock) микросхемы к отрицательному выводу источника питания («земле»). Если же вы оставите этот вывод «плавающим» (а я сообщаю вам это из своего опыта), микросхема будет работать с ошибками и бесполезно.
Все входные выводы должны быть либо положительными, либо отрицательными, если не указано иное.
Дребезг контактов при переключениях
Когда вы нажимаете выключатель S3, я полагаю, вы обнаружите, что иногда показания табло увеличиваются более, чем на 1. Это не означает, что что-то было сделано неправильно при монтаже вашей платы или ваших компонентов; вы просто наблюдаете эффект, который называется дребезг контактов.
Если рассматривать этот эффект на микроскопическом уровне, то контакты внутри кнопочного переключателя не примыкают друг к другу плавно, плотно и сразу. Они, перед тем как успокоиться, колеблются несколько микросекунд; а микросхема счетчика регистрирует эти колебания в виде серии импульсов, а не воспринимает в качестве одного импульса.
Для устранения дребезга контактов можно использовать различные схемы. Наиболее простым способом является применение небольшого конденсатора, который подключается параллельно переключателю для подавления этих изменений сигнала; но это решение далеко от идеального. Я вернусь к теме устранения дребезга позднее. Дребезг контактов кнопки S3 не является проблемой для данной схемы, поскольку далее мы эту кнопку собираемся заменить таймером 555, который и будет генерировать четкие импульсы без всякого «дребезга».
Генерирование импульсов
Микросхема таймера 555 идеальна для управления микросхемой счетчика. Мы уже рассмотрели, как с помощью таймера 555 можно сформировать последовательность импульсов, которые заставляют динамик гудеть. На рис. 4.38 я привожу ту же самую схему (но в более упрощенном виде) подключения источника питания в данном проекте. Я также показываю соединение выводов 2 и 6 так, как оно чаще всего выполняется — с помощью провода, который проходит над корпусом микросхемы.
Рис. 4.38. Основная схема работает в автоколебательном режиме, что дает возможность управлять десятичным счетчиком, собранным по приведенной ранее схеме. Частота на выходе должна получиться равной приблизительно 4 Гц (импульса в секунду).
R7 — резистор с сопротивлением 1 кОм; R8 — резистор с сопротивлением 2,2 кОм; C2 — электролитический конденсатор емкостью 68 мкФ; C3 — конденсатор емкостью 0,1 мкФ; IC5 — микросхема таймера 555
Для данного эксперимента я предлагаю, чтобы начальные значения компонентов были выбраны таким образом, чтобы выполнялось генерирование импульсов с частотой только 4 Гц. Любая большая частота генерирования не даст вам возможности проверить правильность выполнения счета.
На вашу макетную плату чуть выше интегральной микросхемы IC1 установите микросхему таймера 555 IC5 и соответствующие ей компоненты, которые должны быть к ней подсоединены. Не следует оставлять какой-либо зазор между микросхемами. Отсоедините кнопку S3 и резистор R3 и подключите провод напрямую между выводом 3 микросхемы IC5 и выводом 1 микросхемы IC1, расположенным на самом верху счетчика. Снова подайте напряжение питания, и вы должны увидеть, что цифры переключаются быстро и это происходит плавно и повторяется равномерно.
Нажмите кнопку S1, и пока вы будете ее сохранять в нажатом положении, показания счетчика должны оставаться «замороженными». Отпустите кнопку S1 и счет снова возобновится. Нажмите кнопка S2 и счетчик должен обнулить свои показания, даже если вы одновременно будете нажимать кнопку S1.
Улучшения
Теперь настало время вспомнить, чего же именно мы хотим от этой схемы, чтобы это дало нам возможность выполнять измерение реакции человека. Когда пользователь запускает эту схему, мы хотим, чтобы была начальная задержка, за которой должен последовать сигнал — возможно вспышка светодиода. Пользователь реагирует на этот сигнал, нажимая на кнопку как можно скорее. В зависимости от того сколько времени у пользователя уйдет на ответ, счетчик будет отсчитывать миллисекунды.
Когда пользователь нажимает на кнопку, счетчик должен останавливаться. Дисплей далее остается «замороженным» вне зависимости от отображаемого количества импульсов, которые были отсчитаны до того, как пользователь среагировал.
Как это организовать? Я считаю, что нам понадобится триггер. Когда триггер получает сигнал, он запускает счетчик и дает возможность ему продолжать счет. Когда в триггер поступает другой сигнал, связанный с нажатием пользователем кнопки, он останавливает счет и оставляет счетчик в этом положении.
Каким образом нам выполнить триггер? Хотите верьте, хотите нет, но мы можем для этого использовать другой таймер 555, в новом режиме, который известен, как бистабильный.
Таймер 555. Бистабильный режим
На рис. 4.39 приведена внутренняя структурная схема таймера 555 аналогично приведенным ранее схемам, но в данном случае внешние компоненты с правой стороны отсутствуют.
Рис. 4.39. В бистабильном режиме на вывод 6 таймера 555 постоянно подается напряжение, равное отрицательному выводу источника питания («земля»), поэтому цикл формирования положительного сигнала на выходе таймера не прекращается до тех пор, пока вы не принудите его сделать это, подав отрицательный импульс на вывод 4 (Сброс)
Вместо этого на вывод 6 схемы подано постоянное напряжение с отрицательного вывода источника («земля»). К какому результату это может привести? Предположим, на вывод «Запуск» (вывод 2) подан отрицательный импульс. Обычно, когда вы это выполняли ранее, таймер 555 начинал работать, и в процессе заряда конденсатора, подключенного к выводу 6, выполнял генерирование положительного импульса на своем выходе (вывод 3). Когда же конденсатор достигал заряда, равного 2/3 напряжения источника питания, то в это время таймеру 555 указывалось, что на его выходе нужно завершить формирование положительного импульса и переключить выход обратно в исходное состояние с напряжением, соответствующим отрицательному выводу источника питания («земля»).
Хорошо, но если в данном случае нет конденсатора, то нет ничего такого, что могло бы вернуть таймер в исходное состояние. Тогда на выходе будет продолжаться формирование положительного импульса. Тем не менее вывод 4 (Сброс) сохраняет самый высокий приоритет для переключения таймера. После подачи сигнала «Сброс» выход таймера будет оставаться отрицательным, что всегда и происходит, до тех пор, пока вновь вы не переключите таймер, уменьшив напряжение на выводе 2, т. е. выдав сигнал «Запуск». Это приведет обратно к переключению таймера, и он снова будет генерировать положительное напряжение на выходе.
Далее приведем выводы для бистабильного режима таймера 555 (с двумя устойчивыми состояниями).
• Подача отрицательного импульса на вывод 2 приводит к началу формирования положительного сигнала на выходе таймера.
• Подача отрицательного импульса на вывод 4 возвращает сигнал на выходе таймера в исходное состояние с напряжением, соответствующим отрицательному выводу источника питания («земля»).
• Таймер постоянно находится в одном из этих состояний.
Время пребывания в этих состояниях может длиться бесконечно. При этом нормально оставить выводы 5 и 7 таймера неподключенными, поскольку мы переводим их в крайние состояния, в которых подача любого произвольного сигнала на эти выводы будет игнорироваться.
В бистабильном режиме таймер 555 превращается в один большой триггер. Чтобы избежать какой-либо неопределенности, мы с помощью подтягивающих резисторов на выводах 2 и 4 микросхемы поддерживаем положительные напряжения, но отрицательные импульсы на этих выводах могут преобладать, когда мы хотим, чтобы таймер 555 переключился в противоположное состояние. Схема таймера 555, работающего в бистабильном режиме и управляемого двумя кнопками, приведена на рис. 4.40.
Рис. 4.40. Добавление 555 таймера в бистабильном режиме к тестеру определения человеческой реакции будет приводить к остановке отсчета после касания кнопки и сохранения результата отсчета. R9, R10: 1K; IC6: Таймер 555
Вы можете добавить эту схему к ранее собранной. Поскольку мы собираемся подключить выход микросхемы IC6 таймера 555 (вывод 3) к выводу 2 (Запрет тактирования) микросхемы IC1 самого верхнего по схеме счетчика, вы можете отключить кнопку S1 и резистор R1 от этого вывода, как это было в предыдущей схеме (см. рис. 4.37).
Теперь снова включите напряжение питания. Вы должны обнаружить, что схема выполняет счет точно так же, как и раньше, но когда вы нажимаете кнопку S4, счетчики останавливаются («замораживаются»). Это связано с тем, что микросхема IC6 таймера 555, работающая в бистабильном режиме, передает положительный сигнал со своего выхода на вывод 2 (Запрет тактирования) счетчика IC1. Счетчик будет продолжать получать поток импульсов от микросхемы IC5 (таймера 555, работающего в автоколебательном режиме) (см. рис. 4.38), но пока на выводе 2 счетчика сохраняется положительный потенциал, счетчик будет просто игнорировать эти импульсы.
Теперь нажмите кнопку S5 (см. рис. 4.40), которая переключает таймер 555 (микросхему IC6), на выходе которого теперь появляется отрицательный сигнал. Это приведет к возобновлению счета.
Мы подошли очень близко к окончательной доработке схемы.
Мы теперь можем обнулить показания счетчика (кнопкой S2), запустить счет (кнопкой S5) и подождать, пока пользователь остановит счет (кнопкой S4). Единственное, что мы упустили, это способ для неожиданной подачи сигнала для последующей остановки схемы.
Задержка
Давайте установим еще один таймер 555, который будет работать в моностабильном режиме. Запустим его с вывода 2 с помощью отрицательного импульса, и таймер при этом будет выдавать положительный сигнал, который будет длиться, ну скажем, 4 сек. В конце этого времени его выход вернется в исходное состояние, когда на нем будет отрицательный сигнал. Мы можем подсоединить этот выход (вывод 3 микросхемы IC7) к выводу 4 микросхемы IC6 и использовать перепад импульса из положительного в отрицательное состояние (срез импульса). Этот перепад можно применить вместо кнопки S5, которую мы нажимали ранее для начала отсчета.
Соберите и проверьте новую схему, которая приведена на рис. 4.41 и в которую добавлен еще один таймер 555 — это микросхема IC7, расположенная чуть выше микросхемы IC6. Когда сигнал на выходе микросхемы IC7 будет переключаться из положительного в отрицательное состояние, он, поступая на вывод 4 (Сброс) микросхемы IC6, будет переключать ее выход в исходное отрицательное состояние, которое позволяет счетчикам начать счет. Таким образом, микросхема IC7 занимает место кнопки запуска счета S5. Поэтому теперь вы можете отказаться от кнопки S5, но при этом сохранить подтягивающий резистор R10, поскольку вывод 4 (Сброс) микросхемы IC6 должен оставаться положительным все остальное время.
Такая система будет работать, поскольку я дополнительно использовал конденсатор C4 для подключения выхода микросхемы IC7 к выводу сброса микросхемы IC6 (вывод 4). Этот конденсатор пропускает только кратковременный перепад импульса с положительного уровня напряжения на отрицательный (уровень земли), а обратный перепад с выхода микросхемы не оказывает никакого влияния на микросхему IC6.
Окончательная схема, приведенная на рис. 4.41, содержит три таймера 555, соединенных вместе — они расположены выше самого верхнего младшего счетчика, т. е. микросхемы IC1. Для подачи сигнала пользователю я также добавил светодиод.
Рис. 4.41. Завершенная управляющая часть схемы:
R7, R9, R10, R12, R13 — резисторы с сопротивлением 1 кОм; R8 — резистор с сопротивлением 2,2 кОм; R11 — резистор с сопротивлением 330 кОм; C1 — электролитический конденсатор емкостью 100 мкФ; C2 — электролитический конденсатор емкостью 68 мкФ; C3, C4, C6 — конденсатор емкостью 0,1 мкФ; C5 — электролитический конденсатор емкостью 10 мкФ; S1, S2, S3 — однополюсные однопозиционные кнопки без фиксации; IC5, IC6, IC7 — таймеры 555
Рис. 4.42. Завершенная схема таймера для определения реакции человека едва умещается на макетной плате, которая содержит 63 ряда отверстий
Поскольку схема достаточно сложная, подведу некоторый итог, приводя последовательность происходящих событий во время ее работы. При выполнении следующих шагов надо руководствоваться схемой, которая приведена на рис. 4.41:
1. Пользователь нажимает кнопку S4 для запуска задержки, что приводит к переключению микросхемы IC7.
2. В течение нескольких секунд, пока заряжается конденсатор C5, выход микросхемы IC7 остается в состоянии высокого уровня, соответствующего положительному выводу источника питания.
3. После этого выход микросхемы IC7 становится низкого уровня, равного потенциалу «земли».
4. Этот перепад микросхема IC7 выдает через конденсатор C4 на вывод 4 интегральной схемы IC6.
5. Выход микросхемы IC6 переключается в состояние низкого уровня и фиксируется в этом состоянии.
6. Выходной сигнал низкого уровня микросхемы IC6 зажигает сигнальный светодиод.
7. Этот же выходной сигнал низкого уровня микросхемы IC6 подается также на вывод 2 микросхемы счетчика IC1.
8. Напряжение низкого уровня на этом выводе микросхемы IC1 дает возможность счетчику IC1 начать счет.
9. Пользователь, заметив загоревшийся сигнальный светодиод, нажимает кнопку «Стоп» S3.
10. Кнопка S3 подключает вывод 2 микросхемы IC6 к земле.
11. Выход микросхемы IC6 переключается в состояние высокого уровня и остается в этом состоянии.
12. Выход высокого уровня микросхемы IC6 выключает сигнальный светодиод.
13. Выходной сигнал высокого уровня с вывода 3 микросхемы IC6 также подается на вывод 2 (Запрет тактирования) микросхемы IC1.
14. Высокий уровень напряжения на выводе 2 микросхемы счетчика IC1 останавливает счет, который он осуществлял.
15. После изучения результата на индикаторе пользователь нажимает кнопку S2.
16. Эта кнопка S2 подает положительное напряжение на все выводы 15 микросхем IC1, IC2, IC3.
17. Положительное напряжение сбрасывает показания счетчика.
18. Пользователь теперь может повторить попытку.
19. Тем временем микросхема IC5 работает непрерывно.
Если же вам легче понять работу по блок-схеме, то я ее представил на рис. 4.43.
Рис. 4.43. Функционирование устройства для определения реакции человека, которое приведено в виде блок-схемы
Использование устройства для определения реакции человека
Начиная с этого момента, вы можете проверить схему полностью. Когда вы первый раз включаете ее, она начинает счет, которой несколько раздражает, но который легко остановить. Для этого нажмите кнопку S3. Нажмите кнопку S2, чтобы обнулить показания.
Теперь нажмите кнопку S4. После этого, кажется, что ничего не происходит — в этом-то и заключается основная идея. Цикл задержки начинается в скрытом режиме. Через несколько секунд этот цикл заканчивается и загорается сигнальный светодиод. Одновременно начинается отсчет. Чтобы его остановить, пользователь с максимально возможной скоростью должен нажать на кнопку S3. Цифры «замирают», показывая сколько времени прошло.
Теперь осталась только одна проблема — система еще не откалибрована. Она все еще работает в замедленном режиме. Чтобы сделать частоту генерирования равной 1000 Гц, а не 3 или 4 Гц, вам нужно изменить сопротивление времязадающего резистора и емкость конденсатора, которые подключены к микросхеме IC5.
Замените резистор R8 подстроечным потенциометром с сопротивлением 10 кОм, а конденсатор С2 конденсатором емкостью 1 мкФ. Если потенциометр установить в положение максимального сопротивления, то такая комбинация компонентов будет приводить к генерированию импульсов с частотой 690 Гц. Когда же вы начнете уменьшать сопротивление потенциометра, примерно на половине этого пути таймер будет генерировать с частотой 1000 Гц.
А как точно определить это положение потенциометра и соответственно эту частоту? Идеальным решением было бы подключение осциллографа к выходу микросхемы IC5. Но вероятнее всего у вас нет осциллографа, поэтому я предложу пару других способов.
Сначала в качестве конденсатора С2 вместо конденсатора номиналом 1 мкФ установите конденсатор емкостью 10 мкФ. Поскольку вы увеличили емкость в 10 раз, то вы в 10 раз уменьшили частоту. Крайняя левая цифра на вашем табло должна теперь выполнять отсчет в секундах, а достигнув числа 9, переключиться на 0 и выполнять это каждые 10 сек. Вы должны всего лишь выполнить регулировку подстроечным потенциометром, проверяя при этом время счета с помощью секундомера. Когда вы убедитесь, что настройка выполнена точно, надо опять заменить конденсатор C2 емкостью 10 мкФ на конденсатор 1 мкФ.
В этом случае остается одна лишь проблема — точность емкости конденсатора может колебаться в пределах 10 %. Если же вы хотите выполнить точную настройку вашего определителя реакции человека, вы можете поступить следующим образом.
Отсоедините соединительный провод, подключенный к выводу 5 микросхемы старшего счетчика IC3, и замените его светодиодом с последовательно подключенным резистором с сопротивлением 1 кОм, который должен быть подключен к минусу источника питания (земле). Вывод 5 — это вывод выходного сигнала переноса (carry), который представляет собой положительный импульс, когда счетчик IC3 досчитывает в прямом направлении до «9» и снова переключается на «0». Поскольку счетчик IC3 должен считать десятые доли секунд, то вам надо, чтобы сигнал переноса на выводе 5 появлялся каждую секунду.
Теперь запустите схему, чтобы она работала в течение минуты, и с помощью вашего секундомера подсчитайте количество миганий светодиода. Так можно отрегулировать частоту с точностью до ±1 Гц. Если у вас есть видеокамера, у которой имеется дисплей с отсчетом времени в видоискателе, то вы можете использовать ее для проверки мигания светодиода.
Если светодиод мигает слишком часто, то это легко заметить, вы можете присоединить провод от вывода 5 к другому таймеру 555, который работает в моностабильном режиме, для создания выхода, который выполняет генерирование на протяжении примерно 1/10 сек. В этом случае можно использовать выход таймера для включения светодиода.
Дальнейшие улучшения
Само собой разумеется, что каждый раз, когда вы заканчиваете проект, вы видите, что существуют возможности его улучшить. Далее приведены некоторые идеи в этом направлении.
• При включении напряжения питания желательно не выполнять счет. Поэтому было бы замечательно, если бы схема при включении питания выдавала сигнал своей готовности, а не выполняла счет сразу же. Чтобы добиться этого вам понадобится подать отрицательный импульс на вывод 2 микросхемы IC6 и может быть положительный импульс на вывод 15 (Сброс) микросхем счетчиков. Возможно, что для этого потребуется еще один таймер 555. Я хочу предоставить вам возможность самим поэкспериментировать в этом направлении.
• Слышимый сигнал после нажатия кнопки «Старт». В настоящее время нет никакого подтверждения того, что кнопка «Старт» запустила какой-либо процесс. Для решения этой задачи вам придется приобрести пьезоэлектрический звуковой сигнализатор и подключить его между правой стороной кнопки «Старт» и плюсом питания.
• Желателен произвольный интервал времени задержки перед тем, как счетчик начнет выполнять счет. Сделать так, чтобы электронные компоненты срабатывали с произвольными значениями временных задержек, очень трудная задача, но один из способов добиться этого — это создать схему, в которой пользователь замыкает своим пальцем пару металлических контактов. Сопротивление кожи пальца будет заменять резистор R11. А поскольку сопротивление пальца каждый раз будет различно, то будет меняться и время задержки. При этом вам потребуется также выполнить подстройку емкости конденсатора C5.
Подведем итоги
Итак, этот проект показал, каким образом можно управлять микросхемой счетчика, как можно между собой соединять микросхемы счетчиков, а также продемонстрировал три различные функции таймера 555. Кроме того, он показал каким образом интегральные микросхемы могут обмениваться данными друг с другом. В проекте также содержится некоторое введение в калибровку схемы после завершения ее монтажа.
Естественно, если вы хотите получить некоторую практическую пользу от схемы, то должны выполнить ее монтаж в корпусе с надежными кнопками, особенно должна быть прочной кнопка, которая будет останавливать счет. Вы легко можете заметить, что когда люди проверяют свою реакцию, они склонны давить на кнопку достаточно сильно.
Поскольку это был довольно сложный проект, далее я продолжу с рассмотрения более простых и быстро реализуемых устройств, которые продолжат ваше погружение в волнующий мир интегральных схем другого назначения, а именно мир логических микросхем.
Эксперимент 19. ИЗУЧЕНИЕ ЛОГИКИ
Вам понадобятся:
1. Набор резисторов и конденсаторов.
2. Микросхема 74HC00 (четыре двухвходовых логических элемента И-НЕ), 74HC08 (четыре двухвходовых логических элемента И) и стабилизатор напряжения LM7805. Количество — по 1 шт. каждой позиции.
3. Сигнальный диод 1N4148 или его аналог. Количество — 1 шт.
4. Светодиод с низким потреблением тока. Количество — 1 шт.
5. Однополюсные однопозиционные кнопки без фиксации. Количество — 2 шт.
Вы собираетесь войти в сферу чистой цифровой электроники, где используются логические элементы (логические вентили), являющиеся фундаментальной основой каждого электронного вычислительного устройства. Когда вы работаете с ними по отдельности, то они чрезвычайно просты для понимания, но когда вы начинаете соединять их друг с другом, то получаете нечто, что кажется недостижимым по своей сложности. Поэтому давайте начнем разбираться с ними последовательно.
Логические элементы намного более требовательны, чем таймер 555 или счетчик 4026, которые вы использовали ранее.
Логическим элементам необходимо абсолютно точное напряжение питания — 5 В постоянного тока без каких-либо отклонений или «пиков» в токовых сигналах. К счастью, этого не так трудно добиться: достаточно добавить в вашу макетную плату стабилизатор напряжения LM7805, который показан на схеме на рис. 4.44 и на фотографии на рис. 4.45.
Рис. 4.44. Эта простая схема очень важна для того, чтобы обеспечить подачу стабилизированного напряжения питания, равного 5 В постоянного тока, на логические микросхемы
Рис. 4.45. Стабилизатор напряжения и два его конденсатора могут быть удобно установлены в верхней части макетной платы. Следует помнить, что напряжение питания 9 В нужно подавать с левой стороны стабилизатора, а снимать выходное напряжение 5 В на шины питания макетной платы
Стабилизатор получает напряжение питания 9 В от обычного источника питания и уменьшает его до напряжения 5 В. В схеме включения используются два конденсатора. Вы подаете 9 В на стабилизатор, а от него напряжение 5 В поступает на обе стороны вашей макетной платы вместо нерегулируемого напряжения, которое вы использовали ранее. Для проверки напряжения примените ваш мультиметр и убедитесь, что вы точно соблюдаете полярность подключения и маркировку этой полярности.
После установки стабилизатора возьмите пару кнопок, два резистора с сопротивлением 10 кОм, светодиод с низким потреблением тока и резистор с сопротивлением 1 кОм, а затем подключите логическую микросхему 74HC00 так, как это показано на схеме (рис. 4.46). Вы можете заметить, что множество выводов микросхемы закорочены между собой и подсоединены к минусу источника питания. Разъяснения этого я приведу немного позже.
Рис. 4.46. Нажимая по одной кнопке или же сразу обе и наблюдая при этом за светодиодом, вы можете легко понять логическую функцию элемента И-НЕ
Стабилизаторы напряжения
Самые простые модели этих маленьких полупроводников на входном выводе получают более высокое постоянное напряжение и выдают на выходе меньшее по амплитуде стабилизированное напряжение. Третий вывод стабилизатора (он обычно находится в середине) используется для подключения общего вывода источника питания (минуса источника). Кроме того, вам также нужно установить пару конденсаторов для сглаживания пульсаций тока, как это показано на рис. 4.46.
Обычно для пятивольтового стабилизатора со стороны его «входа» можно подавать напряжение 7,5 или 9 В, а со стороны «выхода» снимать точное значение напряжения, равное 5 В. Если же вы интересуетесь куда девается избыток напряжения, то ответ следующий — стабилизатор превращает его в тепло. По этой причине небольшие стабилизаторы (как тот, который показан на рис. 4.8) на одной из сторон корпуса часто имеют металлическую пластину с отверстием в ее верхней части. Назначение пластины — рассеивать тепло. Выполнение этой задачи будет упрощено, если вы закрепите пластину стабилизатора винтом к алюминиевой пластинке, поскольку алюминий очень хорошо проводит тепло. Такую алюминиевую пластинку называют радиатором, вы же можете легко купить один из видов радиаторов, у которого есть набор охлаждающих ребер.
Для наших учебных экспериментов рассеивания большого теплового потока не нужно, поэтому радиаторы нам не потребуются.
Когда вы подключаете напряжение питания, светодиод должен загореться. Нажмите на одну из кнопок, светодиод продолжит гореть. Отпустите первую кнопку и нажмите на другую — светодиод продолжит гореть. Теперь нажмите на обе кнопки, и светодиод погаснет.
Выводы 1 и 2 являются логическими входами одного из четырех логических элементов микросхемы 74HC00. Изначально на них подается напряжение, близкое к напряжению минусового вывода источника питания, поскольку они подключены к нему через подтягивающие резисторы с сопротивлением 10 кОм. Но каждая из кнопок при нажатии подает на вход микросхемы положительное напряжение.
На выходе логического элемента микросхемы, как вы можете видеть, практически всегда имеется положительное напряжение — за исключением случая, когда первый и второй входы микросхемы одновременно становятся положительными. Поскольку интегральная микросхема выполняет логическую операцию И-НЕ, то ее называют логическим элементом И-НЕ (NAND). Вы можете посмотреть расположение компонентов схемы на макетной плате на рис. 4.47. На рис. 4.48 приведена упрощенная для понимания версия схемы.
Рис. 4.47. Это расположение компонентов на макетной плате полностью идентично электрической схеме, приведенной на рис. 4.46
Рис. 4.48.Устройство и функцию элемента И-НЕ легче представить с помощью упрощенной схемы, в которой нет напряжения питания микросхемы и нет попытки разместить провода таким образом, чтобы их расположение соответствовало расположению проводов на макетной плате
U-образное графическое условное обозначение с маленьким кружком в нижней части — это изображение двухвходового логического элемента И-НЕ. На этой схеме не показано напряжения питания логического элемента, но на практике любые логические микросхемы обязательно требуют питания, которое дает им возможность выдать сигнал с бóльшим значением тока, чем те сигналы, которые они получают. В любом случае, когда вы увидите перед собой графическое условное обозначение логической микросхемы, постарайтесь запомнить, что она для выполнения своей функции обязательно должна иметь питание.
На самом деле микросхема 74HC00 содержит 4 элемента И-НЕ, каждый из которых имеет по два логических входа и один выход. Внутри микросхемы выводы всех четырех логических элементов расположены так, как это показано на рис. 4.49. Поскольку для выполнения этого простейшего эксперимента нам необходим только один логический элемент, входные выводы неиспользуемых элементов напрямую подключены к минусовому выводу источника питания.
Рис. 4.49. Расположение выводов на микросхеме 74HC00 (четыре двухвходовых логических элемента И-НЕ)
Вывод 14 используется для подачи напряжения питания на интегральную схему; вывод 7 — минусовой вывод источника питания (общий). Почти все микросхемы семейства 7400 используют одни и те же выводы для подачи напряжения питания, поэтому вы всегда сможете легко выполнять их замену.
Давайте сделаем это прямо сейчас. Сначала надо выключить напряжение питания. Затем аккуратно извлеките и отложите микросхему 74HC00, предварительно закоротив ее выводы проводящей губкой. Вместо нее установите микросхему 74HC08, которая содержит 4 двухвходовых элемента И. Следует убедиться, что вы установили точно так же, как и предыдущую микросхему — вырез (ключ) должен быть расположен сверху. Снова подсоедините напряжение питания и, используя кнопки, выполните проверку работы микросхемы аналогично тому, как вы это выполняли ранее. На этот раз вы должны заметить, что светодиод загорается, если одновременно на первый и второй входы элемента подаются положительные напряжения, в противном случае светодиод остается выключенным. Таким образом, функция этой микросхемы в точности противоположна функции микросхемы И-НЕ. Расположение выводов микросхемы показано на рис. 4.50.
Рис. 4.50. Расположение выводов на микросхеме 74HC08 (четыре двухвходовых логических элемента И)
Вы, вероятно, удивитесь, насколько полезными могут оказаться эти элементы. Скоро вы увидите, что мы сможем, соединяя эти логические микросхемы вместе, создавать такие вещи, как электронный комбинированный замок, или спаренную электронную игральную кость (домино), или компьютеризованную версию телевикторины, в которой пользователи будут соревноваться, пытаясь дать правильные ответы. И если вы достаточно амбициозны, то вы из обычных логических элементов сможете даже построить компьютер.
От Буля к Шеннону
Джордж Буль (George Boole) был британским математиком, который родился в 1815 году и который сделал то, что за всю историю человечества сделало всего лишь несколько людей. Он был достаточно удачлив и умен, чтобы изобрести совершенно новую область математики.
Интересно, что в этой математике не используются числа. Буль имел жесткий логический ум и хотел уменьшить мир до набора утверждений типа «истина/ложь», которые могли бы сочетаться друг с другом разными способами. Например, предположим, у нас есть пара Энн и Боб, у которых настолько мало денег, что они могут приобрести только одну шляпу. Очевидно, что если вы случайно увидите Энн и Боба, гуляющими по улице, то в этом случае возможны 4 различных ситуации: ни один из них шляпу не надел; шляпа может быть на голове у Энн или шляпа может быть на голове Боба, но они оба никак не могут быть в шляпе. Эти ситуации отражает диаграмма, приведенная на рис. 4.51.
Рис. 4.51. Эта несколько поверхностная диаграмма Венна иллюстрирует различные возможности двух человек — Энн и Боба, у которых имеется только одна шляпа
Все эти состояния возможны за исключением одного, когда круги перекрываются. (Эта диаграмма известна, как диаграмма Венна (Venn diagram). Я предоставляю вам самостоятельно разобраться в этом термине, если он вам, конечно, интересен, и если вы хотите узнать больше). Буль продвинул свою идею намного дальше и показал, как создавать и упрощать существенно более сложные логические построения.
Другой способ обобщить ситуацию с ношением шляпы это создать таблицу истинности (табл. 4.3). В крайней правой колонке приведены комбинации предположений, которые могут быть истинными или ложными. Теперь давайте проверим их по табл. 4.4.
Это точно такая же таблица, но в ней используются различные обозначения, описывающие ситуацию, которую вы наблюдали при использовании логического элемента И-НЕ.
Буль опубликовал свой научный трактат в 1854 году задолго до того, как это все стало применяться в электрических или электронных устройствах. Фактически в течение его жизни его работа выглядела бесполезной с практической точки зрения. Но человек по имени Клод Шеннон (Claude Shannon) изучил булеву логику, когда учился в Массачусетском технологическом институте (MIT), в 1930 и 1938 годах он опубликовал работы, описывающие каким образом булев анализ мог бы быть применен в схемах, использующих реле. Они сразу получили практическое применение, поскольку в это время быстро росли телефонные сети, создавая сложные проблемы переключения.
Очень простая телефонная проблема может быть выражена аналогичным образом. Предположим два абонента в сельской местности пользуются одной телефонной линией. Если один из них хочет использовать линию или никто из них не хочет использовать линию, то проблем не возникает.
Но они оба не могут пользоваться линией одновременно. Вы можете заметить, что это в точности такая же ситуация, что и ситуация с использованием одной и той же шляпы у Энн и Боба (рис. 4.52).
Рис. 4.52. Энн и Боб пытаются преодолеть ограничения булевой логики
Мы можем легко нарисовать схему с применением двух нормально замкнутых реле, которые создают желательный результат (рис. 4.53), но если вы представите телефонный коммутатор, который обслуживает тысячи абонентов, то ситуация может стать очень сложной.
Рис. 4.53. Это цепь с использованием реле иллюстрирует необходимую логику для двух телефонных абонентов, которые хотят пользоваться одной линией, а их поведение фактически идентично схеме логического элемента И-НЕ, приведенной на рис. 4.48
На практике во времена Шеннона не существовало логического процесса для поиска наилучшего решения и проверки того, что оно использует меньше компонентов, чем некоторое другое решение.
Шеннон видел, что булев анализ может быть использован для этой цели. Точно также, если применить состояние «включено» для представления «1» и состояние «выключено» для представления «0», вы можете построить систему реле, которая сможет выполнять вычисления. А если система может считать, то она может выполнять арифметические действия.
Когда вакуумные лампы заменили работу реле, были построены первые цифровые компьютеры. Транзисторы пришли на место вакуумных ламп, а интегральные микросхемы заменили транзисторы, что привело к созданию настольных компьютеров, которые являются достижением сегодняшнего времени. Но если проникнуть глубоко внутрь и опуститься на самые нижние уровни этих безумно сложных устройств, то мы увидим, что они все еще используют законы логики, открытые Джорджем Булем.
Сегодня, когда мы используем поисковые системы в Интернете и вводим операторы «И» и «ИЛИ», чтобы сузить поле поиска, мы фактические используем булевы операторы.
Основные сведения о логических элементах
Логический элемент И-НЕ это одна из наиболее фундаментальных конструкций в основе цифровых компьютеров, поскольку (по причинам, которые не могут быть объяснены в рамках этой книги) предоставляет возможность выполнять цифровое сложение. Если же вы хотите узнать об этом больше, то можете попробовать поискать в Интернете с помощью таких запросов, как «двоичная арифметика» и «полусумматор».
В общем случае существует 7 типов логических элементов.
• И
• И-НЕ
• ИЛИ
• ИЛИ-НЕ
• Исключающее ИЛИ
• Исключающее ИЛИ-НЕ
• НЕ
Среди шести элементов с двумя входами элемент «Исключающее ИЛИ-НЕ» практически не используется. Элемент НЕ имеет один вход и на его выходе присутствует сигнал низкого логического уровня, близкий к напряжению отрицательного вывода источника питания (общему выводу), когда на вход подается сигнал высокого уровня, практически равный напряжению положительного вывода источника, или же на выходе имеется сигнал высокого уровня, когда на входе присутствует сигнал низкого логического уровня, соответствующий напряжению отрицательного вывода источника питания. Элемент НЕ гораздо чаще называют инвертором. Символические обозначения всех семи элементов приведены на рис. 4.54.
Рис. 4.54. Условные графические обозначения, принятые в США, для шести элементов с двумя входами и инвертора с одним входом
Здесь я привел условные графические обозначения логических элементов, которые приняты в США. В Европе применяются несколько другие условные обозначения, но традиционные обозначения, приведенные здесь, являются теми, которые вы будет встречать чаще даже тогда, когда эти элементы используют европейцы. Я также привожу обозначения элементов и соответствующие таблицы истинности (рис. 4.55), где показаны сигналы на логические выходах (высокого или низкого уровня) для каждой пары сигналов на входах для всех элементов.
Рис. 4.55. Входы и соответствующие выходы шести типов логических элементов (следует помнить, что элемент «Исключающее ИЛИ-НЕ» (XNOR) используется крайне редко). Знак «—» означает напряжение низкого уровня, очень близкое к потенциалу земли. Символ «+» означает напряжение высокого уровня, очень близкое к напряжению источника питания цепи. Точные значения напряжений будут изменяться в зависимости от других активных компонентов цепи
Если у вас возникнут трудности с наглядным представлением логических элементов, то вам могут помочь сравнения из области механики. Вы можете представить их как автоматы для продажи жевательной резинки с подвижными пластинами с отверстиями. Два человека, «A» и «B», могут перемещать эти пластины. Люди представляют собой входные сигналы, которые считаются положительными, если они что-либо предпринимают. (Существует также система отрицательной логики, но она не так распространена, поэтому я буду рассматривать только систему положительной логики).
Поток жевательных резинок представляет собой поток положительных зарядов. Весь набор возможных вариантов представления логических элементов приведен на рис. 4.56–4.61.
Рис. 4.56. Наглядное представление двухвходового логического элемента И
Рис. 4.57. Наглядное представление двухвходового логического элемента И-НЕ
Рис. 4.58. Наглядное представление двухвходового логического элемента ИЛИ
Рис. 4.59. Наглядное представление двухвходового логического элемента ИЛИ-НЕ
Рис. 4.60. Наглядное представление двухвходового логического элемента «Исключающее ИЛИ»
Рис. 4.61. Наглядное представление двухвходового логического элемента «Исключающее ИЛИ-НЕ»
Сложный мир TTL и CMOS
В конце 1960-х были построены первые логические элементы с использованием транзисторно-транзисторной логики — сокращенно ТТЛ (Transistor-Transistor Logic — TTL), что означало, что микроскопические биполярные транзисторы были созданы методом травления на одной пластине кристалла кремния. Вскоре за ними появились комплементарные структуры металл-оксид-полупроводник — сокращенно КМОП (Complementary Metal Oxide Semiconductors — CMOS). Каждая из таких микросхем представляла собой набор полевых транзисторов со структурой металл-оксид-полупроводник, сокращенно МОП-транзистор (metal-Oxide Field-Eff ect Transistor — MOSFET). Микросхема 4026, которую вы использовали ранее, это микросхема, выполненная по технологии КМОП (CMOS).
Вы, наверное, помните, что биполярные транзисторы усиливают ток. Микросхемы ТТЛ являются аналогичными устройствами: они более чувствительны к току, чем к напряжению. Это требует использования довольно больших токов для их функционирования. А микросхемы КМОП являются аналогами программируемых однопереходных транзисторов (PUT), которые я использовал ранее. Они чувствительны к напряжению, что дает им возможность почти не потреблять ток, когда они ожидают входного сигнала или выдерживают паузу после подачи сигнала.
Два семейства микросхем ТТЛ- (TTL) и КМОП-типа (CMOS) существуют и поныне. В таблице на рис. 4.62 обобщены их основные преимущества и недостатки.
Рис. 4.62. Основные различия меж ду двумя семействами логических микросхем. В последующих поколениях эти различия постепенно стираются
Элементы серии КМОП с номерами микросхем 4000 и выше могут быть легко повреждены статическим электричеством, но они имеют большую ценность, поскольку потребляют очень малую энергию. Серия ТТЛ с номерами микросхем от 7400 и выше потребляет больше энергии, но обладают меньшей чувствительностью и работают очень быстро. Поэтому, если вы хотите построить компьютер, то будете использовать серию ТТЛ, ну, а если вы хотите построить какую-то электронную штучку, которая должна работать неделями от небольшой батарейки, то будете использовать семейство КМОП-микросхем.
С этой точки зрения все становится очень сложным, поскольку производители КМОП-микросхем желали бы увеличить свою долю на рынке за счет приобретения преимуществ ТТЛ. Новые поколения микросхем КМОП также изменили свои номера и стали начинаться с цифр «74», чтобы подчеркнуть их совместимость, а функции их выводов распределяются так, чтобы они соответствовали функциям и выводам микросхем ТТЛ.
В результате расположение выводов микросхем КМОП и ТТЛ теперь, как правило, совпадает, но значения напряжений для «высокого» и «низкого» логического уровня сигнала меняются для каждого нового поколения, а максимальные напряжения питания КМОП-микросхем пересматриваются в сторону уменьшения. Помните я добавил вопросительные знаки позади двух категорий в колонках для КМОП, поскольку эти микросхемы начинают преодолевать свои прежние недостатки, по меньшей мере, в некоторых аспектах.
Здесь приведена краткая сводка, которая может быть полезна вам, если вы ищете микросхему, которую можно найти в Интернете, но сомневаетесь в ее технических характеристиках.
Там, где вы в обозначении типа микросхемы видите букву «x» это означает, что в этом месте могут присутствовать различные цифры. Таким образом, обозначение «74xx» включает в себя микросхему 7400 (четыре двухвходовых логических элемента И-НЕ), микросхему 7402 (четыре двухвходовых логических элемента ИЛИ-НЕ), микросхему 74150 (16-битовый селектор данных) и т. д. Комбинация букв, которые находятся перед цифрами «74», идентифицирует производителя микросхемы, а буквы после этих цифр могут означать тип корпуса, а также содержание тяжелых металлов, которые загрязняют окружающую среду, и другие технические особенности.
Семейство ТТЛ (TTL)
• 74xx — старое оригинальное поколение, в настоящее время устарело.
• 74Sxx — более высокоскоростная серия с диодами Шоттки (Schottky), в настоящее время устарела.
• 74LSxx — серия с диодами Шоттки (Schottky), потребляющая малую мощность, в настоящее время используется редко.
• 74ALSxx — продвинутая серия с диодами Шоттки (Schottky) с низким потреблением мощности.
• 74Fxx — более быстрая серия, чем серия 74ALSхх.
Семейство КМОП (CMOS)
• 40xx — старое оригинальное поколение, в настоящее время устарело.
• 40xxB — серия 4000B была улучшена, но все еще очень чувствительна к воздействию статического электричества. Эти микросхемы все еще используются во многих схемах для любителей электроники, поскольку они работают при относительно высоких значениях напряжения и в состоянии включать светодиоды и даже небольшие реле напрямую (без всякого усиления).
• 74HCxx — высокоскоростные КМОП-микросхемы с номерами деталей, соответствующих семейству ТТЛ, а также с назначением выводов, аналогичным выводам ТТЛ, но входные и выходные напряжения этих микросхем не совпадают с такими же напряжениями ТТЛ-микросхем. В данной книге я довольно интенсивно использовал это поколение микросхем, поскольку оно очень широко распространено, а схемы, которые используются здесь, не требуют высоких скоростей или больших значений мощности.
• 74HCTxx — аналогична предыдущей серии 74HCхх, но напряжение питания соответствует напряжению для семейства ТТЛ.
• 74ACxx — продвинутая версия серии 74HCхх, она быстрее и с большей выходной мощностью.
• 74ACTxx — аналогична предыдущей серии 74ACхх, но имеет те же самые функции выводов и значения напряжений, что и у семейства ТТЛ-микросхем.
• 74AHCxx — продвинутая высокоскоростная серия КМОП.
• 74AHCTxx — аналогична предыдущей серии 74AНCхх, но имеет те же самые функции выводов и значения напряжений, что у семейства ТТЛ-микросхем.
• 74LVxx — версии, требующие низкого напряжения питания (3,3 В), включают серии LV, LVC, LVT и ALVC.
Как вы можете видеть, в настоящее время мы должны относиться к интерпретации номера детали очень внимательно.
Да, но какое семейство и поколение микросхем мы должны использовать? Это зависит от очень многого! Далее приведены некоторые основополагающие принципы выбора.
Что вам не нужно
1. Различия в скоростях работы с нашей точки зрения не имеют особого значения, поскольку мы не собираемся монтировать схемы, которые будут работать на частотах, измеряемых в мегагерцах.
2. Различия в ценах семейств и поколений микросхем столь незначительные, что их практически можно не учитывать.
3. КМОП-микросхемы с низким значением напряжения (серии 74LVхх) для небольших экспериментальных схем не очень интересны.
4. Старайтесь избегать использования в одной и той же схеме микросхем различных семейств и различных поколений одного и того же семейства. Они могут оказаться несовместимыми.
5. Некоторые вариации современных микросхем могут выпускаться только для схем поверхностного монтажа. Поскольку с ними гораздо труднее обращаться и их основное преимущество заключается только в том, что они имеют маленькие размеры, то я не рекомендую пользоваться такими микросхемами.
6. Компоненты семейства ТТЛ серии 74LSхх и 74ALSхх не могут выдавать такой же ток, который выдают такие серии, как 74Sхх и 74Fхх. Поэтому они вам не нужны.
Что вы должны использовать
1. Старые серии 74LSxx семейства ТТЛ были настолько популярны, что их все еще можно найти в схемах, которые были специально созданы под эти микросхемы. Их еще можно приобрести в Интернете в различных источниках, но, если это невозможно, то их можно заменить интегральными схемами серии 74HCTxx, которые спроектированы с идентичными функциями.
2. Старые серии 4000B микросхем семейства КМОП все еще используются любителями электроники, поскольку их способность применяться с высокими значениями напряжения очень удобна. Если микросхемы семейства ТТЛ и ТТЛ-совместимые ИС требуют точного значения напряжения питания, равного 5 В, то микросхемы серии 4000В способны работать от напряжения 15 В и могут напрямую использоваться для включения светодиодов и срабатывания небольших реле.
Некоторые любители также испытывают ностальгические чувства к серии 74Cxx, которая имеет такие же функции выводов, что и микросхемы ТТЛ, но при этом в состоянии работать с более высокими напряжениями и выдавать большие значения тока. Проблема заключается в том, что некоторые интегрированные схемы серии 74Cxx почти «вымерли», в то время как микросхемы 4000B все еще доступны, хотя и считаются полностью устаревшими.
В итоге: я предлагаю использовать микросхемы 4000B только в том случае, если вы хотите сделать копию старой схемы (устройства) или если современный эквивалент недоступен (именно поэтому я выбрал микросхему 4026B для таймера измерения реакции человека, поскольку я не мог найти современный эквивалент, который в состоянии управлять 7-сегментными индикаторами напрямую, и я не хотел иметь дело с бóльшим количеством деталей, чем это необходимо).
Если вы обратитесь к некоторым поставщикам, работающим через Интернет, например, такой компании, как Mouser Electronics, то вы обнаружите, что в настоящее время наиболее популярно семейство 74HCхх. Эти микросхемы доступны для монтажа в сквозные отверстия (что требуется при использовании макетной и перфорированной плат). Они имеют высокое значение входного сопротивления, характерное для семейства КМОП (что очень полезно), и то же самое назначение выводов, что и уже устаревшая серия 74LSxx.
Сокращения
При изучении листов технических данных на микросхемы вы, вероятно, обнаружите некоторые или все из приведенных далее сокращений.
• VOH min — минимальное выходное напряжение высокого логического уровня.
• VOL max — максимальное выходное напряжение низкого логического уровня.
• VIH min — минимальное входное напряжение, которое может считаться напряжением высокого уровня.
• VIL max — максимальное выходное напряжение, которое может считаться напряжением низкого уровня.
Происхождение логических элементов
Семейство интегральных микросхем серии 7400 было представлено компанией Texas Instruments, начиная с логического элемента И-НЕ (микросхемы 7400), еще в 1962 г. Некоторые компании уже продавали свои логические ИС и до этого, но серия 7400 стала доминировать на рынке. Лунная миссия Аполлонов использовала компьютеры, построенные на микросхемах серии 7400, и они были основным элементом миникомпьютеров в течение всех 1970-х.
Компания RCA представила серию логических микросхем 4000 в 1968 г., которые были построены на КМОП-транзисторах; компания Texas Instruments выбрала технологию ТТЛ. Микросхемы КМОП потребляют меньшую мощность, поэтому излучают меньше тепла и обладают большей универсальностью при использовании в схемах, поскольку каждая микросхема может быть источником напряжения для других. Семейство КМОП было более терпимым к диапазону изменения напряжения (от 3 до 15 В), но не могло использоваться при частотах переключения выше 1 МГц. Семейство ТТЛ было в 10 раз быстрее.
Конструкции постепенно улучшались, что приводило к более высоким скоростям работы КМОП-микросхем, что стало приводить к более редкому использованию ТТЛ. Правда до сих пор некоторые люди испытывают специфические ностальгические чувства к логическим элементам, которые «летали на Луну».
Убежденный энтузиаст по имени Билл Базби (Bill Buzbee) построил целый веб-сервер на микросхемах серии 7400 ТТЛ-семейства, который можно найти в Интернете по адресу: http://magic1.org.
На рис. 4.63 показана одна из плат, сделанных вручную, из которых Билл собрал свой компьютер.
Рис. 4.63. Любитель Билл Базби (Bill Buzbee) самостоятельно собрал веб-сервер полностью на логических микросхемах серии 7400, самая старая из которых была произведена в конце 1969 г. Этот веб-сервер можно найти в Интернете по адресу http://magic1.org, где приведены фотографии его самого и подробности его конструкции. На рисунке, который представил Билл, показана всего лишь одна плата из его замечательного проекта
Наиболее распространенные номера деталей
Каждый вывод микросхемы с 14 выводами может содержать 4 двухвходовых логических элемента, три элемента с тремя входами, один элемент с восемью входами или 6 инверторов с одним входом и выходом, как это показано в приведенной далее табл. 4.5.
На рис. 4.64–4.72 показаны внутренние соединения для некоторых наиболее распространенных логических микросхем, которые вы, скорее всего, и будете использовать. Следует помнить, что в микросхеме 7402 элемент входов и выходов логических элементов ИЛИ-НЕ расположены несколько иначе по сравнению с другими микросхемами.
Рис. 4.64. Микросхема 7402 (четыре двухвходовых логических элемента ИЛИ-НЕ). Следует помнить, что входы микросхемы 7402 расположены несколько в ином порядке по сравнению с другими микросхемами
Рис. 4.65. Микросхема 7404 (шесть инверторов)
Рис. 4.66. Микросхема 7410 (три трехвходовых логических элемента И-НЕ)
Рис. 4.67. Микросхема 7411 (три трехвходовых логических элемента И)
Рис. 4.68. Микросхема 7420 (два четырехвходовых логических элемента И-НЕ)
Рис. 4.69. Микросхема 7421 (два четырехвходовых логических элемента И)
Рис. 4.70. Микросхема 7427 (три трехвходовых элемента ИЛИ-НЕ)
Рис. 4.71. Микросхема 7432 (четыре двухвходовых логических элемента ИЛИ)
Рис. 4.72. Микросхема 7486 (четыре двухвходовых логических элемента «Исключающее ИЛИ»)
Правила соединения логических элементов
Допускается:
• Вы можете подключать вход логического элемента напрямую к вашему источнику стабилизированного напряжения (к его плюсовому выводу), либо к его минусовому выводу (общему).
• Вы можете подключать выход одного элемента напрямую к входу другого элемента.
• Выход одного логического элемента может служить источником напряжения для входов многих других ИС (это называется разветвлением по выходу (fanout)). Точное соотношение зависит от микросхемы, но вы можете почти всегда запитывать до 10 входов с помощью одного логического вывода.
Выход логической микросхемы может управлять запуском (вывод 2) таймера 555. На выходе таймера может быть до 100 мА, что вполне достаточно для включения полдюжины светодиодов или небольших реле.
• Входной сигнал низкого уровня не обязательно должен быть равен 0 В. Логический элемент серии 74HCxx будет считать любое напряжение, которое ниже 1 В, низким логическим уровнем.
• Входной сигнал высокого уровня не обязательно должен быть 5 В. Логический элемент серии 74HCxx будет считать любое напряжение выше 3,5 В высоким логическим уровнем.
На рис. 4.73 и 4.74 приведено сравнение допустимых напряжений для входных и выходных сигналов микросхем серий 74HCxx и 74LSxx.
Рис. 4.73. Каждое семейство логических микросхем и каждое поколение такого семейства обладает различными стандартами для минимальных и максимальных входных и выходных уровней напряжений. На этой схеме показаны стандарты, используемые для поколения «HC» семейства КМОП-микросхем, которое было выбрано для большинства устройств в данной книге. Следует помнить, что необходимый ток для входного сигнала является минимальным по сравнению с сигналом, который доступен на выходе. Напряжение питания микросхемы создает такую разницу
Рис. 4.74. Поскольку поколение «LS» ТТЛ-семейства имеет настолько большие допуски для входных напряжений и различные стандартные значения для выходных напряжений, то поколение «LS» микросхем ТТЛ-семейства не следует использовать совместно с поколением «HC» микросхем семейства КМОП без использования нагрузочных резисторов, которые необходимы для того, чтобы привести микросхемы «LS» в соответствие со стандартами, применимыми к микросхемам «HC». В качестве примера использования микросхемы «LS» обратитесь к разд. «Эксперимент 21. Гонка до места»
Не допускается:
• Не должно быть неподсоединенных выводов! При применении КМОП-микросхем, таких как семейство «HC», вы должны всегда подключать все выводы входов к известному значению напряжения, даже если эти выводы не используются.
При применении однополюсного однопозиционного переключателя типа SPST для управления входом, помните, что в положении «выключено» он оставляет вход не подключенным. Для предотвращения такой ситуации используйте подтягивающий или согласующий резистор (рис. 4.75).
Рис. 4.75. Поскольку КМОП-микросхемы очень чувствительны к изменениям на входе, логический вход никогда не следует оставлять «плавающим» или неподключенным к определенному источнику напряжения. Это означает, что многие переключатели или кнопки должны использоваться с подтягивающими или согласующими резисторами таким образом, что, когда контакты переключателей будут разомкнуты, входы микросхем должны оставаться в определенном состоянии
• Для подачи напряжения питания на логические элементы семейства 74HCxx или 74LSxx не следует использовать нестабилизированные источники питания с напряжением более 5 В.
• Будьте очень внимательны при использовании выхода логического элемента даже для подключения светодиодов с низким потреблением тока. Всегда следует знать сколько точно миллиампер для этого необходимо. Кроме того, будьте внимательны при использовании выхода логического элемента для одновременного подключения его к входу другого элемента и для включения светодиода. На светодиоде может падать такое выходное напряжение, что после этого другой логический элемент неверно определит истинный уровень выходного сигнала. Всегда следует проверять токи и напряжения при модификации или разработке новых схем.
• Никогда не следует подавать значительное напряжение или ток на выходной вывод логического элемента.
• Никогда не следует непосредственно соединять выходы двух или более логических элементов. Если же все же необходимо сделать общую выходную шину для нескольких микросхем, то на их выходах следует использовать диоды для защиты выходов от воздействия друг на друга (рис. 4.76).
Рис. 4.76. Выход одного логического элемента не должен использоваться для непосредственного подключения к выходу другого логического элемента. Для изолирования выходов микросхем могут использоваться диоды или они могут подключаться через другой логический элемент
В семействе логических микросхем 74HCxx каждый вход логического элемента потребляет всего лишь микроамперы, а выход может быть источником тока порядка 4 мА. Это выглядит несколько парадоксальным: как может микросхема выдавать больше, чем она получает на входе? Ответ заключается в том, что она потребляет дополнительную энергию от источника питания, который подключен к выводам 7 и 14. Это тот самый источник, от которого и поступает дополнительный ток.
Поскольку на логическом выходе микросхемы может быть больший ток, чем на логическом входе, мы можем установить интегральную схему в состояние, в котором она остается во «включенном» состоянии и становится похожей на реле в устройстве охранной сигнализации, которое подключается так, что может самофиксироваться. Простейший способ добиться этого — использовать в микросхеме части выходного сигнала в качестве одного из входных.
На рис. 4.77 показан логический элемент И, у которого один их входов подключен к плюсовому выводу источника питания, а другой вход с помощью подтягивающего резистора удерживается на низком логическом уровне до тех пор пока не будет нажата кнопка, подающая на этот вход высокий логический уровень сигнала. Импульсный диод соединяет выход логического элемента с входом, к которому подключена кнопка и подтягивающий резистор. Следует отметить, что анод диода должен быть подключен к выходу логического элемента, а катод к входу, соединенному с резистором сопротивлением 10 кОм и кнопкой.
Рис. 4.77. Использование диода дает возможность подать выходной сигнал логического элемента на один из его входов, что, в свою очередь, позволяет зафиксировать элемент в определенном состоянии после получения короткого логического сигнала на входе
На схеме, которая приведена на рис. 4.77, показано каким образом все это должно быть выполнено на макетной плате. На рис. 4.78 показана простейшая схема реализации этой идеи.
Рис. 4.78. В данном случае показана простейшая схема, позволяющая продемонстрировать способ, с помощью которого логический элемент может сам себя зафиксировать после получения входного импульса
Примечание
Начиная с этого момента, я не буду больше показывать стабилизатор напряжения питания и конденсаторы, которые используются вместе с ним. Следует всего лишь запомнить, что они должны быть включены в каждой схеме, где будет сделана пометка «5 В стабилизированного напряжения постоянного тока».
Когда вы на схему подадите напряжение питания, светодиод гореть не будет, как это было ранее. Для того чтобы на выходе двухвходового логического элемента И сформировать положительное напряжение, требуется наличие высокого логического уровня напряжения на обоих своих логических входах. В данной схеме в исходном состоянии высокий логический уровень сигнала будет присутствовать только на одном из входов, в то время как другой вход с помощью резистора с сопротивлением 10 кОм будет удерживаться на низком логическом уровне. Теперь нажмите на кнопку и светодиод загорится. Отпустите кнопку и светодиод продолжит гореть, поскольку высокий уровень сигнала на выходе логического элемента И через диод передается назад на его вход, и этого вполне достаточно, чтобы «преодолеть» отрицательное напряжение, которое подается подтягивающим резистором.
Выходной сигнал этого элемента И подается на один его вход, поэтому светодиод остается в этом состоянии до тех пор, пока не будет отключено питание. Такое схематическое решение называется защелкой и может быть очень полезно, когда вы на выходе хотите получить сигнал, который должен сохраняться даже после того, как пользователь нажал и отпустил кнопку.
Вы не можете взять и просто подключить выход логического элемента к одному из его входов, используя кусок обычного провода, поскольку это даст возможность положительному напряжению от сенсорного выключателя попасть на выход и повлиять на выходной сигнал. Запомните, вы никогда не должны подавать напряжение на выходной вывод логического элемента. Диод предотвращает возможность возникновения такой неприятности.
Теперь, если вы усвоили базовые сведения о логических элементах, вы готовы продолжить ваш первый реальный проект, в котором мы будем использовать всю ту информацию, которую я вам успел предоставить.
Эксперимент 20. КОДОВЫЙ ЗАМОК
Предположим, что вы хотите, чтобы никто из посторонних не смог воспользоваться вашим компьютером. Для данной задачи я могу подумать о двух путях решения: использования программного или аппаратного обеспечения. Программное обеспечение предполагает использование программы определенного типа, которая будет прерывать нормальный ход загрузки программного обеспечения компьютера, требуя ввода пароля. Естественно, что вы можете пойти именно таким путем, но я думаю, что более действенным (и в большей степени соответствующим материалу данной книги) будет использование аппаратного обеспечения. То, что я могу себе представить — это кодовый замок с цифровой клавиатурой, который требует от пользователя компьютера ввода секретного кода перед тем, как компьютер может быть включен.
Если вы захотите довести данный проект до его завершения, то вам придется вскрывать настольный компьютер, обрезать провода и прорезать проем в корпусе (рис. 4.79). Без сомнения, это приведет к тому, что гарантийные обязательства на это изделие будут нарушены. Если же это вас беспокоит, то существуют три варианта решения проблемы:
1. Собрать схему на макетной плате для собственного удовольствия и оставить ее в таком состоянии.
2. Использовать цифровую клавиатуру на каком-либо другом устройстве.
3. Использовать для этой цели старый компьютер.
Рис. 4.79. Предупреждение: такие действия приведут к прекращению гарантийных обязательств
Вам понадобятся:
1. Цифровая клавиатура. Как было указано в списке необходимых покупок в начале данной главы, она должна иметь «общий вывод» или «общий выход». На схеме, которая приведена на рис. 4.80, показано, что я имею в виду.
Рис. 4.80. Тип клавиатуры, который необходим для эксперимента 20, включает общий вывод, подключенный к одной стороне каждой из 12 кнопок. Провода, идущие от общего вывода, для упрощения идентификации показаны красным цветом
Внутри клавиатуры один проводник (который я изобразил красным цветом для того, чтобы он отличался от других) подключен к одному из контактов каждой кнопки. Этот проводник является «общим» для всех них. Он идет от крайнего разъема клавиатуры или набора выводов в нижней части, которые я окрасил желтым цветом.
Клавиатура, которая использует «матричное кодирование», не будет работать со схемой, которую я собираюсь описывать. Если клавиатура компании Valleman nv, которую я вам рекомендую, недоступна, а вы не можете найти другую, аналогичную этой, то вы можете использовать 12 отдельных однополюсных однопозиционных кнопок. Конечно, это будет стоить несколько дороже.
2. Микросхема 74HC08, содержащая четыре двухвходовых логических элемента И. Количество — 1 шт.
3. Микросхема 74HC04, содержащая шесть инверторов. Количество — 1 шт.
4. Микросхема таймера 555. Количество — 1 шт.
5. Реле с самоудерживанием (с фиксацией состояния), с рабочим напряжением 5 В, двухполюсное однопозиционное или двухполюсное двухпозиционное, корпус «2 from C», Panasonic DS2E-SL2-DC5V или его аналог. Большинство реле имеет две отдельные катушки (одну для фиксации, другую для снятия фиксации) с раздельными входами. Количество — 1 шт.
6. Светодиоды диаметром 5 мм, цвет свечения по вашему выбору. Количество — 3 шт.
7. Плоский кабель минимум с шестью проводниками, если вы действительно хотите получить компактную конструкцию.
Вы можете использовать кабель такого типа, которые используются для подключения жестких дисков внутри настольного компьютера, и отделить от него шесть жил, которые вам нужны, а также купить то, что вам нужно, на интернет-аукционе eBay.
8. Инструмент для открытия вашего компьютера, дрель для сверления четырех отверстий и пилка для их соединения, чтобы образовать прямоугольный вырез для установки клавиатуры (если вы хотите довести этот проект до завершения). Также необходимы четыре небольших болта для того, чтобы прикрепить клавиатуру к корпусу компьютера после завершения выполнения выреза.
Схема
На этот раз я хотел бы рассмотреть схему до того, как что-то монтировать. Давайте начнем с более упрощенной версии, которая показана на рис. 4.81.
Рис. 4.81. Упрощенная схема приведена для основной структуры схемы кодового замка
Я хочу, чтобы эта схема питалась от батарейки для того, чтобы не было необходимости для нее создавать какой-либо другой источник питания или (что еще хуже) попытаться подключиться к внутренней шине компьютера с напряжением 5 В. Питание от батарейки означает, что схема должна находиться в положении «выключено» бóльшую часть времени, чтобы предотвратить бесполезное использование батарейки. Поскольку клавиатура имеет две запасные кнопки (с символами звездочка «*» и решетка «#»), то я собираюсь использовать кнопку «*» для включения питания кодового замка. Когда вы нажмете на эту кнопку, будет загораться светодиод, расположенный в верхней части схемы, подтверждая, что все находится в рабочем состоянии и кнопка подает напряжение питания на все логические микросхемы и таймер 555.
Следует обратить ваше внимание, что пока вы будете набирать код, состоящий из трех цифр, для снятия блокировки с компьютера, вы должны будете удерживать кнопку «*» нажатой.
По своему выбору в качестве кода я взял цифры 1–4–7. Давайте проследим за тем, что произойдет, когда вы будете вводить эту кодовую последовательность. (Разумеется, если вы будете сами монтировать схему, то вы можете подключить провода к трем другим цифрам по вашему выбору.)
Нажатие кнопки «1» будет приводить к тому, что сигнал высокого логического уровня поступит на вход первого логического элемента И (верхнего по схеме). На другой вход этого элемента тоже подается сигнал высокого логического уровня, поскольку он получает напряжение через инвертер, вход которого через подтягивающий резистор подключен к минусовому выводу источника питания. Когда на входе инвертора будет напряжение, соответствующее минусовому выводу источника питания, то на выходе элемента будет высокий логический уровень сигнала, поэтому нажатие кнопки «1» будет приводить к срабатыванию первого элемента И, что приведет к появлению на его выходе сигнала высокого логического уровня. При этом элемент И будет защелкнут в этом состоянии, поскольку сигнал с его выхода через диод будет подаваться на его же вход. Поэтому выход элемента будет находиться в состоянии высокого логического уровня даже после того, как вы отпустите кнопку «1».
Сигнал с выхода первого элемента И поступает на вход второго. При этом, если вы нажмете на кнопку «4», то подадите высокий уровень на другой логический вход этого элемента И, поэтому его выход также перейдет в состояние высокого логического уровня, а сам элемент защелкнется в своем состоянии точно также, как это делал первый элемент.
Второй логический элемент И подает сигнал на вход последнего третьего элемента И, поэтому когда вы нажмете на кнопку «7», третий элемент И изменит состояние на его выходе с низкого уровня на высокий. Этот сигнал подается на инвертор, поэтому выход инвертора при этом перейдет из стояния высокого логического уровня в низкое. Этот сигнал в свою очередь запустит таймер 555, функционирующий в моностабильном режиме.
Когда сигнал на входе «Запуск» таймера 555 перейдет из высокого логического уровня в низкое, таймер на своем выходе (вывод 3) начнет формировать положительный импульс. Таким образом, за счет протекания тока по верхней показанной на схеме катушке, это приводит к срабатыванию реле с самоудерживанием (с фиксацией состояния), загорится светодиод, подтверждая, что код был введен правильно и реле активировано.
Два контакта реле подключены к кнопке выключателя вашего компьютера. Несколько позднее я объясню, почему это будет безопасно для любого современного компьютера.
Поскольку мы используем реле с самоудерживанием, то оно переключается в состояние «включено» и остается в этом состоянии даже тогда, когда завершается формирование запускающего импульса, поступающего от таймера 555. Итак, сейчас вы можете отпустить кнопку «*», чтобы отключить напряжение питания от вашего кодового замка, и нажать кнопку, которая включит ваш компьютер.
В конце вашей работы с компьютером вы можете, как обычно, отключить ваш компьютер, а затем нажать кнопку «#» на клавиатуре вашего кодового замка, которая переключит реле в другое исходное состояние для блокировки компьютера, которое потребует активации вашего кодового замка.
В случае ввода неправильного кода
Что случится, если будет введен неправильный код? Если вы нажали какую-либо другую кнопку, а не «1», «4» или «7», то будет подано положительное напряжение на инвертор в верхней части схемы (см. рис. 4.81).
Это положительное напряжение подавляет отрицательное напряжение, приложенное к инвертору через подтягивающий резистор. В результате на выходе инвертора будет отрицательное напряжение, которое будет поступать на один из логических входов первого логического элемента И. Если элемент И заблокирован (защелкнут), то это отрицательное напряжение разблокирует его. Поскольку выходной сигнал с первого элемента поступает на вход второго элемента И, то это приведет и к его к отключению.
Таким образом, любая ошибка при вводе первой, второй или третьей цифры секретного кода будет приводить к сбросу элемента И, а также вынудит вас вводить код снова и снова.
А что будет, если вы введете цифры «1», «4» и «7» в неправильной последовательности? Схема также не сработает. Третий элемент И может реагировать на нажатие кнопки только тогда, когда получит на свой другой вход сигнал высокого уровня от второго элемента И, а второй элемент И отреагирует только когда получит сигнал от первого элемента И. Поэтому логические элементы И вы должны приводить в действие строго в определенной последовательности.
Вопросы
Почему для подачи импульса на реле я применил именно таймер 555? Потому что логический выход элемента И не обладает для этого достаточной мощностью. Я мог бы, конечно, усилить этот сигнал с помощью транзистора, но мне для переключения реле и зажигания светодиода в течение 1 сек вне зависимости от того как быстро пользователь нажимает последнюю кнопку кода (в рассматриваемом случае кнопку «7») понравилась идея формирования импульса фиксированной длительности.
Зачем мне понадобились три светодиода? Потому что, когда вы работаете с клавиатурой кодового замка для снятия блокировки вашего компьютера, вы должны знать, что именно при этом происходит. Первый светодиод для индикации включения напряжения питания покажет вам, что ваша батарейка еще не разряжена. Второй светодиод для индикации активизации реле покажет, что блокировка компьютера отключена даже в том случае, если вам не удастся расслышать щелчок сработавшего реле.
Светодиод для индикации состояния повторной блокировки компьютера покажет, что вы снова установили защиту от несанкционированного доступа к вашему компьютеру.
Поскольку светодиоды подключаются либо непосредственно к напряжению питания 5 В, либо к выходу таймера 555, они должны быть светодиодами с низким потреблением тока, и мы можем последовательно с ними подключать резисторы с сопротивлением 330 Ом, чтобы их свечение было хорошим и ярким.
Как можно подключить клавиатуру к схеме кодового замка?
Для этого-то и предусматривался плоский кабель. Вы должны аккуратно снять изоляцию с каждого проводника кабеля и припаять их к контактной полоске или к разъему, который расположен на краю вашей клавиатуры. Вставьте проводники, расположенные с другой стороны кабеля, в вашу макетную плату (при монтаже платы в тестовом режиме) или припаяйте их к перфорированной плате (когда выполняете монтаж законченного изделия).
Внутри вашего компьютера найдите подходящее пространство, где можно установить перфорированную плату, и закрепите ее в этом месте с помощью двухстороннего скотча или небольших болтов в зависимости от того, что удобнее. Добавьте держатель для 9-вольтовой батарейки и не забудьте стабилизатор напряжения питания для уменьшения этого напряжения до 5 В.
Выполнение устройства на макетной плате
Нет сомнения, что вы уже поняли, что макетные платы очень удобны в качестве самого быстрого способа установки некоторых компонентов и выполнения соединений, но расположение проводников заставляет вас устанавливать компоненты в конфигурации, которая интуитивно не представляется удобной. Таким образом, если вы тщательно сравните схему, которая предназначена для сбора на макетной плате на рис. 4.82, с упрощенной схемой, которая приведена на рис. 4.81, то обнаружите, что соединения между компонентами будут точно такими же.
Рис. 4.82. Иное, адаптированное изображение схемы кодового замка, предназначенное для того, чтобы показать, каким образом можно расположить компоненты схемы на макетной плате
Чтобы помочь это понять, я показал логические элементы, которые находятся внутри микросхем. Кроме того, чтобы уменьшить вероятность ошибки, провода для подвода напряжений питания, как и раньше, я выделил цветом. Плюс источника питания соединяется только с общей клеммой вашей клавиатуры, и чтобы с помощью плоского кабеля подать напряжение питания на микросхемы вы должны нажать на кнопку «*».
Следует заметить, что выводы кнопок клавиатуры «неправильных» цифр кода закорочены между собой. Это создает некоторое неудобство, если вы захотите изменить кодовую комбинацию в будущем. Я предлагаю возможность для «улучшения» этой части схемы, которая предполагает выделение отдельного проводника, идущего от контакта каждой кнопки на вашей клавиатуре к остальным компонентам схемы на макетной плате, и выполнение необходимой коммутации с помощью перемычек уже на макетной плате, а не на клавиатуре.
Кроме того, следует обратить ваше внимание на то, что если вы для проверки уровней сигналов на входах логических элементов И используете мультиметр и коснетесь пальцем пробника мультиметра при выполнении этой операции, то этого может оказаться достаточно для переключения чувствительных входов КМОП-микросхем, что в конечном счете приведет к ложной подаче положительного сигнала.
Примечание
Если вы смонтировали схему и не можете понять, почему ничего не работает, то наиболее вероятная причина заключается в том, что при наборе кода вы забыли, что надо удерживать кнопку «*» нажатой
Одна небольшая деталь.
Интерфейс компьютера
В старых моделях компьютеров использовался относительно большой выключатель на задней поверхности корпуса системного блока компьютера, который крепился на тяжелой металлической коробке внутри компьютера, преобразующей напряжение домашней электросети в напряжения, необходимые для компьютера.
У большинства современных компьютеров конструкция несколько иная; вы оставляете компьютер подключенным к сетевой розетке, а затем касаетесь маленькой кнопки на корпусе (если это система Windows) или на клавиатуре (если это система Mac), которые посылают низковольтный импульс на вашу материнскую плату. Это идеально с нашей точки зрения, поскольку мы не хотим связываться с высоким напряжением. Но даже не помышляйте о вскрытии металлической коробки с вентилятором, который в ней установлен, потому что в этой коробке находится блок питания компьютера. Просто обратите внимание на провод, который следует от выключателя питания компьютера к небольшому разъему на материнской плате (обычно в нем содержатся две жилы, если это компьютер Windows).
Чтобы проверить, что вы нашли именно его, сначала надо убедиться, что ваш компьютер отключен от сети, затем выполнить заземление своего тела (это связано с тем, что компьютеры содержат КМОП-микросхемы, которые чувствительны к воздействию статического электричества) и очень осторожно разрезать одну из двух жил этого провода. Теперь подключите ваш компьютер к сети и попробуйте включить его выключателем. Если ничего не произойдет, тогда, скорее всего, вы перерезали именно тот провод. Хотя даже, если вы разрезали и не тот провод, то все равно это наверняка не позволит вашему компьютеру выполнить загрузку, а это именно то, что вам и нужно. Следовательно, вы можете использовать такой провод в любом случае. Следует отметить, что мы не собираемся делать так, чтобы на этот провод попадало какое-либо напряжение. Мы всего лишь собираемся использовать реле в качестве дополнительного выключателя для восстановления соединения по жиле, которую вы разрезали.
У вас не будет проблем, если вы все выполняете с холодным рассудком и находясь в твердой памяти, а также будете сосредоточены только на этом единственном проводе, который все запускает. Найдите в Интернете руководство по эксплуатации вашего компьютера, если вы на самом деле считаете, что сделали ошибку.
После того как вы нашли нужный провод и отрезали одну из его жил, надо снова отключить компьютер от сетевой розетки и оставить его в таком состоянии при выполнении следующих шагов. Найдите то место, где провод подключается к вашей материнской плате. Обычно в этом месте находится небольшой разъем, который можно отсоединять. Прежде всего, нужно заметить это место для того, чтобы потом можно было снова его включить точно таким же образом, а затем отсоединить при выполнении следующей пары пунктов данной процедуры.
Удалите изоляцию с двух концов провода, который вы только что разрезали, и припаяйте дополнительный кусок двухжильного провода так, как это показано на рис. 4.83, с использованием термоусадочной трубки для защиты паяных соединений. (Это очень важно!)
Рис. 4.83. Кодовый замок может быть подключен к стандартному настольному компьютеру путем разрезания одной жилы провода, идущего от выключателя питания компьютера к материнской плате, припаивания дополнительных соединительных проводов и изоляции паяных соединений с помощью термоусадочной трубки
Протяните новый отрезок провода к реле с самоудерживанием, убедившись, что вы присоединяете его к паре контактов реле, которые находятся в замкнутом состоянии, когда на него подается напряжение питания, т. е. когда кодовый замок будет в состоянии отключения блокировки компьютера. Вы же не хотите сделать ошибку снятия блокировки с вашего компьютера, когда вы думаете, что на самом деле блокируете его, и наоборот.
Снова подсоедините разъем, который вы отсоединили от материнской платы, подключите компьютер к сети и попробуйте его включить. Если ничего не случилось, то, возможно, вы все сделали правильно! Теперь введите секретный код на вашей клавиатуре кодового замка (при этом следует удерживать нажатой кнопку «*», чтобы обеспечивать подачу питания на все элементы замка) и постарайтесь услышать щелчок, когда сработает реле.
Теперь попробуйте нажать выключатель питания на системном блоке компьютера — все должно работать.
Улучшения
При завершении любого проекта всегда есть что-то, что можно сделать еще лучше.
Чтобы сделать устройство более защищенным, можете отвинтить несколько винтов, которые крепят крышку системного блока компьютера, и заменить их винтами с защитой от проникновения. Нужно проверить все источники в Интернете по запросу «tamper-proof screws» (винты с защитой от проникновения), например, на сайте http://www.mcmaster.com.
Естественно вам может также потребоваться специальный инструмент, чтобы можно было установить эти винты (или снять их, если система безопасности окажется неисправной по какой-либо причине).
Другим улучшением мог бы быть дополнительный таймер 555, который будет активизироваться кнопкой «*», а также подавать напряжение питания на все остальные ИС кодового замка, допустим, в течение ограниченного периода времени, например 30 сек, предоставляя возможность снять блокировку компьютера только в течение этого времени. Это позволит избежать необходимости в удержании кнопки «*» при вводе пароля, снимающего блокировку компьютера, таймер может подавать напряжение на все остальные микросхемы, поскольку они не потребляют слишком большой ток.
Я эту возможность исключил, чтобы не усложнять устройство.
Если для вас секретность норма жизни, то есть еще одно возможное улучшение — это переход к паролю из 4 цифр. Кроме всего прочего в микросхеме 74HC08 имеется еще один неиспользуемый логический элемент И. Вы могли бы добавить его в цепь уже используемых элементов и подключить к еще одной кнопке по вашему выбору.
Теперь еще одно улучшение, которое будет заключаться в способе изменения пароля без отпаивания одних и припаивания других проводов. Вы можете использовать миниатюрные многоконтактные колодки гнезд, которые я предлагал использовать в устройстве пульсирующей светодиодной мигалки (см. эксперимент 14). Это позволит вам отключать концы ваших проводов от клавиатуры.
А для тех, кто является абсолютным, законченным, тотальным параноиком, что готов сделать схему такой, что ввод неправильного пароля будет включать мощное реле, которое будет пропускать мощный ток через ваше ОЗУ, расплавляя его и посылая мощный импульс через магнитную катушку, установленную рядом с жестким диском, для мгновенного превращения всех данных на нем в электронный мусор (рис. 4.84).
Рис. 4.84. Для тех, кто является абсолютным, законченным, полным параноиком: система расплавления или саморазрушения, управляемая секретным паролем, предоставляет улучшенную защиту от кражи данных или проникновения следователей Американской ассоциации звукозаписи, задающих назойливые вопросы о скачивании файлов
На самом деле, действительно, если вы хотите защитить информацию, то физическое разрушение имеет большие преимущества по сравнению с удалением данных с помощью программного обеспечения. Оно быстрее, его труднее остановить и оно имеет тенденцию дойти до конца. Поэтому, если к вам в дом заявятся из Американской ассоциации звукозаписи (RIAA — Recording Industry Association of America) и попросят включить ваш компьютер, чтобы поискать нелегальные файлы, то вам надо «случайно» дать неправильный пароль снятия блокировки компьютера, а потом сесть и подождать появления едкого запаха плавящейся изоляции.
Разумеется, если вы выберете этот вариант изменений схемы, то я определенно не беру на себя ответственность за последствия.
Если говорить более реально, то в принципе не существует такой системы, которая полностью безопасна. Ценность устройства аппаратной блокировки заключается в том, что если кто-то взломает его (например, определив каким-образом можно отвинтить винты с защитой от взлома или просто выломав вашу клавиатуру из корпуса компьютера ножницами по металлу), то, по меньшей мере, вы будете знать, что что-то случилось — особенно, если сделаете небольшие метки краской на головках винтов и будете следить за тем, чтобы они оставались совмещенными. Для сравнения, если вы будете использовать программу защиты с вводом пароля, и кто-то ее взломает, то вы даже можете и не узнать, что ваша система была взломана.
Эксперимент 21. ИГРА С РАВНЫМИ ШАНСАМИ НА ПОБЕДУ
Следующее устройство должно дать нам возможность проникнуть глубже в концепцию обратной связи, когда выходной сигнал возвращается назад для воздействия на входной сигнал, в данном случае блокируя его. Это небольшое устройство, но достаточно интересное, и его принцип будет полезен вам в будущем.
Вам понадобятся:
1. Микросхема 74HC32, содержащая четыре двухвходовых элемента ИЛИ. Количество — 1 шт.
2. Таймер 555. Количество — 2 шт.
3. Однополюсный двухпозиционный переключатель. Количество — 1 шт.
4. Однополюсные однопозиционные кнопки без фиксации. Количество — 2 шт.
5. Резисторы различного номинала.
6. Стабилизированный источник питания на 5 В, такой же как и ранее.
Задача
На шоу-викторине «Своя игра» («Jeopardy» на американском ТВ) конкурсанты соревнуются, отвечая на вопросы. Первый человек, который нажимает кнопку ответа, автоматически блокирует других участников, поэтому их кнопки становятся неактивными.
Как мы можем сделать схему, которая будет делать то же самое?
Если вы выполните поиск в Интернете, то найдете несколько сайтов любителей электроники, где другие любители предлагают схемы, которые работают таким же образом, но они упускают некоторые вещи, которые я считаю необходимыми. Подход, который я намереваюсь здесь использовать, гораздо проще, и разработан более детально. Он проще, поскольку в нем используется микросхема с очень ограниченными возможностями счета, но более детально разработан, поскольку он включает в себя «управление ведущего викторины», что дает возможность организовать более реалистичную игру Я предлагаю некоторые начальные идеи для версии игры, в которой принимают участие два человека. После разработки этой идеи я покажу, как устройство может быть расширено до версии с четырьмя и более игроками.
Концептуальный эксперимент
Я хочу показать, каким образом устройство такого типа вырастает из идеи и заканчивается готовым вариантом. Начиная с шагов по разработке схемы, я надеюсь увлечь вас разработкой в будущем своих собственных идей, которые гораздо более ценны, чем простое повторение того, что сделал кто-то другой. Поэтому присоединяйтесь к выполнению концептуального эксперимента, имея в виду поиск собственного пути от проблемы к решению.
Прежде всего, рассмотрим базовую концепцию: два человека имеют две кнопки, и тот, кто нажимает кнопку первым, блокирует кнопку другого. Я всегда обнаруживал, что мне очень помогает визуализация такого рода вещей, если я изображаю упрощенную структуру устройства, поэтому я начну именно с этого.
На рис. 4.85 сигнал от каждой кнопки проходит через компонент, который я назову «блокиратором кнопки» и которой включается другой кнопкой, управляемой другим пользователем. Однако пока что у меня нет полной уверенности в том, что блокиратор кнопки можно сделать и как он будет работать.
Рис. 4.85. Базовая концепция устройства создания игровой викторины заключается в том, что одна кнопка по сигналу обратной связи должна отключать выход другой кнопки. В этот момент способ, с помощью которого можно было сделать работающую схему блокиратора кнопок, пока еще не понятен
В настоящее время я озабочен тем, чтобы определить здесь возможные проблемы. Если я хочу распространить эту игру на трех участников, то это сильно усложнит задачу, поскольку каждый игрок должен будет активировать блокираторы кнопок двух других соперников. На рис. 4.86 приведена эта ситуация.
Рис. 4.86. Концепция викторины становится более сложной, когда добавляется дополнительная кнопка. Теперь каждая кнопка должна блокироваться двумя другими кнопками. Если добавляется четвертая кнопка, то цепь становится слишком сложной. Это должно быть лучшим решением
А если у меня четыре игрока, то ситуация будет еще более запутанной. В любой момент я вижу степень сложности задачи и поэтому считаю лучшим путем этот.
Хотя здесь имеется еще и другая проблема. После того как игрок убрал палец с кнопки, кнопки других игроков снова будут разблокированы. Поэтому мне нужна защелка для фиксации (запоминания) сигнала, идущей от кнопки первого игрока, и продолжения блокирования других игроков.
Это теперь кажется даже более сложным. Но подождите минутку, если у меня есть защелка, которая дает возможность выигравшему игроку снять палец со своей кнопки, то я не должен заботиться о том, чтобы какая-либо еще кнопка должна быть нажата, включая кнопку выигравшего игрока. Как только сигнал будет защелкнут, все кнопки должны быть заблокированы. Это делает ситуацию существенно более простой. Теперь я могу подвести итог последовательности событий.
1. Первый игрок нажимает свою кнопку.
2. Этот сигнал защелкивается (фиксируется).
3. Зафиксированный сигнал возвращается в начало схемы и блокирует все кнопки.
Новая структурная схема, демонстрирующая это, приведена на рис. 4.87.
Рис. 4.87. Если после блокиратора кнопки добавить защелку, то она позволит сохранить один входной сигнал, а затем блокировать входы всех кнопок. Это существенно упрощает принцип работы устройства
Теперь конфигурация является модульной и может быть расширена на практически любое количество игроков — для этого нужно только добавить больше модулей. Хотя здесь упущено что-то очень важное: переключатель сброса для возврата системы в исходное состояние после того, как у игроков истекло время для нажатия своих кнопок и определения победителя. Кроме того, необходимо средство для предотвращения слишком раннего нажатия кнопки до того, как ведущий викторины закончит задавать вопрос. Вероятно можно скомбинировать эти функции с использованием всего лишь одного переключателя, который будет находиться под управлением ведущего.
В положении «Сброс» переключатель может возвратить систему в исходное состояние и отключить питание с кнопок. В положение «Игра» переключатель будет продолжать удерживать систему в исходном состоянии и обеспечит подачу питания на кнопки.
Соответствующая структурная схема показана на рис. 4.88.
Рис. 4.88. Переключатель ведущего викторины в исходном состоянии системы должен активизировать кнопки для начала игры, а затем после регистрации ответов на вопрос выполнять сброс системы в исходное состояние
Чтобы минимизировать количество линий и прямоугольников на схеме, вернулся немного назад, т. е. к демонстрации схемы игры только для двух игроков, но эта идея легко может быть расширена.
Теперь я должен перейти к применению логики в схеме. Способ, который я использовал при ее изображении, заключается в следующем — после появления выходного сигнала на левой защелке сигнал поступает на «блокираторы кнопок», он также может попасть и на другую половину схемы с помощью провода (в направлении против указанного на нем стрелками), поскольку выходные провода соединены между собой. Другими словами, если светодиод, расположенный с левой стороны схемы, загорается, то светодиод с правой стороны может загореться тоже. Что же нужно сделать, чтобы этого не случилось?
Понятно, для блокировки тока, который может пройти по выходным проводам, я могу добавить диоды, но у меня есть более изящное решение. Я добавлю логический элемент ИЛИ, поскольку входы элемента электрически отделены друг от друга. Это показано на рис. 4.89.
Рис. 4.89. Для предотвращения попадания выходного сигнала с одной защелки на выход другой выходные сигналы защелок могут быть объединены с помощью логического элемента ИЛИ
Обычно логические элементы ИЛИ имеют только два входа. Будет ли это мешать добавлению новых игроков? Нет, поскольку вы можете купить логический элемент ИЛИ, который содержит восемь входов. Если на один из входов будет поступать сигнал высокого уровня, то на выходе также будет сигнал высокого уровня. Когда количество игроков будет меньше восьми, то неиспользуемые входы можно закоротить на землю и игнорировать их.
Снова взглянем на схему, приведенную на рис. 4.89, чтобы получить более четкое представление о том, что должен представлять собой блок, который я назвал «блокиратор кнопки».
Я думаю, что это должен быть другой логический элемент. О нем можно сказать так: «Если имеется только один сигнал, поступающий на него от кнопки, то его необходимо пропустить. Но если при этом появится второй сигнал с логического элемента ИЛИ, то сигнал с кнопки пройти не должен».
Это описание звучит аналогично описанию логического элемента И-НЕ, но прежде чем выбрать микросхему, я должен решить, что должна из себя представлять защелка. Я мог бы купить стандартный триггер, который переходит в состояние «включено», если на один из его входов поступает определенный сигнал, или в состояние «выключено», если сигнал приходит на другой вход. Проблема состоит в том, что обычно микросхемы триггеров, как правило, обладают бóльшим количеством функций, чем необходимы для такой простой схемы, как эта. Поэтому я снова собираюсь использовать таймер 555 в режиме триггера (бистабильном режиме). Для него потребуется выполнить всего лишь несколько подсоединений, он работает очень просто и на его выходе имеется достаточно мощный сигнал. Есть только одна небольшая проблема, которая заключается в том, что для его работы ему нужен сигнал низкого логического уровня, который должен быть подан на вывод запуска, чтобы создать на выходе сигнал высокого уровня. Но я думаю, что с этим нам удастся справиться.
Итак, в конечном счете, мы получили истинную простейшую схему, которая показана на рис. 4.90. Я хочу показать выводы 555 таймера в их правильном положении, поэтому я должен несколько переместить компоненты, чтобы снизить количество пересечений проводов, но вы можете видеть, что логически основная идея одна и та же.
Рис. 4.90. Теперь основная идея схемы для викторины сокращена до необходимого уровня, установлены определенные компоненты с совместимыми входными и выходными сигналами
Перед тем как вы попытаетесь выполнить монтаж этой схемы, просмотрите еще раз теоретическую часть, которая ее касается, поскольку это последняя возможность для того, чтобы проверить отсутствие каких-либо ошибок. Следует иметь в виду одну очень важную вещь — таймеру 555 необходим входной сигнал низкого логического уровня на его выводе «Запуск» для того, чтобы на выходе сформировать выходной сигнал, поэтому, когда игрок нажимает кнопку, эта кнопка должна выдавать в схему сигнал именно низкого логического уровня. Это может быть не совсем понятно, поэтому, чтобы разобраться в работе схемы, я изобразил эту ситуацию графически с использованием трех схем, которые на рис. 4.91 (ЦВ-рис. 4.91) иллюстрируют три этапа работы схемы устройства.
На первом этапе ведущий викторины задает вопрос и выполняет переключение своим переключателем вправо (см. рис. 4.91, а, ЦВ-рис. 4.91, а), чтобы подать сигнал низкого логического уровня (минус источника питания) на кнопки двух игроков. До тех пор, пока никто из них не нажимает кнопки, подтягивающие резисторы поддерживают высокий логический уровень сигнала на правых входах элементов ИЛИ — OR2 и OR3. Любой исправный логический элемент ИЛИ имеет на выходе сигнал высокого логического уровня, если хотя бы на одном его входе присутствует сигнал высокого уровня, поэтому элементы OR2 и OR3 будут поддерживать на выводах «Запуск» (выводы 2) двух таймеров 555 высокий логический уровень. На выходах таймеров (выводы 3) остаются сигналы низкого логического уровня и пока что ничего не происходит.
На втором этапе левый игрок нажимает свою кнопку (см. рис. 4.91, б, ЦВ-рис. 4.91, б). Теперь на входах элемента OR2 присутствуют два сигнала низкого логического уровня, поэтому на выходе тоже будет низкий логический уровень. Но микросхема IC1 пока еще никак не реагирует.
На третьем этапе, который позднее второго этапа всего лишь на микросекунду, микросхема IC1, получив сигнал низкого логического уровня на выводе «Запуск» (см. ЦВ-рис. 4.91, в), формирует выходной сигнал высокого уровня на выводе 3, зажигая при этом верхний по схеме светодиод. Следует напомнить, что таймер 555 работает в бистабильном режиме (режиме триггера), поэтому, переключившись, он немедленно фиксируется в этом состоянии. Одновременно с этим его выходной сигнал высокого логического уровня подается по цепи обратной связи на правый по схеме вход логического элемента OR1. Поскольку OR1 это элемент ИЛИ, то для него достаточно, чтобы только один его вход имел высокий логический уровень, для того чтобы на выходе получился сигнал высокого уровня, который в данной схеме возвращается по цепи обратной связи на входы элементов OR2 и OR3. Теперь, поскольку на всех входах этих элементов имеются сигналы высокого логического уровня, то на их выходах тоже появляются сигналы высокого уровня и остаются в этом состоянии вне зависимости от последующих нажатий кнопок.
Рис. 4.91. Эти три схемы показывают распространение сигналов высокого и низкого уровней (показаны соответственно красным и синим цветом) в схеме, предназначенной для викторины, при нажатии кнопки
Таким образом, на входах и выходах логических элементов OR2 и OR3 теперь имеются сигналы высокого уровня и микросхемы IC1 и IC2 не могут быть переключены в другое состояние. Но микросхема IC1 остается заблокированной в состоянии «включено», что заставляет светиться светодиод.
Имеется только один способ для изменения состояния микросхемы IC1 — это перевод переключателя S1 в другое, левое по схеме, положение, которое может выполнять ведущий викторины. Такое переключение приводит к подаче сигнала низкого логического уровня на входы сброса обоих таймеров. В результате выходы таймеров становятся низкого логического уровня, светодиод гаснет и схема возвращается в исходное состояние, которое было перед запуском. Выполнив сброс, ведущий викторины может задать другой вопрос, но кнопки игроков не будут активированы до тех пор, пока ведущий не переключит переключатель S1 вправо.
Есть только одна ситуация, которую я еще не исследовал: что будет, если оба игрока нажмут свои кнопки абсолютно одновременно? В мире цифровой электроники это практически невероятное событие. Даже разницы в микросекундах будет достаточно, чтобы схема сработала и успела заблокировать вторую кнопку.
Но, если каким-либо образом кнопки все же будут нажаты в один и тот же момент, то оба таймера должны сработать и должны загореться оба светодиода, показывая, что произошла ничья. Если вы чувствуете некоторую неопределенность при определении действий, с помощью которых схему с участием двух игроков можно модифицировать для добавления новых игроков, то я привел упрощенную схему для трех игроков, которая показана на рис. 4.92.
Рис. 4.92. Схема с двумя игроками может быть легко расширена до версии с тремя игроками, как это показано здесь, при условии, что первый логический элемент ИЛИ может управлять тремя входами
Выполнение устройства на макетной плате
Теперь наступило время создания схемы, которая для упрощения выполнения монтажа была бы максимально близка к компоновке соединений на макетной плате. Эта схема показана на рис. 4.93, а реальное размещение компонентов на макетной плате на рис. 4.94.
Рис. 4.93. Применение истинной схемы, предназначенной для монтажа на макетной плате, неизбежно приводит к расположению проводов, которое интуитивно менее очевидно и кажется более сложным. Тем не менее все подключения те же самые, что и ранее
Рис. 4.94. Схема викторины, реализованная на макетной плате, чтобы протестировать идею перед ее полномасштабным выполнением
Поскольку я использовал только один тип логических элементов, т. е. элементы ИЛИ; их у меня всего лишь три, и поэтому мне нужна всего лишь одна логическая микросхема 74HC32, которая на самом деле содержит четыре двухвходовых элемента ИЛИ. (Я заземлил входы четвертого элемента).
Два элемента ИЛИ с левой стороны имеют те же самые функции, что элементы OR2 и OR3 в моей ранее приведенной схеме (см. рис. 4.90), а элемент ИЛИ внизу справа будет работать в качестве элемента OR1, получая входные сигналы с выходов (вывода 3) каждого таймера 555. Если у вас имеются все компоненты, то вы достаточно быстро можете выполнить весь монтаж и протестировать готовое устройство.
Вы можете заметить, что в схеме я сделал всего лишь одно изменение.
Между выводом 2 и общим проводом (землей) был добавлен конденсатор с емкостью 0,01 мкФ. Зачем? Поскольку, когда я тестировал схему без конденсаторов, то заметил, что иногда один или два таймера 555 будут срабатывать даже после простого переключения переключателя S1, в то время, когда никто из игроков свою кнопку не нажимал.
Это сначала изумило меня. Каким образом таймеры переключались без всяких действий кого-либо? Может быть они реагировали на «дребезг» контактов переключателя ведущего викторины. Конечно, все было решено простым добавлением конденсаторов небольшой емкости. Они также могут немного замедлять отклик таймеров 555, делая его ступенчатым, но это совершенно неважно, чтобы влиять на ситуацию, поскольку рефлексы человека значительно медленнее.
Что же касается кнопок, то наличие у них «дребезга» не играет никакой роли, поскольку каждый таймер сам себя блокирует сразу же после первого импульса и игнорирует любые другие изменения, которые возникают после него.
Вы можете поэкспериментировать, выполнив схему с отсоединенными конденсаторами 0,01 мкФ и переключая переключатель S1 несколько десятков раз. Если у вас будет качественный переключатель, то, возможно, вы и не заметите никаких проблем. Если же у вас переключатель низкого качества, то вы сможете заметить некоторое количество «ложных срабатываний». В следующем эксперименте я собираюсь более подробно обсудить «дребезг контактов», и каким образом от него можно избавиться.
Улучшения
После того как вы собрали схему на макетной плате и собираетесь выполнить постоянно действующую модель, я предполагаю, что вы расширите ее таким образом, чтобы в викторине могли бы участвовать, по меньшей мере, четыре игрока. Это потребует использования логических элементов ИЛИ, которые в состоянии получать сигналы с четырех входов. Очевидным выбором будет микросхема 74HC4078, поскольку она позволяет подключить до 8 игроков. Нужно просто не забыть подсоединить все неиспользуемые входы к общему проводу («земле»).
В качестве альтернативы вы можете использовать пару микросхем 74HC32, если они у вас уже есть и вы не хотите связываться с заказом микросхем 74HC4078, то вы можете объединить вместе три элемента внутри одной микросхемы 74HC32, которые после этого будут работать как один элемент ИЛИ с четырьмя входами. Посмотрите на простую логическую схему на рис. 4.95, на которой показаны три элемента ИЛИ, и учтите, что выход каждого элемента ИЛИ будет переходить в состояние высокого логического уровня, если хотя бы один из входов будет иметь высокий уровень.
Рис. 4.95. Хотя элемент ИЛИ с четырьмя входами серийно не изготавливается, его выполняемую функцию можно реализовать соединением трех двухвходовых элементов ИЛИ с двумя входами
Пока вы думаете над этим, посмотрите, как вы можете использовать входы и выход трех элементов И в той же самой конфигурации.
Для игры четырех игроков вам, естественно, потребуется два дополнительных таймера 555 и еще два светодиода, а также две кнопки.
Что касается создания схемы для четырех игроков, то ее разработку я собираюсь поручить вам. Начните с рисования упрощенного варианта, показывая только логические символы. Затем преобразуйте схему для компоновки на макетной плате. В данном случае имеется только один совет: карандаш, бумага и резинка, на мой взгляд, дадут возможность получить результат гораздо быстрее, чем специальная программа для разработки схем или какая-либо графическая программа.
Эксперимент 22. ПЕРЕКЛЮЧЕНИЕ И ДРЕБЕЗГ
В предыдущем эксперименте я упоминал, что «дребезг контактов» кнопок в схеме не должен быть проблемой, поскольку кнопки активируют таймеры 555, которые применяются в бистабильном режиме (режиме триггера). Как только таймер получает первый сигнал, он моментально переключается в другое состояние и остается в нем, игнорируя любые дополнительные помехи, которые генерируются схемой. Итак, можем ли мы устранить дребезг контактов переключателя или кнопки, используя триггер? И поскольку некоторые микросхемы в серии 74HCxx могут иметь в своем составе триггер, можем ли мы его использовать?
Ответы будут «да» и «да», хотя это не так-то легко сделать, как кажется.
Вам понадобятся:
1. Логическая микросхема 74HC02, содержащая 4 двухвходовых логических элемента ИЛИ-НЕ. Логическая микросхема 74HC00, содержащая 4 двухвходовых логических элемента И-НЕ. Количество — по 1 шт. каждой микросхемы.
2. Однополюсный двухпозиционный переключатель. Количество — 1 шт.
3. Светодиоды с низким потреблением тока. Количество — 2 шт.
4. Резисторы с сопротивлением 10 кОм и 1 кОм. Количество — по 2 шт. каждого номинала.
Выполните монтаж компонентов на вашей макетной плате в соответствии со схемой, которая показана на рис. 4.96. Когда вы подаете напряжение питания (с помощью стабилизированного источника питания напряжением 5 В), должен загореться один из светодиодов.
Рис. 4.96. Простая схема для тестирования поведения двух элементов ИЛИ-НЕ, которые подключены, как элементарный триггер, сохраняющий свое состояние после завершения действия входного сигнала
Теперь я хочу сделать нечто странное. Пожалуйста, отсоедините однополюсный двухпозиционный переключатель, отделив провод, который подключает плюс источника питания к полюсу переключателя, а также вытяните конец провода из макетной платы. Когда вы сделаете это, то будете немного удивлены, что светодиод останется гореть.
Вставьте провод обратно в макетную плату, переключите переключатель и первый светодиод должен погаснуть, в то время как загорится другой. Теперь опять извлеките провод, и светодиод будет продолжать гореть.
Далее следуют вопросы, которые предназначены для самостоятельной проработки.
• Триггер требует только начальный импульс.
• После этого триггер игнорирует состояния на входе.
Как это работает
Два логических элемента ИЛИ-НЕ или два элемента И-НЕ могут функционировать в режиме триггера.
• Используйте элементы ИЛИ-НЕ, когда у вас на полюс переключателя поступает сигнал высокого логического уровня.
• Используйте элемент И-НЕ, когда у вас на полюс переключателя поступает сигнал низкого логического уровня.
В любом случае вы должны использовать двухпозиционный переключатель.
Я уже упоминал двухпозиционный переключатель три раза (на самом деле четыре раза, если учесть и это предложение!), поскольку по какой-то странной причине большинство книг, которые относятся к введению в область электроники, забывают осветить этот момент. Когда я начинал изучать электронику, я чуть не сошел с ума пытаясь понять каким образом два логических элемента ИЛИ-НЕ или И-НЕ могли бы устранить дребезг контактов простой однополюсной двухпозиционной кнопки — до тех пор, пока не понял, что этого они не могут. Причина заключается в том, что когда в схему подается напряжение питания, элементам ИЛИ-НЕ (или И-НЕ) нужно указать каково должно быть их начальное состояние. Они требуют исходной определенности, которая задается переключателем, который, в свою очередь, может быть в одном или в другом состоянии. Поэтому переключатель должен быть двухпозиционным. (Теперь я упомянул его пятый раз.)
Я применил другую упрощенную многошаговую схему, рис. 4.97 (ЦВ-рис. 4.97), чтобы показать изменения, которые происходят в двух элементах ИЛИ-НЕ, когда переключатель переключают то в одно, то в другое положение. Чтобы освежить вашу память, я добавил таблицу истинности, где показаны выходные сигналы элемента ИЛИ-НЕ для каждой комбинации сигналов на входах.
Рис. 4.97. Использование двух элементов ИЛИ-НЕ вместе с однополюсным двухпозиционным переключателем, на полюс которого подается сигнал высокого логического уровня. Показана последовательность из четырех схем, которая иллюстрирует реакцию простейшего триггера на различные входные сигналы
Предположим, что переключатель установлен в левое по схеме положение. В этом случае он передает сигнал высокого уровня на левую часть схемы, подавляя низкий логический уровень сигнала, формируемого с помощью подтягивающего резистора. Поэтому мы можем быть уверены, что на вход левого элемента ИЛИ-НЕ поступает хотя бы один сигнал высокого логического уровня. Поскольку любой сигнал высокого логического уровня на входе элемента ИЛИ-НЕ будет заставлять его выдавать на выходе сигнал низкого уровня (что следует из таблицы истинности), который, согласно схеме, передается на вход правого элемента ИЛИ-НЕ. Таким образом, в данном случае на входах элемента будут уже два сигнала низкого логического уровня, что приведет к формированию на его выходе сигнала высокого уровня. Этот сигнал поступает на вход левого элемента ИЛИ-НЕ. Таким образом, такая конфигурация элементов всегда стабильна.
Теперь перейдем к следующему, более «заумному» варианту схемы. Предположим, что подвижный контакт переключателя переместили таким образом, что полюс переключателя не соединяется ни с одним из его контактов. (Или можно предположить, что контакты переключателя находятся в состоянии «дребезга» и нет хорошего качества контакта, или же, что мы полностью отсоединили переключатель). В отсутствие высокого логического уровня сигнала на левом входе левого логического элемента ИЛИ-НЕ сигнал на его входе перейдет с высокого уровня на низкий, поскольку его будет задавать подтягивающий резистор, соединенный с общим выводом источника питания. Но правом входе этого элемента будет все еще высокий логический уровень, а этого вполне достаточно для продолжения формирования на выходе левого элемента ИЛИ-НЕ сигнала низкого логического уровня — таким образом, в состоянии схемы никаких изменений не произошло. Другими словами, схема осталась в предыдущем состоянии (она его «помнит»).
Если же теперь переключатель перевести в крайнее правое положение, т. е. подать высокий логический уровень сигнала (плюс источника питания) на правый вход правого по схеме элемента ИЛИ-НЕ, то этот элемент очень быстро распознает, что теперь на одном его входе присутствует сигнал высокого логического уровня, а поэтому он изменит свой выходной сигнал с высокого на низкий логический уровень. Этот же сигнал поступит на вход другого левого элемента ИЛИ-НЕ, который теперь будет иметь уже два входных сигнала низкого уровня, поэтому на его выходе появится сигнал высокого уровня, который вернется обратно на вход правого элемента ИЛИ-НЕ.
Таким образом, выходные сигналы двух логических элементов ИЛИ-НЕ поменялись местами. Эти состояния сначала изменились, а потом остались без изменения, даже после того как у подвижного контакта переключателя разрывается контакт. Вторая группа схем на рис. 4.98 (ЦВ-рис. 4.98) показывает, как работает похожая схема, выполненная на двух элементах И-НЕ и при подаче на полюс переключателя сигнала низкого логического уровня. Для проверки схемы вы можете воспользоваться микросхемой 74HC00, которая приведена в списке необходимых покупок для данного эксперимента.
Рис. 4.98. В этой схеме, в отличие от той, что приведена на рис. 4.97, используются логические элементы И-НЕ и изменено на противоположное подключение источника питания
Оба варианта схем являются примерами триггеров (англ. flip-flop), которые остаются в переключенном состоянии; они так называются именно потому, что под воздействием входных сигналов способны мгновенно переключаться и оставаться в новом состоянии (помнить его). Вы можете использовать эти схемы каждый раз, когда вам необходимо устранить дребезг контактов переключателя (в том случае, если это двухпозиционный переключатель).
Более сложная версия триггера — это триггер с синхронизирующим (тактовым) входом, для работы с которым сначала требуется задать определенные сигналы на каждом его входе, а затем, для изменения состояния триггера, нужно подать на соответствующий вход синхронизирующий (тактовый) импульс.
Импульс должен быть четким и определенным, что означает, что если вы подаете его от переключателя, то для этого предварительно необходимо устранить дребезг его контактов, возможно за счет использования другого триггера! Соображения такого типа заставляют меня с неохотой использовать триггеры с синхронизирующим входом в данной книге. Они добавляют новый уровень сложности, который бы я предпочел избежать во введении в мир электроники.
Что нужно, если у вас возникла необходимость устранить дребезг контактов у обычной кнопки или переключателя? Хорошо, допустим у вас есть проблема! Одно из решений это приобрести специальную микросхему, например, 4490, которая называется «ликвидатором дребезга» и содержит цифровую схему подавления. Специальный номер детали это MC14490PG от компании Semiconductor. Он содержит шесть схем для шести раздельных входов, каждая из которых содержит внутренний нагрузочный резистор. Это достаточно дорого, — более чем в 10 раз по сравнению с ценой микросхемы 74HC02, которая содержит элементы ИЛИ-НЕ. На самом деле это можно сделать проще, используя двухпозиционные переключатели, у которых можно легко устранить дребезг контактов так, как это было описано ранее.
Эксперимент 23. ИГРА В КОСТИ
Это единственный эксперимент, в котором я хочу использовать микросхему 74LSxx ТТЛ-семейства (TTL), вместо микросхемы 74HCxx КМОП-семейства (CMOS). Я это сделал по двум причинам: прежде всего, мне нужно было использовать счетчик 7492, которого нет в микросхемах серии HC. А, во-вторых, вы должны знать основные данные о серии LS-микросхем семейства ТТЛ, потому что их можно часто встретить в книгах по электронике и в Интернете.
Кроме этого, вы должны узнать об ТТЛ-микросхемах с «открытым коллектором» таких, например, как инвертор 74LS06, который может быть удобной заменой транзисторов, когда вы хотите формировать сигналы с током величиной до 40 мА.
Идея схемы для данного эксперимента достаточно проста: нужно запустить таймер 555 в автоколебательном режиме, для передачи импульсов высокой частоты на счетчик, который будет считать до 6 и включать светодиоды, расположенные так, чтобы имитировать точки на игральном кубике. (Следует заметить, что слово «die» (кубический камень) это сокращение от слова «dice» (игральные кости)). Счетчик будет работать так быстро, что точки на игральном кубике будут выглядеть светящимся расплывшимся пятном. Когда пользователь нажмет на кнопку, счетчик остановится, а светодиоды отобразят непредсказуемую комбинацию точек.
Имитации для игры в кости существуют уже достаточно давно, и, воспользовавшись Интернетом, можно купить для этого специальный набор. Но с помощью этого устройства можно сделать еще кое-что: это продемонстрировать принципы двоичного кода.
Поэтому, если вы готовы к утроенной опасности от ТТЛ-микросхем, открытым коллекторам и двоичному коду, то давайте начнем.
Вам понадобятся:
1. Микросхема 74LS92 четырехразрядного двоичного счетчика, такая, например, как SN74LS92N производства компании Texas Instruments. Количество — 1 шт., если вы хотите сделать игру с имитацией бросания одной кости, и 2 шт., если — двух костей.
2. Микросхема 74LS27 содержит три трехвходовых логических элемента ИЛИ-НЕ, например, микросхема SN74LS27N от компании Texas Instruments. Количество — 1 шт.
3. Таймер 555. Количество — 1 шт., если вы хотите сделать игру с имитацией бросания одной кости, и 2 шт., если — двух костей.
4. Импульсные диоды 1N4148 или их аналоги. Количество — 4 или 8 шт., чтобы сделать игру с бросанием двух костей.
5. Светодиоды с низким потреблением тока, диаметром 5 мм, красного цвета — 7 или 14 шт.
Знакомство с двоичной системой
Счетчик, с которым мы уже имели дело ранее, был немного необычным, поскольку его выходы были спроектированы специально для управления семисегментными цифровыми индикаторами. Обычные счетчики имеют выходы в двоичном коде.
Назначение выводов микросхемы 74LS92 приведено на рис. 4.99. Вставьте микросхему в вашу макетную плату и выполните соединения так, как это показано на рис. 4.100. Изначально таймер 555 будет выдавать на счетчик низкочастотные импульсы с частотой примерно 1 Гц. На рис. 4.101 показано реальное размещение компонентов схемы на макетной плате.
Рис. 4.99. Микросхема имеет несколько необычное назначение четырех выводов, которые не имеют каких-либо подключений внутри микросхемы и поэтому могут быть оставлены никуда не подключенными
Рис. 4.100. В этой простой схеме используется таймер 555, работающий на низкой частоте и управляющий двоичным счетчиком 74LS92, который на своих выходах отображает определенную последовательность сигналов высокого логического уровня
Рис. 4.101. Реализация на макетной плате схемы, приведенной на рис. 4.100 и предназначенной для отображения выходов счетчика 74LS92
Следует заметить, что микросхема счетчика имеет необычное расположение выводов для подачи напряжения питания — 5 и 10, вместо обычного расположения питающих выводов в углах микросхемы. Кроме того, четыре вывода этой микросхемы совершенно не используются, они не имеют внутренних подключений. Поэтому у вас нет необходимости подключать какой-либо провод к этим выводам для подачи внешнего сигнала.
Теперь мы перейдем к новому и непростому факту, который заключается в том, что микросхемы 74LSxx ТТЛ-семейства менее пригодны для наших задач, чем КМОП-микросхемы 74HCxx, которые я рекомендовал ранее для предыдущих устройств. Современные микросхемы HC-типа на логических выходах могут иметь ток 4 мА независимо от формирования сигналов высокого или низкого уровней. Более старое LS-поколение микросхем более запутано.
Она может создавать ток около 8 мА на каждом выходе, когда на нем формируется сигнал низкого логического уровня, а как только на выход выдается сигнал высокого уровня, ток будет крайне мал.
Таким образом, назовем очень важные основы.
• Выводы логической ТТЛ-микросхемы спроектированы для получения тока.
• Они не спроектированы для того, чтобы быть источником тока.
Фактически микросхема 74LS92 имеет номинальное значение выдаваемого тока менее 0,5 мА. Это вполне достаточно, когда вы всего лишь подключаете такую микросхему к другой логической микросхеме, но если вы хотите управлять внешним устройством, то она не позволит сделать что-нибудь существенное.
Правильным решением было бы «сказать» микросхеме: «Отлично, будем делать то, что ты можешь», и создать ситуацию, при которой плюс источника питания был бы подключен к нагрузочному резистору, соединенному далее с анодом светодиода, который вы хотите применить, а его катод уже подключить к выходу микросхемы. Этот «лучший» вариант показан на рис. 4.102.
Рис. 4.102. Большинство ТТЛ-микросхем, включая и те, которые относятся к поколению LS, на своих логических выходах не в состоянии быть источником тока большого значения для нагрузки (слева) и поэтому должны подключаться в качестве приемника (получателя) тока от положительного вывода источника питания (справа)
Единственная проблема заключается в том, что теперь светодиод загорается тогда, когда на выходе счетчика имеется сигнал низкого логического уровня. Но счетчик спроектирован для отображения на своем выходе импульсов высокого логического уровня. Поэтому ваш светодиод теперь будет выключен, когда он должен быть включен, и будет включен, когда он должен быть выключен.
Вы можете исправить эту ситуацию, передав сигнал через инвертор, но меня раздражает это неудобство. Мой подход к проблеме заключается в том, что, по меньшей мере, в целях демонстрации, следует использовать версию схемы подключения «Не очень хорошо» (см. рис. 4.102) и выполнить работу, подключив светодиод с очень низким потреблением тока через нагрузочный резистор с большим сопротивлением номиналом 4,7 кОм. Это дает нам возможность наблюдать выходные сигналы счетчика, не заставляя его выдавать ток бóльший его номинального значения, а если вы хотите создать более заметную и более мощную окончательную версию схемы для игры в кости, то мы вернемся к этому позднее. Согласно показаниям моего мультиметра резистор с сопротивлением 4,7 кОм пропускает ток в пределах от 0,3 до 0,4 мА, который является практически максимальным для данного счетчика.
Выполните монтаж вашей начальной схемы так, как это показано на рис. 4.100 и 4.101. Будьте внимательны, когда вы будете подключать провод от источника питания к микросхеме счетчика, у которого имеется нестандартное расположение выводов питания.
Таймер 555 должен работать в автоколебательном режиме с частотой, примерно равной 1 Гц. Это и будет тактовым (счетным) сигналом для нашего счетчика. Первые три двоичных выхода счетчика будут управлять включением трех светодиодов.
Счетчик будет изменять свое состояние, когда тактовый сигнал на счетном входе будет переходить из высокого логического состояния в низкое. Поэтому, когда светодиод рядом с таймером 555 гаснет, это означает, что счетчик сосчитал импульс (переключился).
Если вы посмотрите на картинку, которая возникает на выходах счетчика, достаточно долго, то возможно вам удастся разглядеть логику процесса, имея в виду, что нулевое состояние на всех выходах будет тогда, когда все светодиоды выключены, а в процессе счета счетчик будет иметь шесть различных состояний до их повторения. Эта последовательность состояний представлена в графическом виде на рис. 4.103. Если вы хотите знать, почему картинка меняется именно таким образом, то надо прочитать следующий далее разд. «Теория — Двоичная арифметика».
Рис. 4.103. Три выходных вывода счетчика 74LS92 имеют высокие логические уровни, показанные на рисунке черными кружками. Таким образом, состояние счетчика в двоичной системе будет меняться от 000 до 101
Двоичная арифметика
Правила двоичного счета это всего лишь вариация правила, которое используется в повседневных расчетах, обычно происходящих на бессознательном уровне. В десятичной системе мы считает от 0 до 9, затем добавляем 1 в следующую позицию слева (следующий разряд) и снова переходим к отсчету от 0 до 9 в крайней правой позиции. Мы повторяем эту процедуру пока не достигнем 99, затем добавляем 1 в новой позиции, чтобы получить 100, а затем продолжаем счет.
В двоичной системе мы делаем то же самое, но за исключением того, что мы ограничиваем наши возможности отсчета использованием только цифр 0 и 1. Поэтому начинаем счет с 0 в крайней правой позиции и добавим 1. Поскольку 1 для нас предельное значение, то чтобы продолжить счет мы добавляем 1 слева и снова начинаем счет с 0 в крайней правой позиции. Снова добавляем 1, а затем еще одну 1 слева, но у нас уже есть здесь 1, поэтому мы не можем выполнять отсчет в этой позиции больше. Поэтому мы переносим 1 из этой позиции в следующую позицию рядом с ней, и так продолжаем в том же духе.
В нашем случае светящийся светодиод представляет собой 1, а погасший 0; в таблице состояний на рис. 4.103 показано каким образом микросхема 74LS92 выполняет счет от 0 до 6 (в десятичной системе) или от 000 до 101 (в двоичной системе). Здесь я добавил еще одну таблицу состояний (рис. 4.104), на которой показано как счетчик с четырьмя двоичными выходами будет отображать десятичные цифры от 0 до 15 снова с использованием светодиодов, которые отображают цифры 1 и 0.
Здесь хочу задать вам два контрольных вопроса: «А сколько светодиодов нужно для представления десятичного числа 1024 в двоичной системе?», «А сколько для 1023?»
Очевидно, что двоичный код идеально походит для управления устройствами, которые состоят из логических компонентов, поскольку каждый из них может находиться либо в высоком, либо в низком логическом состоянии. Именно поэтому все цифровые компьютеры применяют двоичную арифметику и двоичное представление чисел (которые они преобразуют в десятичное представление только для удовлетворения нас).
Рис. 4.104. Шестнадцатеричный двоичный четырехразрядный счетчик будет генерировать эту последовательность состояний на своих четырех выходных выводах, поскольку он считает от 0 до 16 в десятичном представлении
Итак, вернемся назад к нашему устройству. Я хочу взять три двоичных выхода счетчика и создать изображения в виде точек на игральном кубике. Как я могу это сделать? Как теперь выясняется — достаточно легко.
Я предполагаю применить семь светодиодов, которые будут имитировать точки на кубике. Эти создаваемые изображения могут быть соотнесены с соответствующими кодовыми комбинациями счетчика и разделены на группы, которые я привел на рис. 4.105 для трех его выходов (разрядов). Первый выход (самый крайний справа) может управлять светодиодом, который находится в центре изображения игрального кубика. Второй (средний) выход может управлять еще двумя светодиодами, размещенными по диагонали. Третий вывод должен управлять сразу четырьмя светодиодами, расположенными в четырех углах кубика.
Это будет работать для изображений различных состояний кубика от 1 до 5, но не будет формировать изображение для 6 точек кубика.
Рис. 4.105. Двоичные выходы счетчика 74LS92 могут быть использованы в качестве источника питания светодиодов, имитирующих точки на игральном кубике
Чтобы все же сформировать это изображение можно воспользоваться кодовой комбинацией, соответствующей нулевому состоянию счетчика, когда на всех его выходах будут сигналы низкого логического уровня. Предположим, я все три выхода счетчика соединил с помощью трехвходового элемента ИЛИ-НЕ. Выход этого элемента будет иметь высокий логический уровень только тогда, когда все три его входа будут низкого уровня, поэтому он создаст на выходе сигнал высокого уровня, только если счетчик будет находиться в начальном, нулевом состоянии, когда на всех его выходах будут сигналы низкого логического уровня. Чтобы сформировать изображение, имитирующее 6 точек игрального кубика, я и могу воспользоваться этим.
Следует отметить, что одновременное использование микросхем поколения LS микросхем ТТЛ с КМОП-микросхемами поколения HC не относится к числу удачных решений, поскольку диапазоны изменения входных и выходных их сигналов отличаются между собой; поэтому в качестве микросхемы ИЛИ-НЕ мы возьмем микросхему 74LS27, а не 74HC27.
Теперь мы готовы для описания схемы. На рис. 4.106 все соединительные провода я выделил цветом только для того, чтобы было проще их различать. Никакого другого смысла в использовании различных цветов нет.
Рис. 4.106.На схеме показано, каким образом с помощью импульсных диодов и одного трехвходового логического элемента ИЛИ-НЕ выходы счетчика 74LS92 могут быть подключены к светодиодам, имитирующим состояния игрального кубика. Цвета проводов не несут какую-либо специальную информацию, а используются только для лучшего понимания схемы
Каждый из светодиодов подключен к общему проводу источника питания через отдельный нагрузочный резистор сопротивлением 4,7 кОм. К сожалению, это означает, что когда они формируют картинку, соответствующую числу 6, то все они должны включаться параллельно от выхода элемента НЕ-ИЛИ, что будет приводить его перегрузке. По мере возможности вам не следует оставлять изображение в этом состоянии в течение очень большого периода времени, поскольку это может привести к проблемам. Вы могли бы сделать компенсацию, увеличив сопротивление нагрузочных резисторов, или же для включения пары светодиодов использовать один нагрузочный резистор, но это сделает свечение светодиодов настолько тусклым, что его будет трудно заметить, поскольку они и так работают вблизи нижнего предельного значения по току.
Обратите внимание, каким образом я добавил четыре импульсных диода, обозначенных от D1 до D4. Когда на выходе С появится сигнал высокого логического уровня, будут загораться все четыре угловых светодиода, питание на которые будет подаваться по коричневому и по серому проводам. Но вы никогда не должны допускать обратную связь от одного выхода на другой, поэтому D4 должен защищать выход В, когда на выходе С имеется сигнал высокого логического уровня.
Поскольку теперь выходы В и С подключены друг к другу, то нам для защиты выхода С, когда выход В становится выходом высокого уровня, нужно использовать диод D2. Кроме того, поскольку выход В должен включать только угловые светодиоды, нам также потребуется D3 для прекращения свечения двух других. И мы должны защитить выход элемента ИЛИ-НЕ, когда либо на выходе С или В появляется сигнал высокого логического уровня. Это требует использования диода D1.
На рис. 4.107 показана вся схема, которую я только что описывал, но адаптированная для монтажа на макетной плате, а на рис. 4.108 собранная на плате версия, которую я спаял для испытаний. Следует заметить, что неиспользуемые логические входы микросхемы 74LS27 закорочены друг с другом и подключены к плюсу источника питания.
Рис. 4.107. При наличии нескольких дополнительных компонентов схемы на рис. 4.100 и рис. 4.106 могут быть смонтированы вместе, чтобы стать одной рабочей схемой, имитирующей игру в кости (бросание игрального кубика)
Рис. 4.108. Электронная схема игры в кости, реализованная на макетной плате, с кнопкой в верхней части для запуска и остановки счетчика, а также семью светодиодами, расположенными в нижней части платы и предназначенными для отображения состояний игрального кубика
Приведу здесь два правила.
1. При применении микросхем КМОП (CMOS) (например, микросхем поколения HC) надо их неиспользуемые логические входы подключать к минусовому выводу источника питания.
2. При применении микросхем ТТЛ (например, микросхем поколения LS) надо их неиспользуемые логические входы подключать к плюсовому выводу источника питания.
Я полагаю, что вы уже вполне получили удовольствие от наблюдения за медленным миганием, поэтому я заменил номиналы времязадающих конденсатора и резистора таймера 555, чтобы увеличить его частоту генерируемых импульсов от приблизительно 1 Гц до 50 000 Гц. Счетчик может работать и на большей частоте, чем в данном случае, но я хотел получить только лишь достаточно быстрые его переключения, что когда пользователь нажимает и отпускает кнопку, отсчет останавливался на непредсказуемом значении.
Кнопка запускает и останавливает таймер 555, подавая и отключая напряжение питания только от времязадающей цепи таймера. Это является аналогом перемешивания и выбрасывания состояний игрального кубика.
Когда счетчик работает на высокой частоте, светодиоды будут мигать так быстро, что все они сольются в один мерцающий свет. Одновременно с этим схема будет заряжать новый конденсатор емкостью 68 мкФ, который я добавил между кнопкой и общим (минусовым) выводом источника питания. Когда вы отпустите кнопку, этот конденсатор будет разряжаться через времязадающий резистор сопротивлением 1 кОм. По мере уменьшения заряда этого конденсатора, конденсатор времязадающей цепи будет заряжаться, а также разряжаться все дольше и дольше, и соответственно частота таймера 555 будет постепенно уменьшаться. Поэтому светодиодный индикатор будет мигать все медленнее и медленнее, подобно постепенной остановке барабана в игровом автомате Лас Вегаса. Это увеличивает содержание адреналина у игроков, которые могут видеть, как дисплей отсчитывает числа, которые они наверное ожидают, а индикатор все же собирается остановиться всего лишь в одном шаге от заветной цифры.
Следует отметить, что для достижения максимального эффекта кнопка должна удерживаться в течение секунды или более для того, чтобы конденсатор емкостью 68 мкФ смог полностью зарядиться до того момента, как кнопка будет отпущена.
Именно в этом случае схема выполнит ту задачу, для которой она создавалась. Но может быть схему можно улучшить? Конечно же, можно.
Улучшения
Основное, что хотелось бы улучшить — это яркость светодиодов. Чтобы усилить ток, который проходит через каждый светодиод, я мог бы добавить транзистор, но есть и более простая альтернатива — микросхема инвертора «с открытым коллектором» из семейства ТТЛ.
Я хочу использовать именно инвертор, поскольку, как я уже упоминал ранее, на выходе микросхем ТТЛ можно обеспечить гораздо больший ток, и мы можем использовать их в качестве источника. Поэтому каждый светодиод я собираюсь включать несколько другим способом и подключать их токоограничивающие резисторы к плюсовому выводу источника питания. Таким образом, эти резисторы позволяют пропускать ток большой мощности через выходы инвертора.
И большим преимуществом микросхем с «открытым коллектором» является именно то, что они спроектированы для того, чтобы обеспечить протекание тока гораздо большей величины, чем обычная логическая микросхема семейства ТТЛ. Номинальное значение этого тока составляет 40 мА для каждого вывода.
Единственный недостаток заключается в том, что он не может быть источником тока любого направления; вместо этого при высоком уровне логического выходного сигнала он ведет себя как разомкнутый переключатель. Но для данной схемы это нормально. Поэтому следующая и окончательная схема, которая приведена на рис. 4.109, включает в себя добавленную микросхему инвертора 74LS06, которая также была установлена и на макетную плату, показанную на рис. 4.110.
Рис. 4.109. Если инверторы с открытым коллектором добавляются к схеме игры в кости, то они могут зажигать светодиоды большого размера, потребляющие ток до 40 мА, но только тогда, когда светодиоды подключены с использованием втекающего в выходной каскад микросхемы тока, а не тока, вытекающего из нее
Рис. 4.110. Законченная схема с использованием инвертора с открытым коллектором для включения светодиодов стандартного размера
Я предполагаю, что вы должны отложить небольшие светодиоды с малым потреблением тока и заменить их другими нормального размера. Используя «стандартные» 5-миллиметровые светодиоды WP15031D компании Kingbright, я обнаружил, что каждый из них потребляет почти 20 мА с падением напряжения около 2 В при подключении токоограничивающего резистора номиналом 120 Ом. Поскольку каждый выходной вывод инвертора 74LS06 имеет на выходе достаточную мощность для подключения не более двух светодиодов одновременно, то это как раз то, что находится в пределах технических характеристик. Я полагаю, что если вы монтируете эту схему, то должны проверять потребление тока светодиодами по вашему выбору и подобрать резисторы в случае необходимости.
Вспомните, чтобы измерить падение напряжения на светодиоде, надо просто прикоснуться щупами вашего мультиметра к его выводам в то время, когда он светится. Чтобы измерить ток, нужно отсоединить один вывод светодиода и подключить мультиметр в режиме измерения тока в миллиамперах между контактом светодиода и контактом, к которому подключается вывод светодиода.
Для получения действительно яркой индикации вы можете взять несколько светодиодов с диаметром 1 см (рис. 4.111). Проверьте их технические характеристики, и вы должны обнаружить, что многие из них не потребляют большую мощность, чем светодиоды диаметром 5 мм. Однако вне зависимости от типа используемых светодиодов не следует забывать подключать их таким образом, чтобы их катоды были присоединены к инвертору, а их аноды к резисторам, подключенным к плюсу источника питания.
Рис. 4.111. Микросхема инвертора с открытым коллектором в электронной схеме игры в кости имеет достаточную мощность для зажигания белых светодиодов с диаметром 1 см, которые потребляют ток порядка 20 мА каждый при падении напряжения на них 2 В. В этой окончательной версии светодиоды встроены в углубления, просверленные с обратной стороны листа из поликарбоната толщиной 1/2'' (около 13 мм), который был обработан плоскошлифовальной ручной машинкой для создания хорошего рассеивающего эффекта. Это устройство имитирует игру с двумя кубиками
Одна последняя деталь. К данной версии схемы мне пришлось добавить два резистора с сопротивлением 10 кОм. Вы видите почему? Диоды от D1 до D4 предусмотрены, чтобы передавать положительное напряжение к инвертору, когда это нужно, но они предохраняют входы инвертора от части отрицательного напряжения питания, когда на выходе счетчика будет сигнал низкого логического уровня. Эти входы инвертора требуют подтягивающих резисторов, чтобы предотвратить их «плавание» и образование ошибочных результатов.
Окончательные улучшения я оставляю на ваше усмотрение.
Наиболее очевидным улучшением, которое вы можете реализовать, будет добавление еще одной схемы, имитирующей игру в кости, поскольку многие игры требуют применения именно двух кубиков.
Микросхема 74LS27 внутри корпуса имеет пару запасных трехвходовых элементов ИЛИ-НЕ, один из которых вы можете использовать, но при этом понадобится дополнительный таймер 555, который будет работать с существенно отличающейся частотой для обеспечения случайного выбора, а также для запуска счетчика секунд.
После того как вы соберете вашу электронную схему игры в кости и запустите ее, вы можете захотеть проверить работу случайности выбора того или иного состояния кубика. Поскольку импульсы таймера 555 имеют одинаковую длительность, то имеются равные шансы выпадения любого состояния; но чем дольше вы будете держать кнопку «Пуск» нажатой, тем больше ваши шансы случайным образом остановить процесс счета. Каждому, кто будет применять электронную схему игры в кости, нужно сказать, что «хорошенько потрясти» (перемешать) кости в течение целой секунды является обязательным.
Конечно, я мог бы смоделировать бросание игрального кубика гораздо проще, написав несколько строк программного кода для генерирования чисел на экране компьютера, но даже красиво подобранное изображение на экране не может создавать тот же эффект, который создается хорошо выполненным устройством.
На рис. 4.111 показано устройство с использованием светодиодов диаметром 1 см белого цвета, установленных для усиления эффекта в обработанный шлифмашинкой корпус из поликарбоната.
Больше всего я получаю удовлетворение от использования простых микросхем специального назначения, чтобы продемонстрировать двоичную арифметику, которая лежит в основе функционирования каждого компьютера.
Эксперимент 24. ЗАВЕРШЕННАЯ ОХРАННАЯ СИГНАЛИЗАЦИЯ
Теперь давайте представим, как мы могли бы применить сведения из этой главы книги для обновления схемы сигнализации, которая была изменена в эксперименте 15. Для того чтобы освежить ваши знания о некоторых функциях охранной сигнализации, вам, возможно, потребуется просмотреть главы 2 и 3.
Улучшение 1. Задержка активации
(постановка на охрану)
Самым большим недостатком в охранной сигнализации было то, что как только она активировалась, она немедленно была готова реагировать на сигнал, полученный от датчиков, установленных на окнах и дверях. Вам нужна функция задержки активации, чтобы дать вам шанс выйти из здания до того, как система сама себя не поставит на охрану. Эту функцию в состоянии обеспечить таймер 555, который возможно должен быть соединен вместе с реле.
Питание сигнализации должно проходить через контакты реле, которое является нормально замкнутым. Когда вы нажмете кнопку на таймере, то он на реле будет посылать положительный импульс длительностью 30 сек, удерживая реле в разомкнутом состоянии в течение этого времени. Таймер и кнопку вы можете установить в свой небольшой корпус. После нажатия кнопки вы должны быть готовы покинуть помещение. 12 В источника питания постоянного напряжения к системе охранной сигнализации проходит через корпус, в котором находится реле задержки. В течение 30 сек таймер 555 не будет давать системе вставать на охрану, а затем установит ее в состояние, в котором она будет способна сработать.
Улучшение 2. Клавиатура деактивации системы
Сейчас это сделать намного проще. Вместо переключателя S1, размещенного на корпусе охранной сигнализации (он показан на рис. 3.110), вы можете подключить реле с самофиксацией и использовать клавиатуру для установки и сброса реле точно таким же способом, как и в кодовом замке в эксперименте 20.
Вы должны будете проложить три дополнительных провода от реле, корпуса сигнализации, на клавиатуру (один должен подавать сигнал на катушку «включения» реле, другой должен подавать напряжение питания на катушку для «отключения», а третий должен быть общим проводом заземления). Для питания электроники, связанной с клавиатурой, вы можете использовать либо батарейку с напряжением 9 В, либо проложить четвертый дополнительный провод от корпуса охранной сигнализации, чтобы подать положительное напряжение питания на логические микросхемы, имея в виду, что стабилизатор напряжения, подключенный к некоторой точке, должен снижать напряжение 12 В до напряжения 5 В, которое в сигнализации используется для питания микросхем. Поскольку электронные элементы потребляют сравнительно небольшую мощность, преобразование напряжения с 12 до 5 В должно быть осуществлено с помощью стабилизатора напряжения.
С этой дополнительной функцией вы можете использовать систему сигнализации следующим образом.
1. Нажмите кнопку с символом «#» на клавиатуре, чтобы переключить реле с самофиксацией в состояние «включено», так что оно подаст напряжение питания в корпус охранной сигнализации, которая в данный момент на охрану не установлена.
2. Если вы хотите покинуть дом, то нажмите на кнопку временной задержки, которая даст вам 30 сек, за которые вы сможете это сделать.
3. Если сигнализация установлена на охрану, то чтобы ее деактивировать, с клавиатуры введите секретный код, переключив реле с самофиксацией в положение «выключено» и отключив напряжение питания на корпусе сигнализации.
Эти модификации настолько просты, что, мне кажется, блок-схемы, приведенной на рис. 4.112, будет вам вполне достаточно.
Рис. 4.112. Эта блок-схема показывает относительное расположение старых и новых компонентов. Кнопка временного отключения напряжения питания (которая дает возможность покинуть дом до самостоятельной установки охранной сигнализации на охрану) находится между источником питания и всей остальной схемой. Реле с самофиксацией заменяет однополюсный двухпозиционный переключатель в предыдущей версии схемы охранной сигнализации. Транзистор и реле с самофиксацией, подключенные к герконовым датчикам, которые установлены на дверях и окнах, останутся без изменения. Новая схема задержки добавлена между реле с самофиксацией и устройством звуковой сигнализации. Кнопка тестирования устройства подключена к реле с самоблокировкой точно так же, как она была подключена ранее двухполюсным двухпозиционным переключателем
Я не думаю, что вам потребуется предложить какую-либо другую схему. Единственное изменение, которое вы должны будете сделать к существующей системе охранной сигнализации, заключается в замене одного из переключателей «Вкл.»/«Выкл.» на реле с фиксацией.
Но здесь имеется еще одно улучшение, которое очевидно необходимо для того, чтобы вы могли вернуться обратно в дом без срабатывания системы охранной сигнализации.
Улучшение 3. Задержка перед деактивацией системы
Обычно охранные сигнализации имеют и другую функцию задержки. Когда вы открываете дверь, возвращаясь в здание, и срабатывает сигнализация, у вас есть 30 сек для ее отключения, до того, как она включит звуковую сигнализацию (сигнал тревоги).
Как мы можем внедрить эту функцию задержки? Если я попытаюсь включить другой таймер 555 для генерирования импульса запрещения звуковой сигнализации, то он не будет работать, поскольку выход от любого транзистора или реле будет продолжать работать независимо. Реле само себя фиксирует, а транзистор может продолжать подавать напряжение до тех пор, пока кто-то оставляет дверь открытой. Если любой из сигналов активирует таймер в моностабильном режиме, то импульс от таймера не будет прекращаться и будет подавлять сигнал тревоги.
Я думаю, что то, что я должен сделать для создания задержки, это использовать резистор и конденсатор. Я подам на них напряжение через существующее реле, потому что я могу быть уверен, что они получат полное напряжение источника питания, начиная с нуля. Постепенно конденсатор будет накапливать напряжение — но я не могу подключить его напрямую к устройству звуковой сигнализации, поскольку оно будет постепенно увеличивать мощность по мере того, как напряжение возрастает.
Я должен добавить такое устройство, которое должно будет переключиться, чтобы подать полное напряжение, когда входное напряжение превысит определенное значение. Чтобы сделать это, надо использовать таймер 555, который будет подключен в бистабильном режиме. Этот вид изменений обычно называют «клудж»[10], поскольку он не является элегантным, использует слишком много компонентов и не использует их надлежащим образом. Что мне действительно нужно, так это компаратор, но я не оставил места для его обсуждения. Поэтому, используя знания, которыми вы уже в настоящий момент обладаете, на рис. 4.113 представлена схема, показывающая каким образом к охранной сигнализации может быть добавлена задержка, причем не слишком элегантно, но зато надежно.
Рис. 4.113. Это дополнение к исходной схеме охранной сигнализации формирует минутную задержку до включения звуковой сигнализации. Таймер 555, включенный в бистабильном режиме, получает напряжение питания от реле R1. В нижней части схемы задержки отрицательное напряжение подается на вывод сброса таймера, что на начальной стадии обеспечивает включение напряжения питания таймера 555 при запрещенном выходном сигнале. Это напряжение быстро повышается. В то время, как верхняя часть схемы задержки подает напряжение питания на триггер, который постепенно уменьшает выходное напряжение по мере того, как конденсатор емкостью 68 мкФ выравнивает свой заряд через резистор с сопротивлением 1 МОм. Когда напряжение уменьшается до 1/3 напряжения питания, на выходе таймера формируется сигнал высокого логического уровня и включается устройство звуковой сигнализации. Если в любой момент до этого напряжение питания в цепи прерывается, то реле выключается, конденсатор постепенно разряжается и звуковая сигнализация отключается
Единственная проблема заключается в том, что если вы включаете таймер в бистабильном режиме, то существует шанс где-то 50 на 50, что таймер запустится самостоятельно с формированием сигнала низкого или высокого уровня на выходе. Поэтому мне нужно затянуть низкое напряжение на выводе сброса (чтобы запустить таймер с задержанным выходом) и постепенно дать ему перейти в положительное состояние (чтобы затем он смог сформировать выходной сигнал). Одновременно я хочу выполнить пуск с использованием высокого уровня напряжения на выводе триггера, а затем постепенно понижать его до тех пор, пока оно не станет менее 1/3 напряжения источника питания и не переключит выходной сигнал.
Таким образом, здесь имеется две схемы, осуществляющие временной отсчет. Одна из них для вывода сброса работает быстрее, чем другая, которая подключена к выводу запуска триггера, поэтому в тот момент, когда таймер сработает, сброс не прекратит формирование выходного сигнала.
На схеме (см. рис. 4.113) показаны компоненты, которые будут делать это. Конденсатор емкостью 10 мкФ начинает с разряженного состояния, но затем будет заряжаться через резистор с сопротивлением 10 кОм пару секунд. Таймер теперь будет готов переключиться, т. е. изменить свое состояние. Но конденсатор емкостью 68 мкФ будет вначале иметь высокий уровень напряжения (поскольку он подключен к плюсу питания) и пройдет целая минута, чтобы он с помощью резистора с сопротивлением 1 МОм уменьшил напряжение до 1/3 напряжения питания.
С этого момента запускающее напряжение будет достаточно низким, чтобы сработал триггер таймера 555. Сигнал на выходе таймера при этом станет высокого логического уровня и таким образом запитает схему звуковой сигнализации.
Вы без особых проблем можете вставить этот модуль небольшой задержки в ваш корпус устройства охранной сигнализации между выходом реле и входом устройства звуковой сигнализации. И, если вы захотите отрегулировать время задержки, то надо использовать резисторы сопротивлением больше или меньше 1 МОм.
Резюме
Если вы добавили эти три улучшения, ваша охранная сигнализация будет иметь все функции, которые были перечислены в моем исходном пожелании. Конечно, если бы я проектировал ее с нуля с учетом всей информации, которая была добавлена в этой главе книги, то она выглядела бы более элегантной. Но приведенные изменения схемы не повлекли за собой каких-либо губительных изменений для нашего исходного проекта, и его цель, в конце концов, была достигнута.