Делители с переменным коэфициентом деления
В цифровой и микропроцессорной технике часто требуются делители с произвольным коэффициентом деления. При этом желательно, чтобы коэффициент деления можно было оперативно менять. На рис. 1.24 изображена схема делителя с программируемым коэффициентом деления на основе реверсивного счетчика К555ИЕ7. Для хранения коэффициента деления используется специальный четырехразрядный параллельный регистр, обозначенный на схеме как DDL Коэффициент деления такого делителя может изменяться от 1 до 15.
Работа счетчика начинается с установки всех его разрядов в ноль при помощи входа R. Обратите внимание на то, что в микросхеме К555ИЕ7 используется прямой, а не инверсный вход сброса. Поэтому сброс происходит при подаче на этот вход сигнала логической единицы. После того, как счетчик сброшен, для нормальной работы счетчика на вход R должен быть подан нулевой уровень.
Входной сигнал поступает на вход «-1». Поэтому счетчик работает в режиме обратного счета. Поэтому первый же входной импульс после сброса счетчика вызовет сигнал переполнения на выходе «≤0». Этот импульс поступит на вход . В результате в счетчик будет записано двоичное число с выхода регистра DDL Это число соответствует выбранному коэффициенту деления. Допустим, что в регистр DD1 мы записали число 10 (10102). Тогда именно это число будет записано в разряды счетчика DD2.
Каждый последующий входной импульс будет уменьшать содержимое счетчика на единицу. Так будет продолжаться до тех пор, пока содержимое счетчика снова не уменьшится до нуля. Для этого потребуется как раз 10 тактовых импульсов. По приходу одиннадцатого импульса на выходе «<0» снова появится сигнал переполнения, и в счетчик будет опять записано число десять из регистра DD1.
Описанный процесс будет повторяться все время, пока приходят входные импульсы. Период следования импульсов на выходе «<0», а, значит, и на выходе всей схемы в нашем случае будет в 11 раз больше периода входных сигналов. А частота выходных импульсов будет, соответственно, в 11 раз меньше. То есть наш счетчик будет делить на 11. Записывая в регистр DD1 различные значения, можно легко менять коэффициент деления описанной схемы. Забегая вперед скажу, что запись числа в регистр коэффициента деления может производить микропроцессор. В этом случае мы можем создать делитель, управляемый от микропроцессора.
Таймеры
Подобную схему можно использовать также для формирования различных интервалов времени. Если на вход «-1» подавать тактовые импульсы фиксированной частоты, а в качестве управляющего входа использовать вход R, то на выходе мы можем получать импульс заданной длительности. И эту длительность можно программировать, записывая в регистр D1 различные коэффициенты.
Это полезно запомнить.
Схемы, предназначенные для формирования различных интервалов времени, называются таймерами.
Обычно одни и те же цифровые элементы при определенном способе включения могут с успехом выступать в любой из трех описанных выше ролей: либо как делители, либо как счетчики, либо как таймеры.
Существуют и специализированные микросхемы-таймеры. Например, микросхема К580ВИ53 — это универсальный программируемый трехканальный счетчик-таймер. Такая микросхема имеет множество режимов работы, которые должны выбираться программным путем при помощи микропроцессора.
Современные микроконтроллеры, или, как их еще называют, однокристальные микроЭВМ,обычно всегда содержат в своем составе один или несколько встроенных таймеров-счетчиков.
Пример.
Микроконтроллеры серии AVR имеют от одного (в микросхеме AT90S1200) до четырех (в микросхеме ATmega128) встроенных таймеров/счетчиков. Это позволяет при формировании временных интервалов обойтись без внешних таймеров.