Шифраторы и дешифраторы немного теории

Для кодирования и декодирования передаваемой информации в цифровой электронике применяются шифраторы и дешифраторы.

Шифратором называют цифровое устройство, которое преобразует сигналы, поступающие на один из его входов, в различные кодовые комбинации на выходах (параллельно-двоичный код), каждая из которых соответствует только одному выбранному входу.

Шифраторы и дешифраторы, работа и устройство

Для лучшего понимания работы шифратора рассмотрим простейшую схему, собранную на логических элементах.

Если контакты микропереключателей SB1 — SB15 разомкнуты, на входы элементов "И-НЕ" поступает уровень логической единицы. Поэтому на выходах всех элементов установится уровень логического нуля, являющийся двоичным кодом шестнадцатеричной цифры 0.

Если нажмем переключатель SB6, то нулевой уровень поступит на входы DD1, DD3 и и на их выходах установится "1", т. е. на выходе шифратора возникнет двоичный код 1010, соответствующий шестнадцатеричному символу А. Шифратор обозначается на принципиальной схеме, так как показано на самом верхнем рисунке.

Дешифратор работает с точностью до наоборот. Он преобразуют параллельный двоичный код в десятичный или шестнадцатиричный. Его графическое обозначение на схеме также очень похоже.

обозначение дешифратора на схемах

