Счетчики и дешифраторы

Электроника начинающим

Привет, дорогие читатели  🙂

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

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

Ну опять-же как считает… Это вовсе не означает что у него есть какое-то там цифровое табло, на котором отображаются цифры (впрочем и такие устройства, конечно-же, тоже бывают).
Здесь картина немного другая… Если более подробно, то происходит подсчет примерно так: есть какое-то устройство, на вход которого поступают импульсы, и оно нам оповещает: «сейчас только что прошел 5-й (3-й, 4-й, 8-й, 10-й, не важно) импульс!»

В общем представьте себе микросхему, у которой  один вход и несколько выходов, обозначенные скажем 1-2-4-8. И работает она так:
* Пришел первый  импульс на вход,  на выходе «1» появляется логическая «1»,
* Пришел второй импульс на выход, на выходе «2» появилась логическая «1»,
* Поступил 4 импульс- на выходе «4» появилась единица,
ну и при приходе 8-го импульса на входе- на выходе «8» появилась логическая единичка.

Как все это дело работает? А вот тут, друзья мои, хочу сначала сообщить Вам что для изучения материала, Вам надо-бы сначала почитать статью про триггеры, а иначе далее будет совершенно непонятно.  🙂

Ах, Вы ее уже прочли? Ну тогда поехали дальше… Итак

Принцип работы логических счетчиков

Я не зря упомянул чуть ранее про триггеры: ведь триггер, по сути, это и есть самый простой счетчик на «2». Да, это так! Ведь он перекидывает свое состояние при приходе импульса на управляющем входе.
На самом деле: первый импульс пришел- на выходе появилась «1», второй импульс пришел- триггер перекинулся на «0», третий импульс пришел- снова «1». Таким образом: «1» появляется только при каждом втором импульсе после начального.

А что будет если взять несколько триггеров и соединить их последовательно? А давайте попробуем! Я накидал тут вот такую схему:

регистр сдвига

Для увеличения- кликайте по ней

У нас есть генератор импульсов. Его устройство нас в данный момент не интересует, я его просто обозначил в виде «черного ящика» с аббревиатурой ГИ. Можно, к примеру, использовать мультивибратор на микросхеме, в данный момент нам это не важно.

Далее: 4 D-триггера, включенные последовательно- вход каждого из них подключен к выходу предыдущего. Причем прошу обратить внимание- вход первого триггера я соединил с инверсным выходом последнего. Зачем я так сделал? Да все просто- нам необходимо чтобы на входе D триггера в момент запуска схемы была логическая «1», а иначе он просто не откроется.

В принципе эту цепь можно было-бы и и исключить, но для того чтобы схема заработала, нам в любом случае нужна будет логическая единица на входе триггера D1. Так что тут два варианта- или закольцовываем триггерную цепочку, или ставим кнопку без фиксации на входе D1, через которую будем подавать логическую «1». Можно даже обозвать ее «пуск».

Теперь давайте посмотрим что у нас произойдет когда мы эту схему включим.
Генератор начнет выдавать импульсы (частота нас не интересует). С приходом первого импульса, триггер D1 сменит свое состояние и на выходе 1 появится логическая единица. На остальных триггерах ничего не произойдет.
С приходом второго импульса- триггер D2 изменит свое состояние, на выходе 2 появится логическая единица, на остальных триггерах также ничего не изменится.
И так далее, пока очередь не дойдет до последнего триггера (это будет 4-тый импульс с генератора)- когда на на его прямом выходе появится логическая «1», на инверсном состояние сменится на логический «0».
Таким образом на входе первого триггера после 4-го импульса будет присутствовать логический ноль, и начиная с 5-го импульса, на выходах 1-4 значение логических уровней начнет уже меняться на логические «0».

Для понятности давайте представим себе весь этот процесс в виде таблицы состояний

Импульсы
с генератора
Вых 1 Вых 2 Вых 3 Вых 4
1 1 0 0 0
2 1 1 0 0
3 1 1 1 0
4 1 1 1 1
5 0 1 1 1
6 0 0 1 1
7 0 0 0 1
8 0 0 0 0

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

Ну дальше- как говорится, дело техники: можно и количество триггеров в этой цепочке изменить, и сделать так, чтобы, к примеру выходы были с 5-го триггера и с 10-го (ну или еще какого-то).

Чуть ранее я не зря предлагал представить себе микросхему с выходами 1-2-4-8. Это реальная микруха, называется она К155ИЕ5 (ТТЛ-логика, ну это так, для общего ознакомления). Чуть подробнее:

Микросхема К155ИЕ5 содержит счетный триггер (вход С1) и делитель на восемь (вход С2) образованный тремя соединенными последовательно триггерами.
Такой счетчик работает с коэффициентом счета К (модулем), кратным степени 2.

К155ИЕ5

То есть на его выходах 1, 2, 4, 8  изменение логического состояния происходит при колличестве входящих импульсов, кратным 2 (это видно по диаграмме справа).
Счетчик имеет выходы принудительной установки в 0.Триггеры срабатывают по срезу входного импульса (по переходу из 1 в 0). Если соединить последовательно все четыре триггера как на рисунке , то получится счетчик по модулю 24=16. Максимальное хранимое число при полном заполнении его единицами равно N=24-1=15=(111)2.
При различной комбинации выходов- входов можно получить счетчики с другим коэффициентом пересчета:
К155ИЕ5

При таком включении мы получим счетчик на 10 (их еще называют «декадный»).

 

Для счетчика с К=10 нужны четыре триггера (так как 23<10<24) должен иметь десять устойчивых состояний N==0,1…,8,9. В том такте, когда он должен был перейти в одиннадцатое устойчивое состояние (N=10), его необходимо сбросить в исходное нулевое состояние. Для такого счётчика  введены цепи обратной связи с выходов счетчика, соответствующих числу 10 (т. е. 2 и 8) на входы установки счетчика в 0 (вход R). В самом начале 11-го состояния (число 10) на обоих входах элемента И микросхемы появляются логические 1, вырабатывающие сигнал сброс всех триггеров счетчика в нулевое состояние.
 
Указанный выше пример показывает, что при комбинации различных входов— выходов (или нескольких микросхем) можно получить счетчики практически с любым коэффициентом пересчета.
Тут, думаю, у многих может возникнуть вполне логичный вопрос: ну хорошо, есть у нас устройство, которое сигнализирует нам о том, что пришел 10-й импульс на вход, а нельзя-ли сделать так, чтобы все было в более понятной нам форме (в десятичной системе исчисления)? Ну то есть- пришел первый импульс- на выходе 1 появилась единица, пришел второй- на выходе 2 появилась единица и так далее? Или нужно обязательно целую кучу последовательных триггеров устанавливать?
Ну нет, конечно-же  🙂 Для этой функции существуют другие микросхемы, так называемые

Дешифраторы

Вот, к примеру микросхема К155ИД3.
К155ИД3
У нее 4 входа, предназначенные как раз под работу со счетчиком К155ИЕ5, да они даже и подписаны именно так: 1,2,4,8.А вот выходов целых 16 штук, на которых будет поочередно появляться логическая «1». Довольно крупная микросхемка, между прочим, выглядит она вот так:
К155ИД3
 А давайте я Вам даже представлю схему светового устройства «бегущий огонь» на основе этой статьи?
бегущий огонь, схема
Здесь все нам уже прекрасно знакомо: генератор импульсов, далее счетчик, и потом дешифратор на 16 выходов.
Как она работает? Да вот так? генератор выдает импульсы. Затем эти импульсы считает счетчик. Ну а потом дешифратор уже показывает какой импульс по счету пришел: первый- загорелся первый светодиод, второй- второй загорелся, ну и так до 16-ти. Затем опять все по кругу.
Ах, да, совсем забыл… 😳  Выходы у микрухи К155ИД3 инверсные- на схеме они кружочком помечены. Ну то есть у неё на выходах будут постоянные логические единицы, а появление выходов будут обозначаться «нулем».
Ну Вы поняли- первый импульс прошел- на первом выходе «0» появился, второй- на втором и так далее. Поэтому на каждый выход пришлось еще одну микросхему- инвертор добавить.
Все микросхемы здесь из серии К155 на основе ТТЛ-логики, то есть для питания потребуется стабилизированный источник питания +5V. В качестве генератора можно использовать схему и на другой микрухе, например более распространенной К155ЛА3, по вот этой схеме.
На этом разрешите закончить, надеюсь все было предельно просто и понятно  🙂