Чаще всего в электронных устройствах используются дешифраторы в интегральном исполнении имеющие буквенное обозначение ИД (например, Дешифратор К155ИД1 предназначен для управления индикаторной лампой тлеющего разряда с холодным катодом (ИН-4, ИН-12, ИН14, ИН-16), имеет четыре адресных входа и десять выходов с открытым коллектором, к которым непосредственно подключаются катоды индикаторных ламп. Допустимый ток нагрузки не более 7 мА. Напряжение на закрытом выходе должно быть не более 60 В.

В качестве дешифраторов могут выступать и другие элементы цифровой электроники. Так, дешифратором может служить программируемое постоянное запоминающее устройство (ППЗУ).

Дешифратор типа К155ИД3 имеет 4 адресных входа # 1,2,4,8, парочку входов стробирования Е1,Е2 и целых шестнадцать выходов 0-15.

Если на входах стробирования логический ноль 0, то на выходе, номер которого соответствует двоичному коду ноль, будет тоже логический ноль, а на всех остальных выходах уровень логической единицы

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

В отдельных случаях функции шифраторов и дешифраторов осуществляют мультиплексоры и демультиплексоры - электронные переключатели сигналов.

Мультиплексорэто электронный аналог многопозиционного переключателя, используемый для коммутации одной из входных линий к единственному выходу. Если такой мультиплексор установить в определенное положение, то из всех входных сигналов будет выбран только один и он поступит на выходной контакт.

Самый простой мультиплексор построенный на логических элементахМежду механическим переключателем и рассмотренным сейчас его электронным аналогом имеется одно существенноеразличие. При переключениимеханического переключателя к выходному контакту будут по очереди подключаться все промежуточные, в то время как в его электронном аналоге подключение входных линий к выходной может происходить в произвольном порядке.

В мультиплексоре имеется как минимум два вида функциональных входов: информационные и адресные (управляющие). На информационные входы поступают коммутируемые сигналы, на адресные — двоичные коды, каждый из которых соответствует только одному из входов, выбираемому для подключения к выходу мультиплексора.

Для распределения двоичной информации, поступающей по одной входной линии на несколько выходных, используются демультиплексор.

Он имеет один информационный вход и n информационных выходов и m управляющих входов. При подаче кода на управляющие входы уровень сигнала, присутствующего на его входе, появляется на выходе, номер которого соответствует поданному коду. Они, как и мультиплексоры, управляются двоичными кодами, поступающими на адресные входы. В качестве демультиплексоров используются некоторые типы дешифраторов (например, К155ИД4).

Перед сборкой устройств, описанных далее, рекомендуем ознакомиться с цоколевкой интегральных схем в справочниках по электронике

Теперь перейдем к практическому знакомству с описанными элементами
Цифровое реле времени

Это устройство может найти практическое применение везде, где необходимо на определенное время подключать к цепи переменного тока какую-либо активную нагрузку (лампу фотоувеличителя, подогреватель воды в аквариуме и т.п.). Оно представляет собой реле времени с гальванической развязкой исполняющей цепи.

После включения питания устройство устанавливается в начальное состояние. На выходе элемента DD7.2 присутствует уровень 0, который запрещает прохождение импульсов с тактового генератора (DD1. 1 — DD1.3) на триггер управления нагрузкой (DD6.2, DD6.3). На выходе элемента DD6.3 этого триггера — уровень 1, который устанавливает в начальное состояние счетчики DD2, DD3.

Установив необходимую выдержку времени переключателями SA1, SA2, нажимают кнопку «Пуск» (SB1). Отрицательный импульс с выхода одновибратора DD7.3, DD7.4 устанавливает уровень 1 на выходе элемента DD7.2, разрешающий прохождение сигнала через DD6.1.

Первый же отрицательный импульс с выхода тактового генератора формирует на выходе элемента DD6.1 уровень 0, который вызывает появление уровня 0 на выходе элемента DD6.3. Выходной ток этого элемента включает излучатель оптопары VU1, а последний — фототиристор оптопары. В свою очередь фототиристор открывает тиристор VS1, коммутирующий цепь нагрузки (лампа EL1).

Одновременно уровень 0 с выхода элемента DD6.3 разрешает работу счетчиков, выходы которых подключены к управляющим входам мультиплексоров DD4, DD5.

Когда двоичный код счетчиков становится эквивалентен номеру выбранного переключателями SB1 и SB2 входа, на выходах мультиплексоров появляется уровень 1, формирующий на выходе элемента DD6.4 уровень 0. Он вызывает появление уровня 0 на выходе элемента DD7.2. Сигнал с этого выхода запрещает прохождение импульсов с тактового генератора на элемент DD6.2 и формирует на выходе элемента DD6.3 уровень 1. Излучатель оптопары VU1 выключается, вызывая выключение тиристора VS1 и нагрузки. Устройство возвращается в исходное состояние. Тактовую частоту генератора выбирают в зависимости от конкретного применения устройства изменением емкости конденсатора C1. В определенных пределах частота подстраивается резистором R1.

Схема электронного секундомера

Независимо от ваших увлечений и интересов вам всегда пригодится таймер-секундомер. Он может быть полезен при работе на кухне, в занятиях фотографией или спортом.

Предлагаемое далее устройство позволяет отслеживать интервалы времени до 9999 с с дискретностью в 1 с или может использоваться в качестве секундомера с максимальным временем счета 999,9 с с точностью до 0,1 с.

В устройстве можно выделить следующие функциональные узлы: узел клавиатуры на элементах DD1— DD3, DD4.1, формирующий двоичный код, соответствующий десятичному номеру нажатой кнопки; узел, управляющий записью двоичных кодов, которые поступают из узла клавиатуры в соответствующие счетчики на элементах DD5, DD6, DD10, DD11; счетный узел на элементах DD12 — DD15, использующийся для отсчета интервалов времени и выдачи соответствующих ему кодов в узел индикации; узел индикации на элементах DD18 — DD21, DD4.2, DD16 и знакосинтезирующих светодиодных индикаторах HG1 — HG4,

преобразующий цифровые коды в визуальное отображение десятичных знаков и управляющий подачей звукового сигнала; узел управления режимом на элементах DD7—DD9.

В связи со сложностью схемы работу устройства рассмотрим поэтапно. При включении питания устройства начинает работать тактовый генератор узла клавиатуры (DD1).

Генератор интервалов времени (DD7.1 — DD7.3, DD17.1) заторможен уровнем 0 на входе элемента DD7.3, поступающим с выхода элемента DD8.3, образующего совместно с элементом DD8.4 RS-триггер.

Генератор тонального сигнала заторможен уровнем 0, поступающим на вход элемента DD16.3 с выхода Q триггера DD4.2, установленного в нулевое состояние импульсом заряда конденсатора С3.

Импульсом заряда конденсатора С2 триггеры DD5.1, DD5.2 и счетчики DD12

— DD15 устанавливаются в нулевое состояние и на индикаторах высвечивается число 0000.

Время работы таймера заносится поразрядно, начиная со старшего разряда (счетчик DD15), причем выбор очередного разряда осуществляется автоматически узлом управления записью (см. рис. 41, а).

Происходит это следующим образом. Импульсы, поступающие с тактового генератора на вход счетчика опроса клавиатуры DD2, вызывают появление на его выходе четырехразрядных двоичных кодов, которые во времени проходят все возможные комбинации от 0000 до 1001. Эти коды поступают на входы управления мультиплексором DD3 и «подключают» к его выходу один из входов (0 — 9), десятичный код которого соответствует присутствующему на управляющих входах двоичному коду.

Если при этом не нажата ни одна кнопка SB1 — SB 10, т.е. на всех информационных входах мультиплексора отсутствуют уровни 0, то на его выходе установлен уровень 0, который поступает на D-вход триггера DD4.1 и по каждому тактовому сигналу, поступающему на С-вход, записывается в него. Таким образом, если все кнопки отжаты, то на выходах счетчика DD2 идет смена комбинаций кодов, а триггер DD4.1 находится в нулевом состоянии.

Теперь разберем конкретный пример подготовки таймера для отсчета интервала времени 9237 с.

При нажатии кнопки SB9, соответствующей цифре 9, уровень 1 появляется на выходе мультиплексора в момент опроса входа, к которому подключена данная кнопка. Это момент появления на выходе счетчика DD2 двоичного кода 1001 после очередного перехода напряжения тактового импульса с уровня 1 к уровню 0.

Уровень 1 с выхода мультиплексора поступает на информационный вход триггера DD4.1 и записывается в него по заднему фронту (моменту перехода напряжения тактового импульса с уровня 0 на уровень 1) этого же тактового импульса. На выходе Q триггера появляется уровень 0, который запрещает прохождение тактовых импульсов с выхода генератора на вход счетчика. Таким образом, на выходе счетчика будет зафиксирован код 1001,соответствующий десятичной цифре 9.

Счетчик будет оставаться в этом состоянии до тех пор, пока не будет отпущена кнопка SB 10. При этом на выходе мультиплексора появляется уровень 0, который по первому же заднему фронту импульса, поступающего с элемента DD7.4, будет записан в триггер. Он установится в нулевое состояние. Уровень 1 с выхода Q триггера разрешает прохождение импульсов с генератора на тактовый вход счетчика.Опрос клавиатуры возобновится и будет продолжаться до нажатия следующей кнопки.

В момент остановки счетчика DD2 его выходной код поступает одновременно и на одноименные входы счетчиков DD12 — DD15 счетного узла . В это же время положительный перепад напряжения с выхода Q триггера DD4.1 поступает на входы элементов DD11.1 — DD11.4. Уровень 1 при этом присутствует только на втором входе элемента DD11.4. Это связано с тем, что после начальной установки по включению питания на выходах Q триггеров DD5.1, DD5.2, на которых организован двухразрядный двоичный счетчик, присутствуют уровни 0, поступающие на вход дешифратора DD6. Поэтому на выходе D0 этого дешифратора присутствует уровень 0, который инвертируется элементом DD10.4. С выхода этого элемента уровень 1 поступает на вход элемента DD11.4.

При поступлении на входы элементов DD11.1 — DD11.4 положительного перепада напряжения с выхода Q триггера DD4.1 отрицательный перепад напряжения формируется только на выходе элемента DD11.4. Этот сигнал поступает на вход разрешения записи параллельной информации счетчика DD15, и по его фронту происходит запись в счетчик кода, имеющегося в данный момент времени на выходе счетчика опроса клавиатуры DD2, т.е. кода 1001. Остальные счетчики остаются в нулевом состоянии, а на цифровых индикаторах высветится десятичное число 9000.

Положительный перепад напряжения, формирующийся на выходе Q триггера DD4.1 после отпускания кнопки SB9, не только разрешает работу счетчика опроса клавиатуры, но и переводит триггер DD5.1 в единичное состояние. Тем самым устанавливается уровень 0 на выходе D1 дешифратора DD6, сигнал с которого, инвертируясь элементом DD10.3, подготавливает элемент DD11.3 к формированию импульса записи параллельного кода в счетчик DD14.

При нажатии следующей кнопки (в нашем случае SB3 — соответствующей десятичной цифре 2) на выходе счетчика опроса клавиатуры DD2 формируется код 0010, который поступает на входы счетчиков DD12 — DD15. Положительный перепад напряжения с выхода Q триггера DD4.1 формирует при этом на выходе элемента DD11.3 сигнал записи указанного кода в счетчик DD14, после чего на цифровых индикаторах будет высвечено число 9200.

Таким образом, после нажатия четырех необходимых кнопок на цифровых индикаторах высветится число 9237, соответствующее времени работы таймера.

После установки времени работы таймера нажимается кнопка SB11 «Пуск». При этом на выходе элемента DD8.3 RS-триггера устанавливается уровень 1, разрешающий работу генератора временных интервалов на элементах DD7.1 — DD7.3. Частота работы этого генератора определяется выбором одного из времязадающих резисторов R9 или R10. Выбор необходимого резистора осуществляется установкой уровня 0 на выходе соответствующего элемента (DD8.1 или DD8.2), что авто магически происходит при выборе режима работы устройства переключателем SA1.

Если устройство используется как таймер (переключатель находится в положении, показанном на схеме), то включен резистор R10, устанавливающий режим работы генератора временных интервалов с частотой 1 Гц. Одновременно этот же переключатель разрешает прохождение импульсов с выхода этого генератора на вычитающий (-1) вход счетчика DD12. Таким образом, по каждому положительному перепаду напряжения на выходе элемента DD17.1 состояние счетчика DD12 будет изменяться, причем записанное в нем число будет уменьшаться на 1. На цифровых индикаторах будет наблюдаться уменьшение записанного числа, т.е. 9236, 9235, 9234 и т.д.

В момент перехода счетчика DD12 из состояния 0000 (десятичная цифра 0) в состояние 1001 (десятичная цифра 9) на выходе <0 этого счетчика формируется отрицательный импульс . Задний фронт его (момент перехода напряжения с низкого уровня на высокий), поступая на вычитающий (-1) вход счетчика DD13, переводит последний в состояние 0010 (десятичная цифра 2), или, иначе говоря, вычитает из него единицу. Таким образом, после показаний цифрового индикатора 9230, по приходу следующих импульсов с генератора временных интервалов на вычитающий вход счетчика DD12, на нем будут высвечиваться числа 9229, 9228 и т.д. Аналогично происходит уменьшение кодов, записанных в счетчиках DD14 и DD15.

Через 9236 с счетчики будут находиться в нулевых состояниях, т. е. на индикаторах будет высвечиваться 0000. По окончании 9237-й с счетчик DD12 переходит в состояние 1001 при этом на его выходе <0 формируется импульс, переводящий счетчик DD13 в состояние 1001, который, в свою очередь, переводит в такое же состояние счетчик DD14, а он — DD15. Отрицательный импульс с выхода <0 счетчика DD15 поступает через диод VD4 на вход элемента DD8.4 RS-триггера и тактовый вход D-триггера DD4.2, включенного в режиме Г-триггера. Передний фронт этого импульса устанавливает на выходе элемента DD8.3 уровень 0, запрещающий работу генератора временных интервалов. Задний фронт этого импульса переводит триггер DD4.2 в единичное состояние, разрешая тем самым работу тонального генератора.

Таким образом, через 9237 с после нажатия кнопки SB11 «Пуск» таймер выдаст звуковой сигнал, и отсчет времени прекратится. Звуковой сигнал таймера может быть выключен только нажатием кнопки SB14. При этом триггер DD4.2 устанавливается в нулевое состояние и запрещает работу тонального генератора.

При использовании устройства в режиме секундомера (переключатель SA1 устанавливается в нижнее, по схеме, положение) к генератору временных интервалов подключается резистор R9, обусловливающий частоту генерации 10 Гц, что соответствует дискретности отсчета в 0,1 с. Одновременно разрешается прохождение импульсов с выхода генератора временных интервалов только на суммирующий вход счетчика DD12, и на цифровом индикаторе HG2 загорается сегмент h (децимальная точка), получающий питание через резистор R3. В то же время уровень 0, поступающий на вход D дешифратора DD6, вызывает появление на его выходах D0 — D3 уровней 1, запрещающих запись информации в счетчики при случайном нажатии кнопок SB1—SB10. После этого при необходимости производится обнуление счетчиков нажатием кнопки SB13 «Сброс».

Пуск секундомера осуществляется нажатием кнопки SB11 «Пуск». Импульсы с частотой следования 0,1 Гц поступают с выхода генератора временных интервалов на суммирующий вход счетчика DD12. При переходе этого счетчика из состояния 1001 (десятичное число 9) в состояние 0000 (десятичное число 0) на его выходе >9 формируется импульс, поступающий на суммирующий вход счетчика DD13. Этот импульс увеличивает код состояния счетчика на единицу. Таким образом, по каждому импульсу, поступающему с выхода генератора временных интервалов на суммирующий вход счетчика DD12, показания цифровых индикаторов будут увеличиваться на единицу, отображая с дискретностью 0,1 с время, прошедшее с момента нажатия кнопки «Пуск».

При изготовлении устройства учтите, что управлять им можно и дистанционно, подключив параллельно контактам соответствующих кнопок нормально разомкнутые контакты кнопок пульта дистанционного управления. Можно управлять им и цифровыми сигналами соответствующих уровней, подавая их в точки подключения контактов кнопок к входам цифровых элементов схемы.