Счетчики представляют собой более высокий, чем регистры, уровень сложности цифровых микросхем, имеющих внутреннюю память. Хотя в основе любого счетчика лежат те же самые триггеры, которые образуют и регистры, но в счетчиках триггеры соединены более сложными связями, в результате чего их функции - сложнее, и на их основе можно строить более сложные устройства, чем на регистрах. Точно так же, как и в случае регистров, внутренняя память счетчиков - оперативная, то есть ее содержимое сохраняется только до тех пор, пока включено питание схемы. С выключением питания память стирается, а при новом включении питания схемы содержимое памяти будет произвольным, случайным, зависящим только от конкретной микросхемы, то есть выходные сигналы счетчиков будут произвольными.
(рис 9.1) Работа 4-разрядного двоичного счетчикаКак следует из самого названия, счетчики предназначены для счета входных импульсов. То есть с приходом каждого
нового входного импульса двоичный код на выходе счетчика увеличивается (или уменьшается) на единицу
(рис. 9.1).
Срабатывать счетчик может по отрицательному фронту входного (
Счетчик может работать на увеличение выходного кода по каждому входному импульсу; это основной режим, имеющийся
во всех счетчиках, он называется режимом прямого счета. Счетчик может также работать на уменьшение выходного кода
по каждому входному импульсу; это режим обратного или
Большинство счетчиков работают в обычном двоичном коде, то есть считают от 0 до (2N–1), где N - число разрядов выходного кода счетчика. Например, 4-разрядный счетчик в режиме прямого счета будет считать от 0 (код 0000) до 15 (код 1111), а 8-разрядный - от 0 (код 0000 0000) до 255 (код 1111 1111). После максимального значения кода счетчик по следующему входному импульсу переключается опять в 0, то есть работает по кругу. Если же счет - инверсный, то счетчик считает до нуля, а дальше переходит к максимальному коду 111...1.
Имеются также
По быстродействию все счетчики делятся на три большие группы:
Принципиальные различия между этими группами проявляются только на втором уровне представления, на уровне модели с временными задержками. Причем больше всего различия эти проявляются при каскадировании счетчиков. Наибольшим быстродействием обладают синхронные счетчики, наименьшим - асинхронные счетчики, наиболее просто управляемые среди других. Каждая группа счетчиков имеет свои области применения, на которых мы и остановимся.
Асинхронные счетчики строятся из простой цепочки
Чем больше разрядов имеет счетчик, тем большее время ему требуется на полное переключение всех разрядов. Задержка переключения каждого разряда примерно равна задержке триггера, а полная задержка установления кода на выходе счетчика равна задержке одного разряда, умноженной на число разрядов счетчика. Легко заметить, что при периоде входного сигнала, меньшем полной задержки установления кода счетчика, правильный код на выходе счетчика просто не успеет установиться, поэтому такая ситуация не имеет смысла. Это накладывает жесткие ограничения на период (частоту) входного сигнала, причем увеличение, к примеру, вдвое количества разрядов счетчика автоматически уменьшает вдвое предельно допустимую частоту входного сигнала.
(рис 9.2) Временная диаграмма работы 4-разрядного асинхронного счетчикаТаким образом, если нам нужен выходной код асинхронного счетчика, то есть все его выходные сигналы (разряды)
одновременно, то должно выполняться следующее неравенство: T> Ntз,
где T - период входного сигнала, N - число разрядов счетчика, tз - время задержки одного разряда.
Надо еще учесть, что за период входного сигнала должно успеть сработать устройство (узел), на которое поступает выходной код счетчика, иначе счетчик просто не нужен; поэтому ограничение на частоту входного сигнала обычно бывает еще жестче.
В составе стандартных серий цифровых микросхем асинхронных счетчиков немного. Для примера на
рис. 9.3 приведены
три из них: 4-х разрядный
(рис 9.3) Асинхронные счетчики стандартных серийУ всех этих счетчиков управление работой очень простое, есть всего лишь входы сброса в нуль или входы установки в 9 (только у ИЕ2). Все асинхронные счетчики работают по отрицательному фронту входного сигнала С (или, что то же самое, по заднему фронту положительного входного сигнала). У всех трех счетчиков выделены две независимые части, что увеличивает возможности их применения. При объединении этих двух частей получается счетчик максимальной разрядности. Выходы счетчиков обозначают на схемах 0, 1, 2, 3, ... (как номера разрядов выходного двоичного кода) или 1, 2, 4, 8, ... (как веса каждого разряда двоичного кода).
Счетчик ИЕ2 имеет две части: один триггер (вход С1, выход 1) и три триггера (вход С2 и выходы 2, 4, 8). Таким образом,
он состоит из одноразрядного счетчика и трехразрядного счетчика. Одиночный триггер работает в обычном счетном режиме,
изменяя свое состояние по каждому
| Входы | Выходы | |||||||
|---|---|---|---|---|---|---|---|---|
С1 |
R1 |
R2 |
S1 |
S2 |
8 | 4 | 2 | 1 |
Х |
1 | 1 | 0 | X | 0 | 0 | 0 | 0 |
Х |
1 | 1 | Х |
0 | 0 | 0 | 0 | 0 |
Х |
Х |
Х |
1 | 1 | 1 | 0 | 0 | 1 |
| 1 $$\to$$ 0 | Х |
0 | X | 0 | Счет | |||
| 1 $$\to$$ 0 | 0 | Х |
0 | Х |
Счет | |||
| 1 $$\to$$ 0 | 0 | Х |
Х |
0 | Счет | |||
| 1 $$\to$$ 0 | Х |
0 | 0 | Х |
Счет | |||
Счетчик ИЕ2 имеет два входа асинхронного сброса в нуль R1 и R2, объединенных по функции И, и два входа установки
в 9 - S1 и S2, также объединенных по функции И, причем установка в 9 блокирует установку в нуль. Наличие этих входов
сброса и установки позволяет строить на базе счетчика ИЕ2
| Такт | Вых.8 | Вых.4 | Вых.2 | Вых.1 |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 2 | 0 | 0 | 1 | 0 |
| 3 | 0 | 0 | 1 | 1 |
| 4 | 0 | 1 | 0 | 0 |
| 5 | 0 | 1 | 0 | 1 |
| 6 | 0 | 1 | 1 | 0 |
| 7 | 0 | 1 | 1 | 1 |
| 8 | 1 | 0 | 0 | 0 |
| 9 | 1 | 0 | 0 | 1 |
| 10 | 0 | 0 | 0 | 0 |
Счетчик ИЕ5, точно так же как и ИЕ2, имеет две части: один триггер (одноразрядный счетчик) со входом С1 и выходом
1 и три триггера (трехразрядный счетчик) со входом С2 и выходами 2, 4, 8. Оба счетчика - двоичные, то есть первый
считает до двух, а второй - до 8. При объединении входа С2 с выходом 1 получается 4-разрядный
| Выходы | Выходы | |||||
|---|---|---|---|---|---|---|
| С1 | R1 | R2 | 8 | 4 | 2 | 1 |
Х |
1 | 1 | 0 | 0 | 0 | 0 |
| 1 $$\to$$ 0 | 0 | Х |
Счет | |||
| 1 $$\to$$ 0 | Х |
0 | Счет | |||
(рис 9.4) Объединение трех счетчиков ИЕ5 для увеличения разрядностиОбъединять счетчики ИЕ5 для увеличения разрядности (каскадировать) очень просто: нужно выход 8 предыдущего счетчика (выдающего более младшие разряды) соединить со входом С1 следующего счетчика (выдающего более старшие разряды). На рис. 9.4 показано соединение трех счетчиков ИЕ5 для получения 12-разрядного асинхронного счетчика со сбросом в нуль. Точно так же можно объединять и счетчики ИЕ2, добавляя при этом входы общей установки счетчика в код 99...9. Однако при объединении надо помнить, что добавление каждого нового разряда увеличивает общую задержку переключения полученного счетчика. Многоразрядный асинхронный счетчик может получиться неприемлемо медленным.
Счетчик ИЕ19 можно считать сдвоенным вариантом счетчика ИЕ5. Он включает в себя два идентичных независимых друг
от друга 4-разрядных асинхронных счетчика, каждый из которых имеет свой
Счетчики, входящие в ИЕ19, можно использовать самостоятельно, но можно и объединить их для получения 8-разрядного
асинхронного счетчика с выходами 1, 2, 4, 8, 16, 32, 64, 128. Для такого объединения достаточно соединить выход 8
первого счетчика со
(рис 9.5) Объединение двух счетчиков ИЕ19 для увеличения разрядностиОсновное применение асинхронных счетчиков состоит в построении всевозможных
При построении
Простейший пример такого
(рис 9.6) Делитель частоты на 10, выдающий меандрИногда возникает задача деления частоты входного сигнала в произвольное число раз (не в 10 и не в 2n, что легко обеспечивается самой структурой стандартных счетчиков). В этом случае можно организовать сброс счетчика при достижении им требуемого кода путем введения обратных связей.
(рис 9.7) Делитель частоты на 9 с обратными связямиНапример, на рис. 9.7 показан простейший
Если в числе, на которое надо делить частоту, больше двух единиц (например, 15, то есть 1111, или 13, то есть 1101), то для формирования сигнала сброса надо использовать элементы 2И, 3И или 4И, чтобы объединить все выходы, равные единице. В результате можно построить делитель входной частоты в любое число раз от 2 до 2N, где N - число разрядов используемого счетчика. Правда, при организации обратных связей надо учитывать ограничение на быстродействие счетчика. Все разряды, используемые для обратной связи, должны успеть переключиться за один период входного сигнала. Скважность выходного сигнала может принимать в данном случае самые разные значения, например, выходной сигнал может представлять собой очень короткие импульсы.
На асинхронных счетчиках можно строить также управляемые
(рис 9.8) Управляемый делитель частоты на асинхронном счетчикеВ момент переключения
Конечно, применение асинхронных счетчиков не ограничивается только
Если же включить на выходе асинхронного счетчика выходной
(рис 9.9) Включение выходного регистра для одновременного переключения разрядов выходного кодаДанная схема будет работать правильно, если период следования входных тактовых импульсов будет больше, чем время
установления всех разрядов счетчика (в нашем случае - 8-разрядного счетчика ИЕ19).
В заключение данного раздела надо отметить, что асинхронные счетчики, как и другие цифровые схемы, предъявляют требования к длительности входных сигналов. Например, не должны быть слишком короткими сигналы на тактовых входах и на входах сброса и установки. Не должны быть слишком затянутыми фронты входных сигналов. Тактовые сигналы и сигналы сброса не должны приходить со слишком малыми задержками друг относительно друга.
Синхронные (или
Управление работой синхронного счетчика гораздо сложнее, чем в случае асинхронного счетчика, а количество разрядов
синхронных счетчиков обычно не превышает четырех. Поэтому синхронные счетчики не всегда могут успешно конкурировать с
асинхронными, особенно при невысоких требованиях к быстродействию. Зато и возможностей у синхронных счетчиков, как
правило, гораздо больше, чем у асинхронных, например, они обеспечивают
Для объединения нескольких синхронных счетчиков с целью увеличения числа их разрядов (для каскадирования) используется
специальный выходной сигнал
Синхронные счетчики с асинхронным
Сигнал
Временная диаграмма 4-разрядного синхронного счетчика с асинхронным
(рис 9.10) Временная диаграмма работы синхронного счетчика с асинхронным переносомПримерами синхронных счетчиков с асинхронным переносом могут служить
(рис 9.11) Синхронные счетчики с асинхронным переносом| Выходы | Режим работы | |||
|---|---|---|---|---|
| R | -WR | +1 | -1 | |
| 1 | Х |
Х |
Х |
Сброс в нуль |
| 0 | 0 | Х |
Х |
|
| 0 | 1 | 1 | 1 | Хранение |
| 0 | 1 | 0 | 0 | Хранение |
| 0 | 1 | 0 $$\to$$ 1 | 1 | Прямой счет |
| 0 | 1 | 1 | 0 $$\to$$ 1 | Обратный счет |
Вход параллельной записи обозначается иногда на схемах также L, С, а выходы
Таблица режимов работы счетчиков ИЕ6 и ИЕ7 приведена в табл. 9.4.
После сброса счетчик начинает счет по положительным фронтам на счетных входах от нулевого кода. После параллельной
записи счет начинается от числа, записанного в счетчик. После переполнения счетчика ИЕ7 (достижения кода 1111) при прямом
счете вырабатывается
Входные сигналы счета, записи и сброса не должны быть слишком короткими. Не должен быть слишком малым временной сдвиг между сигналами на входах D1–D8 и сигналом записи как в начале импульса записи, так и в его конце (сигнал записи -WR должен начинаться после установления входного кода, а заканчиваться - до снятия входного кода).
(рис 9.12) Объединение счетчиков ИЕ7 для увеличения разрядностиОбъединение счетчиков ИЕ7 и ИЕ6 для увеличения разрядности (каскадирование) очень просто: нужно выходы
Если нужно использовать все выходные разряды многоразрядного счетчика одновременно (как единый код), то необходимо
выполнение следующего условия: T>(N – 1)*tзп+tзс,
где T - период входного сигнала, N - число объединенных микросхем счетчиков, tзп - время задержки tзс - время задержки счета (переключения выходного кода) одного счетчика.
Применение синхронных счетчиков с асинхронным
В качестве
Простейший пример 12-разрядного
(рис 9.13) Делитель частоты с коэффициентом деления, задаваемым входным кодомНа вход счетчиков подается 12-разрядный
Чтобы сформулировать условия правильной работы данного
Если частота входного сигнала - большая (к примеру, больше 10 МГц), то нормальная длительность входного сигнала
получается сама собой. Но частота входного сигнала не должна быть и слишком большой, иначе в процессе записи
счетчик пропустит один из входных импульсов или даже несколько. То есть от переднего фронта входного отрицательного
сигнала до заднего фронта следующего входного
Для решения часто встречающейся на практике задачи подсчета количества пришедших входных импульсов необходимо всего лишь объединить несколько микросхем счетчиков с целью получения требуемого числа разрядов. Например, если количество входных импульсов не превышает 255, то достаточно двух 4-разрядных счетчиков, если оно не больше 65535, то надо объединить уже четыре 4-разрядных счетчика. Так как в этом случае нас интересуют все выходные разряды одновременно, необходимо обеспечить, чтобы за период входных импульсов переключались все микросхемы счетчиков.
Обеспечить одновременность переключения всех выходных разрядов счетчика при счете входных импульсов можно,
как и в случае асинхронных счетчиков, за счет включения выходного
(рис 9.14) Включение выходного регистра для одновременного пе- реключения разрядов выходного кода Формирование пачки (группы) входных импульсов с заданным количеством импульсов - довольно распространенная
задача. Например, такое формирование необходимо при организации обмена информацией в последовательном коде. Если
в качестве преобразователя параллельного кода в последовательный используется 8-разрядный
(рис 9.15) Формирователь пачки из восьми импульсовПо сигналу "Старт" (положительный фронт) перебрасывается первый триггер, использующийся для синхронизации. По
первому положительному фронту
(рис 9.16) Временная диаграмма работы формирователя пачки им- пульсовПосле того как на Выход 1 схемы пройдут восемь отрицательных импульсов, на выходе 8 счетчика выработается единица, что приведет к сбросу в исходное нулевое состояние обоих триггеров (коротким отрицательным импульсом на выходе нижнего по рисунку элемента 2И-НЕ) и к запрету прохождения импульсов на выход. Работа формирователя возобновится после следующего сигнала "Старт".
На основе счетчиков довольно просто строить формирователи временных интервалов с длительностью, задаваемой
внешним кодом. Такие формирователи находят широкое применение, например, в различных измерительных устройствах.
Так как
При первом подходе входной стартовый импульс синхронизируется с тактовым сигналом, в результате чего выходной
импульс заданной длительности может начаться не сразу после стартового импульса, а через какое-то время, меньшее
периода
При втором подходе выходной импульс заданной длительности начинается сразу после входного сигнала, но
длительность его может отличаться от заданной на какое-то время, меньшее периода
Работа схемы начинается с подачи короткого отрицательного импульса –Старт. Он перебрасывает триггер, который
разрешает работу счетчиков снятием сигнала параллельной записи –WR. По отрицательному фронту входного сигнала
начинается положительный выходной сигнал заданной длительности. Счетчики начинают считать на уменьшение кода по
положительным фронтам
(рис 9.17) Формирователь временного интервалаЕсли входной код равен 1, то длительность выходного сигнала составит от Т до 2Т, где Т - период
Эту же самую схему вполне можно использовать в тех случаях, когда необходимо получить убывающий код от заданного числа до нуля. При этом сигнал с выхода триггера будет только внутренним сигналом схемы, а выходными сигналами схемы будут выходные разряды счетчиков.
Иногда бывает необходимо сформировать импульс требуемой длительности, но одновременно иметь не убывающий, а возрастающий код (от нуля до заданного значения). В таком случае схема получится несколько сложнее. Пример возможного решения формирователя импульса заданной длительности показан на рис. 9.18.
(рис 9.18) Формирователь импульса заданной длительности (вариант с нарастающим кодом)По сигналу "Старт" (положительный фронт) перебрасывается левый по рисунку триггер, который начинает
формировать выходной сигнал и разрешает работу счетчика (снимая сигнал сброса R). Счетчик считает на увеличение
по положительным фронтам
Если входной код равен 1, то длительность выходного сигнала составит от Т до 2Т, где Т - период тактового
сигнала генератора. Если входной код равен N, то длительность выходного сигнала будет равна от NT до (N + 1)T
в зависимости от временного сдвига между сигналом "Старт" и тактовым сигналом. В любом случае абсолютная
погрешность времени выдержки выходного сигнала не превысит периода
Счетчики также широко применяются в различных измерителях длительности входных сигналов. Для этого они отсчитывают импульсы тактового кварцевого генератора в течение длительности входного сигнала. После окончания входного сигнала в счетчике остается код, пропорциональный длительности этого сигнала. Пример практической схемы такого измерителя показан на рис. 9.19.

(рис 9.20) Измеритель длительности входного сигнала(рис 9.19) Временная диаграмма работы измерителя длительности входного сигналаРабота схемы начинается по короткому управляющему импульсу "Старт", который сбрасывает счетчик в нуль и
переводит всю схему в режим счета, разрешая прохождение сигнала с
Выходной код N измерителя связан с длительностью входного сигнала t простым соотношением t = NT,
где T - период ±Т. Поэтому для
уменьшения
Счетчики также применяются и для измерения частоты входного
Частоту входного сигнала можно измерить двумя путями: косвенным, то есть измерением периода входного сигнала
(по принципу, рассмотренному только что) и вычислением затем частоты (по формуле fвх = 1/Tвх ), или же прямым
измерением частоты. Первый метод требует вычислений с помощью компьютера или
В соответствии с этим методом необходимо сформировать временное окно с заданной длительностью tо, в течение
которого надо сосчитать количество N периодов входного сигнала Т (рис. 9.21). В этом случае будет выполняться
соотношение tо = NT или f = N/tо,
где f - это частота входного сигнала, равная 1/T. То есть частота входного сигнала пропорциональна коду N,
а коэффициент пропорциональности равен 1/tо. Если, например, выбрать tо = 1 c, то код N будет равен частоте
входного сигнала в герцах, а при tо = 1 мc код N будет равен частоте входного сигнала в килогерцах.
(рис 9.21) Измерение частоты входного сигнала прямым методомЕсли длительность временного окна - строго постоянная величина, то погрешность измерения частоты будет
определяться только погрешностью подсчета кода N. 1/N. Понятно, что для увеличения точности измерения частоты нужно
увеличивать N, то есть необходимо увеличивать длительность временного окна tо. Однако при этом автоматически
увеличивается время измерения.
(рис 9.22) Измеритель частоты входного сигнала прямым методомСхема
Еще одно широко распространенное применение счетчиков - последовательное переключение (сканирование) нескольких устройств, узлов, индикаторов, каналов передачи и т.д. То есть имеется, например, группа устройств, которые должны по тем или иным причинам работать не одновременно, а по очереди, так, что в каждый момент активным является только одно устройство, причем очередь эта замкнута в кольцо и после последнего устройства начинает работать первое. Или же имеется несколько каналов связи (входных или выходных линий), которые надо также по очереди подключать к одному выходу (при выходных каналах) или к одному входу (при входных каналах).
Во всех подобных случаях опрос, переключение, сканирование может производить счетчик с нужным числом разрядов.
Счетчик с числом разрядов n может обслуживать 2n устройств (или каналов).
В качестве первого примера рассмотрим схему переключения выходных каналов (рис. 9.23). Она последовательно, по
очереди, циклически коммутирует один входной сигнал на восемь выходов, для чего используется счетчик, тактируемый
сигналом задающего генератора, и
(рис 9.23) Схема последовательного переключения выходных каналовИспользуя данную схему, надо учитывать, что в момент переключения каналов может искажаться (обрезаться) выходной сигнал. Поэтому лучше всего обеспечить, чтобы входной сигнал приходил только тогда, когда переключение каналов не производится. Или на время передачи вообще останавливать процесс перебора каналов путем запрета прохождения импульсов с генератора на вход счетчика, а после окончания передачи снова разрешать последовательный перебор каналов.
(рис 9.24) Схема последовательного переключения входных каналовВторой пример, который мы рассмотрим, это схема, решающая обратную задачу - переключение входных каналов
(рис. 9.24). Данная схема последовательно, циклически передает один из восьми входных сигналов на выход. Как и
в предыдущем случае, перебор каналов осуществляется счетчиком, тактируемым сигналом с генератора. Непосредственно
коммутация сигналов производится
В момент переключения каналов здесь также возможно искажение (обрезание) коммутируемых сигналов. Поэтому желательно обеспечить передачу сигналов в момент, когда переключения каналов нет. Или же надо останавливать процесс перебора каналов на время приема сигнала из выбранного канала путем запрета прохождения тактовых импульсов на вход счетчика, а затем снова запускать перебор каналов.
Еще одно применение счетчиков из этой же области состоит в организации так называемой динамической индикации.
Суть динамической индикации состоит в следующем. Если используется табло из нескольких индикаторов (одиночных светодиодов, светодиодных семисегментных индикаторов, светодиодных матричных индикаторов и т.д.), то совсем не обязательно все эти индикаторы должны гореть постоянно, одновременно. Можно зажигать их по очереди, что существенно сократит потребляемый всей схемой ток питания. Например, если в каждый момент времени горит только один индикатор из имеющихся восьми, то ток потребления индикаторов сократится в восемь раз. Учитывая, что каждый светящийся светодиод требует тока порядка 1–5 мА, такой подход может дать большой выигрыш, особенно при матричных индикаторах, содержащих несколько десятков светодиодов. А инерционность человеческого глаза приводит к тому, что вспышки света с частотой больше 20 Гц воспринимаются как непрерывное свечение. Так что при достаточной частоте перебора индикаторов глазу не будет заметно последовательное их включение.
(рис 9.25) Схема динамической индикации на восьми индикаторахНа рис. 9.25 приведен пример схемы динамической индикации на восьми индикаторах. Для
Счетчики часто используют также для организации всевозможных
(рис 9.26) Схема таймера с чтением выходного кодаПример решения данной проблемы приведен на рис. 9.26. Здесь выходной код счетчика на каждом такте записывается в выходной регистр с разрешением записи ИР27. А в момент чтения кода (при положительном сигнале "Чтение") запись в регистр запрещается. В результате в течение всей длительности сигнала "Чтение" выходной код схемы будет неизменным, хотя счетчик будет продолжать считать без всяких помех, и ход часов не собьется.
Интересная особенность счетчиков ИЕ6 и ИЕ7 состоит в том, что они могут работать не только в режиме счета, но и
в режиме
Пусть, например, необходимо выдавать на вход схемы один из двух входных кодов: код со счетчика или код с регистра
(то есть требуется мультиплексирование двух кодов). Эту задачу можно решить, применяя двухканальный
(рис 9.27) Варианты мультиплексирования выходного кода счетчика с применением мультиплексора (а) и без него (б)И в заключение данного раздела мы рассмотрим две более сложные схемы, строящиеся на основе счетчиков. Это
Генерация прямоугольных импульсов - довольно часто встречающаяся задача, в частности при разработке, отладке,
тестировании электронной аппаратуры. От
Предлагаемая здесь схема генератора не претендует, конечно, на рекордные характеристики, но она вполне может
стать реальным удобным инструментом для разработчика цифровой аппаратуры, особенно если управление генератором
поручить компьютеру с установленной на нем развитой сервисной
(рис 9.28) Счетчики длительности импульса и паузы для генератора прямоугольных импульсовВ основе генератора (рис. 9.28) - два 16-разрядных счетчика, выполненных на основе микросхем ИЕ7. Один из этих
счетчиков (на рисунке внизу) отсчитывает длительность выходного импульса, другой (на рисунке вверху) - длительность
паузы. Коды длительности импульса и паузы подаются, соответственно, на входы данных верхнего и нижнего счетчиков
(эти коды могут храниться, например, в регистрах, не показанных на схеме). Счетчики импульса и паузы работают по
очереди, что определяется управляющими сигналами на их входах параллельной записи –WR, которые также запрещают
прохождение на входы -1 тактовых импульсов с помощью элементов 2И-НЕ. Эти управляющие сигналы поступают с прямого
и
В результате, когда один счетчик считает, другой находится в режиме параллельной записи и не считает. После того как считающий счетчик досчитает до нуля, он перебросит выходной триггер, который переведет этот счетчик в состояние параллельной записи, запретит поступление на его вход тактовых импульсов и разрешит считать другому счетчику. Описанная последовательность действий повторится уже для другого счетчика. И этот процесс будет повторяться до тех пор, пока разрешена генерация.
В данном случае смело можно одновременно использовать как вход –R, так и вход –S триггера, поскольку сигналы, приходящие на них, гарантированно разнесены во времени. Сигнал с прямого выхода триггера служит выходным сигналом всего генератора в целом. Разрешается генерация положительным сигналом "Разр". Когда генерация запрещена (нулевой сигнал "Разр."), триггер сброшен в нуль по входу –R и оба счетчика находятся в состоянии параллельной записи. Поэтому генератор всегда начинает работу с отработки паузы заданной длительности, а потом отрабатывает выходной импульс заданной длительности.
Сформулируем условия правильной работы данной схемы.
Во-первых, как и в случае управляемого
Во-вторых, частота
Пусть, например, мы хотим выбрать максимальную тактовую частоту 10 МГц (период ТТ = 100 нс). Посмотрим, можно ли использовать микросхемы счетчиков серии КР1533. Для счетчиков КР1533ИЕ7 задержка сигнала переноса составляет не более 18 нс. Для четырех микросхем задержка переноса составит 72 нс. Тогда на сумму задержек триггера, элемента 2И и элемента 2И-НЕ остается не более 28 нс. Следовательно, если мы возьмем эти элементы из более быстрых серий (например, КР531 или КР1531), мы легко удовлетворим этому требованию.
При величине кода импульса N длительность импульса ТИ составит (N+1) • ТТ. При величине кода паузы М длительность
паузы ТП составит (М+1) • ТТ. Период выходных импульсов ТВЫХ будет равен (M+N+2) • ТТ. Коды M и N могут принимать
значения от 0 до 65535. То есть минимальная длительность импульса и паузы равна ТТ, максимальная длительность импульса
и паузы равна 65536 ТТ, минимальная длительность периода выходного сигнала равна 2ТТ, а максимальная - 131072 ТТ.
Например, при тактовой частоте 10 МГц максимальный период выходного сигнала будет равен 13,1072 мс, а минимальный -
200 нс.
Для расширения диапазона изменения периода выходного сигнала можно применить управляемый делитель тактовой частоты.
Другой возможный путь - наращивание разрядности счетчиков - приводит к снижению максимально допустимой тактовой
частоты, так как обязательно вызывает увеличение задержек переключения счетчиков. К тому же, как правило, нет
необходимости задавать длительность периода выходного сигнала, скажем, в 1 секунду с
(рис 9.29) Схема управления и делитель частоты для генератора прямоугольных импульсов Схема управления
Левый по рисунку триггер вырабатывает сигнал разрешения генерации "Разр". В этот триггер необходимо записать единицу
для разрешения генерации или нуль для остановки генерации. Запись в триггер входного сигнала Ген./
Правый по рисунку триггер служит для организации разового запуска генератора. Переключение режима разового или
автоматического запуска производится управляющим сигналом "Раз./-Авт". При автоматическом запуске (нуль на входе
Раз./-Авт.) данный триггер не работает, он всегда находится в нулевом состоянии и дает уровень логической единицы
на своем
(рис 9.30) Режимы работы генератора импульсов: автоматический (а) и разовый (б)Асинхронность (независимость) момента прихода команды на начало передачи и сигнала задающего кварцевого генератора приводит к тому, что длительность первой паузы может оказаться на 100 нс меньше, чем она задана кодом паузы. Но это не слишком существенно, так как гораздо важнее длительность выходного импульса. Все последующие импульсы и паузы выдерживаются точно.
Таким образом, рассмотренный генератор может формировать импульсы длительностью от 100 нс с паузой между
импульсами от 100 нс. Максимально возможная длительность импульса составляет 216 • 212 • 100 нс = 26,84 с. Такой
же может быть и пауза. Правда, отношение длительности импульса к длительности паузы (или длительности паузы к
длительности импульса) не может превышать 65536. Величина периода выходного сигнала генератора может достигать 53,69 с.
Теперь рассмотрим вторую схему.
Задача измерения частоты следования входных прямоугольных импульсов также часто встречается как в чисто
цифровых, так и в аналого-цифровых системах. Как уже упоминалось, существует два традиционных метода измерения
частоты (рис. 9.31): один предполагает измерение периода TВХ путем подсчета тактовых импульсов с периодом TT
в течение TВХ и дальнейшее вычисление частоты по формуле fВХ = 1/TВХ (а), а другой прямо измеряет частоту fВХ
путем подсчета входных импульсов в течение временного окна tO (б).
1/N, где N - полученный в результате
подсчета код. Понятно, что первый метод дает хорошую точность только для низких частот fВХ (то есть для больших TВХ и соответственно больших N ). Второй метод дает хорошую точность только для больших частот fВХ или в случае
большого временного окна tO (то есть для больших N ). В первом случае для увеличения точности необходимо увеличивать
тактовую частоту, во втором - увеличивать длительность временного окна.
(рис 9.31) Методы измерения частоты: через период (а), прямой (б) и комбинированный (в)Время измерения частоты по первому методу составляет TВХ. Для второго метода оно постоянно и равно длительности
временного окна tO.
Поэтому желательно было бы соединить достоинства обоих методов, чтобы частота fВХ измерялась бы достаточно быстро
и с заданной точностью (с погрешностью, не меньшей заданной). Это возможно при использовании комбинированного метода
(рис. 9.31в). При данном методе импульсы тактовой частоты с периодом TT подсчитываются в течение М полных периодов
входного сигнала. При этом количество сосчитанных импульсов N определяет точность измерения (1/N ). Значит, необходимо обеспечить, чтобы N было достаточно большим, например, при N>100 относительная
погрешность не превысит 1%, а при N > 1000 она будет меньше 0,1%. Обеспечить достаточную величину N можно простым выбором
числа М.
Недостаток данного комбинированного метода состоит в том, что измеренное значение частоты необходимо вычислять.
Так как при этом методе выполняется равенство МTВХ = NTT, следовательно, fВХ = M/(NTT). Однако при использовании
компьютера или
(рис 9.32) Счетчики измерителя частоты входного сигналаВ основе схемы М и N ) используются после окончания измерения для
вычисления значения частоты входного сигнала.
Работа счетчиков разрешается отрицательным сигналом "–Разр." по фронту (например, положительному) входного сигнала. После окончания измерения по такому же фронту входного сигнала поступление сигналов "Изм." и "Такт" запрещается. То есть счет производится в течение целого числа периодов входного сигнала.
Выход "N достиг достаточной величины (в нашем случае -8192), и,
следовательно, можно останавливать измерение (но только по ближайшему фронту входного сигнала). Иначе говоря, код N в
конце измерения будет не менее 8192, и поэтому погрешность измерения частоты входного сигнала не превысит 1/8192 или
0,012%.
Для правильной работы схемы частота входного сигнала должна быть не более тактовой частоты fT = 1/ ТТ и не менее fT /65536. Если она будет слишком малой, то наступит переполнение нижнего счетчика (выработается сигнал переноса
"–Пер. 2"). Если же она будет слишком большой, то наступит переполнение верхнего счетчика (выработается сигнал переноса
"–Пер. 1"). Например, при тактовой частоте 10 МГц измеряемая частота входного сигнала может находиться в пределах от
152,6 Гц до 10 МГц.
Полное время измерения будет изменяться в пределах от 8192ТТ до (8192ТТ + 2ТВХ). Один период ТВХ может прибавляться
к времени измерения из-за того, что после разрешения измерения счет начинается не сразу, а только с приходом фронта
входного сигнала. Второй период ТВХ может прибавляться за счет того, что счет заканчивается не сразу после достижения
кодом N величины 8192, а только с приходом нужного (положительного) фронта входного сигнала. Максимальное время измерения
в любом случае не превышает 65536ТТ для всех измеряемых частот.
Для увеличения диапазона измеряемых частот можно применить предварительный управляемый
(рис 9.33) Делитель частоты и схема управления для измерителя частоты входного сигналаСхема управления измерителем частоты, также показанная на рис. 9.33, включает в себя цепочку из четырех последовательно срабатывающих триггеров (ТМ2). Перед началом измерения все эти триггеры сбрасываются в нуль сигналом "–Сброс".
Первый триггер перебрасывается в единицу по сигналу начала измерения "Старт" (положительный фронт). При этом разрешается прохождение подсчитываемых импульсов "Изм." и "Такт" на вход счетчиков (рис. 9.32). Одновременно разрешается работа второго триггера.
Второй триггер перебрасывается в единицу по положительному фронту входного сигнала. Тем самым он с помощью сигнала со своего инверсного выхода разрешает работу счетчиков (сигнал "–Разр."). Одновременно разрешается работа третьего триггера.
Третий триггер перебрасывается в единицу по сигналу "
Наконец, четвертый триггер перебрасывается по положительному фронту входного сигнала и сигналом со своего
инверсного выхода сбрасывает первый триггер. Поступление сигналов "Изм." и "Такт" прекращается. Выходной сигнал
четвертого триггера служит флагом готовности выходных кодов N и M, которые необходимо прочитать для дальнейшего
вычисления частоты. Перед новым измерением надо подать сигнал "Сброс".
Кроме четырех управляющих триггеров, в схему управления введены еще два триггера (справа на рисунке), выходные
сигналы которых служат флагами переполнения и показывают после окончания измерения, правильно ли сработал измеритель
частоты. Перед началом измерения оба эти триггера сбрасываются по сигналу "Сброс". Если частота входного сигнала в
нужных пределах, то оба триггера останутся в нуле. Если частота входного сигнала очень большая, то сработает верхний по
рисунку триггер по входному сигналу переноса "Пер. 1" (см. рис. 9.32) и выдаст сигнал "Увел.", говорящий о том, что
надо поднять частоту
Счетчики представляют собой более высокий, чем регистры, уровень сложности цифровых микросхем, имеющих внутреннюю память. Хотя в основе любого счетчика лежат те же самые триггеры, которые образуют и регистры, но в счетчиках триггеры соединены более сложными связями, в результате чего их функции - сложнее, и на их основе можно строить более сложные устройства, чем на регистрах. Точно так же, как и в случае регистров, внутренняя память счетчиков - оперативная, то есть ее содержимое сохраняется только до тех пор, пока включено питание схемы. С выключением питания память стирается, а при новом включении питания схемы содержимое памяти будет произвольным, случайным, зависящим только от конкретной микросхемы, то есть выходные сигналы счетчиков будут произвольными.
(рис 9.1) Работа 4-разрядного двоичного счетчикаКак следует из самого названия, счетчики предназначены для счета входных импульсов. То есть с приходом каждого
нового входного импульса двоичный код на выходе счетчика увеличивается (или уменьшается) на единицу
(рис. 9.1).
Срабатывать счетчик может по отрицательному фронту входного (
Счетчик может работать на увеличение выходного кода по каждому входному импульсу; это основной режим, имеющийся
во всех счетчиках, он называется режимом прямого счета. Счетчик может также работать на уменьшение выходного кода
по каждому входному импульсу; это режим обратного или
Большинство счетчиков работают в обычном двоичном коде, то есть считают от 0 до (2N–1), где N - число разрядов выходного кода счетчика. Например, 4-разрядный счетчик в режиме прямого счета будет считать от 0 (код 0000) до 15 (код 1111), а 8-разрядный - от 0 (код 0000 0000) до 255 (код 1111 1111). После максимального значения кода счетчик по следующему входному импульсу переключается опять в 0, то есть работает по кругу. Если же счет - инверсный, то счетчик считает до нуля, а дальше переходит к максимальному коду 111...1.
Имеются также
По быстродействию все счетчики делятся на три большие группы:
Принципиальные различия между этими группами проявляются только на втором уровне представления, на уровне модели с временными задержками. Причем больше всего различия эти проявляются при каскадировании счетчиков. Наибольшим быстродействием обладают синхронные счетчики, наименьшим - асинхронные счетчики, наиболее просто управляемые среди других. Каждая группа счетчиков имеет свои области применения, на которых мы и остановимся.
Асинхронные счетчики строятся из простой цепочки
Чем больше разрядов имеет счетчик, тем большее время ему требуется на полное переключение всех разрядов. Задержка переключения каждого разряда примерно равна задержке триггера, а полная задержка установления кода на выходе счетчика равна задержке одного разряда, умноженной на число разрядов счетчика. Легко заметить, что при периоде входного сигнала, меньшем полной задержки установления кода счетчика, правильный код на выходе счетчика просто не успеет установиться, поэтому такая ситуация не имеет смысла. Это накладывает жесткие ограничения на период (частоту) входного сигнала, причем увеличение, к примеру, вдвое количества разрядов счетчика автоматически уменьшает вдвое предельно допустимую частоту входного сигнала.
(рис 9.2) Временная диаграмма работы 4-разрядного асинхронного счетчикаТаким образом, если нам нужен выходной код асинхронного счетчика, то есть все его выходные сигналы (разряды)
одновременно, то должно выполняться следующее неравенство: T> Ntз,
где T - период входного сигнала, N - число разрядов счетчика, tз - время задержки одного разряда.
Надо еще учесть, что за период входного сигнала должно успеть сработать устройство (узел), на которое поступает выходной код счетчика, иначе счетчик просто не нужен; поэтому ограничение на частоту входного сигнала обычно бывает еще жестче.
В составе стандартных серий цифровых микросхем асинхронных счетчиков немного. Для примера на
рис. 9.3 приведены
три из них: 4-х разрядный
(рис 9.3) Асинхронные счетчики стандартных серийУ всех этих счетчиков управление работой очень простое, есть всего лишь входы сброса в нуль или входы установки в 9 (только у ИЕ2). Все асинхронные счетчики работают по отрицательному фронту входного сигнала С (или, что то же самое, по заднему фронту положительного входного сигнала). У всех трех счетчиков выделены две независимые части, что увеличивает возможности их применения. При объединении этих двух частей получается счетчик максимальной разрядности. Выходы счетчиков обозначают на схемах 0, 1, 2, 3, ... (как номера разрядов выходного двоичного кода) или 1, 2, 4, 8, ... (как веса каждого разряда двоичного кода).
Счетчик ИЕ2 имеет две части: один триггер (вход С1, выход 1) и три триггера (вход С2 и выходы 2, 4, 8). Таким образом,
он состоит из одноразрядного счетчика и трехразрядного счетчика. Одиночный триггер работает в обычном счетном режиме,
изменяя свое состояние по каждому
| Входы | Выходы | |||||||
|---|---|---|---|---|---|---|---|---|
С1 |
R1 |
R2 |
S1 |
S2 |
8 | 4 | 2 | 1 |
Х |
1 | 1 | 0 | X | 0 | 0 | 0 | 0 |
Х |
1 | 1 | Х |
0 | 0 | 0 | 0 | 0 |
Х |
Х |
Х |
1 | 1 | 1 | 0 | 0 | 1 |
| 1 $$\to$$ 0 | Х |
0 | X | 0 | Счет | |||
| 1 $$\to$$ 0 | 0 | Х |
0 | Х |
Счет | |||
| 1 $$\to$$ 0 | 0 | Х |
Х |
0 | Счет | |||
| 1 $$\to$$ 0 | Х |
0 | 0 | Х |
Счет | |||
Счетчик ИЕ2 имеет два входа асинхронного сброса в нуль R1 и R2, объединенных по функции И, и два входа установки
в 9 - S1 и S2, также объединенных по функции И, причем установка в 9 блокирует установку в нуль. Наличие этих входов
сброса и установки позволяет строить на базе счетчика ИЕ2
| Такт | Вых.8 | Вых.4 | Вых.2 | Вых.1 |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 2 | 0 | 0 | 1 | 0 |
| 3 | 0 | 0 | 1 | 1 |
| 4 | 0 | 1 | 0 | 0 |
| 5 | 0 | 1 | 0 | 1 |
| 6 | 0 | 1 | 1 | 0 |
| 7 | 0 | 1 | 1 | 1 |
| 8 | 1 | 0 | 0 | 0 |
| 9 | 1 | 0 | 0 | 1 |
| 10 | 0 | 0 | 0 | 0 |
Счетчик ИЕ5, точно так же как и ИЕ2, имеет две части: один триггер (одноразрядный счетчик) со входом С1 и выходом
1 и три триггера (трехразрядный счетчик) со входом С2 и выходами 2, 4, 8. Оба счетчика - двоичные, то есть первый
считает до двух, а второй - до 8. При объединении входа С2 с выходом 1 получается 4-разрядный
| Выходы | Выходы | |||||
|---|---|---|---|---|---|---|
| С1 | R1 | R2 | 8 | 4 | 2 | 1 |
Х |
1 | 1 | 0 | 0 | 0 | 0 |
| 1 $$\to$$ 0 | 0 | Х |
Счет | |||
| 1 $$\to$$ 0 | Х |
0 | Счет | |||
(рис 9.4) Объединение трех счетчиков ИЕ5 для увеличения разрядностиОбъединять счетчики ИЕ5 для увеличения разрядности (каскадировать) очень просто: нужно выход 8 предыдущего счетчика (выдающего более младшие разряды) соединить со входом С1 следующего счетчика (выдающего более старшие разряды). На рис. 9.4 показано соединение трех счетчиков ИЕ5 для получения 12-разрядного асинхронного счетчика со сбросом в нуль. Точно так же можно объединять и счетчики ИЕ2, добавляя при этом входы общей установки счетчика в код 99...9. Однако при объединении надо помнить, что добавление каждого нового разряда увеличивает общую задержку переключения полученного счетчика. Многоразрядный асинхронный счетчик может получиться неприемлемо медленным.
Счетчик ИЕ19 можно считать сдвоенным вариантом счетчика ИЕ5. Он включает в себя два идентичных независимых друг
от друга 4-разрядных асинхронных счетчика, каждый из которых имеет свой
Счетчики, входящие в ИЕ19, можно использовать самостоятельно, но можно и объединить их для получения 8-разрядного
асинхронного счетчика с выходами 1, 2, 4, 8, 16, 32, 64, 128. Для такого объединения достаточно соединить выход 8
первого счетчика со
(рис 9.5) Объединение двух счетчиков ИЕ19 для увеличения разрядностиОсновное применение асинхронных счетчиков состоит в построении всевозможных
При построении
Простейший пример такого
(рис 9.6) Делитель частоты на 10, выдающий меандрИногда возникает задача деления частоты входного сигнала в произвольное число раз (не в 10 и не в 2n, что легко обеспечивается самой структурой стандартных счетчиков). В этом случае можно организовать сброс счетчика при достижении им требуемого кода путем введения обратных связей.
(рис 9.7) Делитель частоты на 9 с обратными связямиНапример, на рис. 9.7 показан простейший
Если в числе, на которое надо делить частоту, больше двух единиц (например, 15, то есть 1111, или 13, то есть 1101), то для формирования сигнала сброса надо использовать элементы 2И, 3И или 4И, чтобы объединить все выходы, равные единице. В результате можно построить делитель входной частоты в любое число раз от 2 до 2N, где N - число разрядов используемого счетчика. Правда, при организации обратных связей надо учитывать ограничение на быстродействие счетчика. Все разряды, используемые для обратной связи, должны успеть переключиться за один период входного сигнала. Скважность выходного сигнала может принимать в данном случае самые разные значения, например, выходной сигнал может представлять собой очень короткие импульсы.
На асинхронных счетчиках можно строить также управляемые
(рис 9.8) Управляемый делитель частоты на асинхронном счетчикеВ момент переключения
Конечно, применение асинхронных счетчиков не ограничивается только
Если же включить на выходе асинхронного счетчика выходной
(рис 9.9) Включение выходного регистра для одновременного переключения разрядов выходного кодаДанная схема будет работать правильно, если период следования входных тактовых импульсов будет больше, чем время
установления всех разрядов счетчика (в нашем случае - 8-разрядного счетчика ИЕ19).
В заключение данного раздела надо отметить, что асинхронные счетчики, как и другие цифровые схемы, предъявляют требования к длительности входных сигналов. Например, не должны быть слишком короткими сигналы на тактовых входах и на входах сброса и установки. Не должны быть слишком затянутыми фронты входных сигналов. Тактовые сигналы и сигналы сброса не должны приходить со слишком малыми задержками друг относительно друга.
Синхронные (или
Управление работой синхронного счетчика гораздо сложнее, чем в случае асинхронного счетчика, а количество разрядов
синхронных счетчиков обычно не превышает четырех. Поэтому синхронные счетчики не всегда могут успешно конкурировать с
асинхронными, особенно при невысоких требованиях к быстродействию. Зато и возможностей у синхронных счетчиков, как
правило, гораздо больше, чем у асинхронных, например, они обеспечивают
Для объединения нескольких синхронных счетчиков с целью увеличения числа их разрядов (для каскадирования) используется
специальный выходной сигнал
Синхронные счетчики с асинхронным
Сигнал
Временная диаграмма 4-разрядного синхронного счетчика с асинхронным
(рис 9.10) Временная диаграмма работы синхронного счетчика с асинхронным переносомПримерами синхронных счетчиков с асинхронным переносом могут служить
(рис 9.11) Синхронные счетчики с асинхронным переносом| Выходы | Режим работы | |||
|---|---|---|---|---|
| R | -WR | +1 | -1 | |
| 1 | Х |
Х |
Х |
Сброс в нуль |
| 0 | 0 | Х |
Х |
|
| 0 | 1 | 1 | 1 | Хранение |
| 0 | 1 | 0 | 0 | Хранение |
| 0 | 1 | 0 $$\to$$ 1 | 1 | Прямой счет |
| 0 | 1 | 1 | 0 $$\to$$ 1 | Обратный счет |
Вход параллельной записи обозначается иногда на схемах также L, С, а выходы
Таблица режимов работы счетчиков ИЕ6 и ИЕ7 приведена в табл. 9.4.
После сброса счетчик начинает счет по положительным фронтам на счетных входах от нулевого кода. После параллельной
записи счет начинается от числа, записанного в счетчик. После переполнения счетчика ИЕ7 (достижения кода 1111) при прямом
счете вырабатывается
Входные сигналы счета, записи и сброса не должны быть слишком короткими. Не должен быть слишком малым временной сдвиг между сигналами на входах D1–D8 и сигналом записи как в начале импульса записи, так и в его конце (сигнал записи -WR должен начинаться после установления входного кода, а заканчиваться - до снятия входного кода).
(рис 9.12) Объединение счетчиков ИЕ7 для увеличения разрядностиОбъединение счетчиков ИЕ7 и ИЕ6 для увеличения разрядности (каскадирование) очень просто: нужно выходы
Если нужно использовать все выходные разряды многоразрядного счетчика одновременно (как единый код), то необходимо
выполнение следующего условия: T>(N – 1)*tзп+tзс,
где T - период входного сигнала, N - число объединенных микросхем счетчиков, tзп - время задержки tзс - время задержки счета (переключения выходного кода) одного счетчика.
Применение синхронных счетчиков с асинхронным
В качестве
Простейший пример 12-разрядного
(рис 9.13) Делитель частоты с коэффициентом деления, задаваемым входным кодомНа вход счетчиков подается 12-разрядный
Чтобы сформулировать условия правильной работы данного
Если частота входного сигнала - большая (к примеру, больше 10 МГц), то нормальная длительность входного сигнала
получается сама собой. Но частота входного сигнала не должна быть и слишком большой, иначе в процессе записи
счетчик пропустит один из входных импульсов или даже несколько. То есть от переднего фронта входного отрицательного
сигнала до заднего фронта следующего входного
Для решения часто встречающейся на практике задачи подсчета количества пришедших входных импульсов необходимо всего лишь объединить несколько микросхем счетчиков с целью получения требуемого числа разрядов. Например, если количество входных импульсов не превышает 255, то достаточно двух 4-разрядных счетчиков, если оно не больше 65535, то надо объединить уже четыре 4-разрядных счетчика. Так как в этом случае нас интересуют все выходные разряды одновременно, необходимо обеспечить, чтобы за период входных импульсов переключались все микросхемы счетчиков.
Обеспечить одновременность переключения всех выходных разрядов счетчика при счете входных импульсов можно,
как и в случае асинхронных счетчиков, за счет включения выходного
(рис 9.14) Включение выходного регистра для одновременного пе- реключения разрядов выходного кодаФормирование пачки (группы) входных импульсов с заданным количеством импульсов - довольно распространенная
задача. Например, такое формирование необходимо при организации обмена информацией в последовательном коде. Если
в качестве преобразователя параллельного кода в последовательный используется 8-разрядный
(рис 9.15) Формирователь пачки из восьми импульсовПо сигналу "Старт" (положительный фронт) перебрасывается первый триггер, использующийся для синхронизации. По
первому положительному фронту
(рис 9.16) Временная диаграмма работы формирователя пачки им- пульсовПосле того как на Выход 1 схемы пройдут восемь отрицательных импульсов, на выходе 8 счетчика выработается единица, что приведет к сбросу в исходное нулевое состояние обоих триггеров (коротким отрицательным импульсом на выходе нижнего по рисунку элемента 2И-НЕ) и к запрету прохождения импульсов на выход. Работа формирователя возобновится после следующего сигнала "Старт".
На основе счетчиков довольно просто строить формирователи временных интервалов с длительностью, задаваемой
внешним кодом. Такие формирователи находят широкое применение, например, в различных измерительных устройствах.
Так как
При первом подходе входной стартовый импульс синхронизируется с тактовым сигналом, в результате чего выходной
импульс заданной длительности может начаться не сразу после стартового импульса, а через какое-то время, меньшее
периода
При втором подходе выходной импульс заданной длительности начинается сразу после входного сигнала, но
длительность его может отличаться от заданной на какое-то время, меньшее периода
Работа схемы начинается с подачи короткого отрицательного импульса –Старт. Он перебрасывает триггер, который
разрешает работу счетчиков снятием сигнала параллельной записи –WR. По отрицательному фронту входного сигнала
начинается положительный выходной сигнал заданной длительности. Счетчики начинают считать на уменьшение кода по
положительным фронтам
(рис 9.17) Формирователь временного интервалаЕсли входной код равен 1, то длительность выходного сигнала составит от Т до 2Т, где Т - период
Эту же самую схему вполне можно использовать в тех случаях, когда необходимо получить убывающий код от заданного числа до нуля. При этом сигнал с выхода триггера будет только внутренним сигналом схемы, а выходными сигналами схемы будут выходные разряды счетчиков.
Иногда бывает необходимо сформировать импульс требуемой длительности, но одновременно иметь не убывающий, а возрастающий код (от нуля до заданного значения). В таком случае схема получится несколько сложнее. Пример возможного решения формирователя импульса заданной длительности показан на рис. 9.18.
(рис 9.18) Формирователь импульса заданной длительности (вариант с нарастающим кодом)По сигналу "Старт" (положительный фронт) перебрасывается левый по рисунку триггер, который начинает
формировать выходной сигнал и разрешает работу счетчика (снимая сигнал сброса R). Счетчик считает на увеличение
по положительным фронтам
Если входной код равен 1, то длительность выходного сигнала составит от Т до 2Т, где Т - период тактового
сигнала генератора. Если входной код равен N, то длительность выходного сигнала будет равна от NT до (N + 1)T
в зависимости от временного сдвига между сигналом "Старт" и тактовым сигналом. В любом случае абсолютная
погрешность времени выдержки выходного сигнала не превысит периода
Счетчики также широко применяются в различных измерителях длительности входных сигналов. Для этого они отсчитывают импульсы тактового кварцевого генератора в течение длительности входного сигнала. После окончания входного сигнала в счетчике остается код, пропорциональный длительности этого сигнала. Пример практической схемы такого измерителя показан на рис. 9.19.

(рис 9.20) Измеритель длительности входного сигнала(рис 9.19) Временная диаграмма работы измерителя длительности входного сигналаРабота схемы начинается по короткому управляющему импульсу "Старт", который сбрасывает счетчик в нуль и
переводит всю схему в режим счета, разрешая прохождение сигнала с
Выходной код N измерителя связан с длительностью входного сигнала t простым соотношением t = NT,
где T - период ±Т. Поэтому для
уменьшения
Счетчики также применяются и для измерения частоты входного
Частоту входного сигнала можно измерить двумя путями: косвенным, то есть измерением периода входного сигнала
(по принципу, рассмотренному только что) и вычислением затем частоты (по формуле fвх = 1/Tвх ), или же прямым
измерением частоты. Первый метод требует вычислений с помощью компьютера или
В соответствии с этим методом необходимо сформировать временное окно с заданной длительностью tо, в течение
которого надо сосчитать количество N периодов входного сигнала Т (рис. 9.21). В этом случае будет выполняться
соотношение tо = NT или f = N/tо,
где f - это частота входного сигнала, равная 1/T. То есть частота входного сигнала пропорциональна коду N,
а коэффициент пропорциональности равен 1/tо. Если, например, выбрать tо = 1 c, то код N будет равен частоте
входного сигнала в герцах, а при tо = 1 мc код N будет равен частоте входного сигнала в килогерцах.
(рис 9.21) Измерение частоты входного сигнала прямым методомЕсли длительность временного окна - строго постоянная величина, то погрешность измерения частоты будет
определяться только погрешностью подсчета кода N. 1/N. Понятно, что для увеличения точности измерения частоты нужно
увеличивать N, то есть необходимо увеличивать длительность временного окна tо. Однако при этом автоматически
увеличивается время измерения.
(рис 9.22) Измеритель частоты входного сигнала прямым методомСхема
Еще одно широко распространенное применение счетчиков - последовательное переключение (сканирование) нескольких устройств, узлов, индикаторов, каналов передачи и т.д. То есть имеется, например, группа устройств, которые должны по тем или иным причинам работать не одновременно, а по очереди, так, что в каждый момент активным является только одно устройство, причем очередь эта замкнута в кольцо и после последнего устройства начинает работать первое. Или же имеется несколько каналов связи (входных или выходных линий), которые надо также по очереди подключать к одному выходу (при выходных каналах) или к одному входу (при входных каналах).
Во всех подобных случаях опрос, переключение, сканирование может производить счетчик с нужным числом разрядов.
Счетчик с числом разрядов n может обслуживать 2n устройств (или каналов).
В качестве первого примера рассмотрим схему переключения выходных каналов (рис. 9.23). Она последовательно, по
очереди, циклически коммутирует один входной сигнал на восемь выходов, для чего используется счетчик, тактируемый
сигналом задающего генератора, и
(рис 9.23) Схема последовательного переключения выходных каналовИспользуя данную схему, надо учитывать, что в момент переключения каналов может искажаться (обрезаться) выходной сигнал. Поэтому лучше всего обеспечить, чтобы входной сигнал приходил только тогда, когда переключение каналов не производится. Или на время передачи вообще останавливать процесс перебора каналов путем запрета прохождения импульсов с генератора на вход счетчика, а после окончания передачи снова разрешать последовательный перебор каналов.
(рис 9.24) Схема последовательного переключения входных каналовВторой пример, который мы рассмотрим, это схема, решающая обратную задачу - переключение входных каналов
(рис. 9.24). Данная схема последовательно, циклически передает один из восьми входных сигналов на выход. Как и
в предыдущем случае, перебор каналов осуществляется счетчиком, тактируемым сигналом с генератора. Непосредственно
коммутация сигналов производится
В момент переключения каналов здесь также возможно искажение (обрезание) коммутируемых сигналов. Поэтому желательно обеспечить передачу сигналов в момент, когда переключения каналов нет. Или же надо останавливать процесс перебора каналов на время приема сигнала из выбранного канала путем запрета прохождения тактовых импульсов на вход счетчика, а затем снова запускать перебор каналов.
Еще одно применение счетчиков из этой же области состоит в организации так называемой динамической индикации.
Суть динамической индикации состоит в следующем. Если используется табло из нескольких индикаторов (одиночных светодиодов, светодиодных семисегментных индикаторов, светодиодных матричных индикаторов и т.д.), то совсем не обязательно все эти индикаторы должны гореть постоянно, одновременно. Можно зажигать их по очереди, что существенно сократит потребляемый всей схемой ток питания. Например, если в каждый момент времени горит только один индикатор из имеющихся восьми, то ток потребления индикаторов сократится в восемь раз. Учитывая, что каждый светящийся светодиод требует тока порядка 1–5 мА, такой подход может дать большой выигрыш, особенно при матричных индикаторах, содержащих несколько десятков светодиодов. А инерционность человеческого глаза приводит к тому, что вспышки света с частотой больше 20 Гц воспринимаются как непрерывное свечение. Так что при достаточной частоте перебора индикаторов глазу не будет заметно последовательное их включение.
(рис 9.25) Схема динамической индикации на восьми индикаторахНа рис. 9.25 приведен пример схемы динамической индикации на восьми индикаторах. Для
Счетчики часто используют также для организации всевозможных
(рис 9.26) Схема таймера с чтением выходного кодаПример решения данной проблемы приведен на рис. 9.26. Здесь выходной код счетчика на каждом такте записывается в выходной регистр с разрешением записи ИР27. А в момент чтения кода (при положительном сигнале "Чтение") запись в регистр запрещается. В результате в течение всей длительности сигнала "Чтение" выходной код схемы будет неизменным, хотя счетчик будет продолжать считать без всяких помех, и ход часов не собьется.
Интересная особенность счетчиков ИЕ6 и ИЕ7 состоит в том, что они могут работать не только в режиме счета, но и
в режиме
Пусть, например, необходимо выдавать на вход схемы один из двух входных кодов: код со счетчика или код с регистра
(то есть требуется мультиплексирование двух кодов). Эту задачу можно решить, применяя двухканальный
(рис 9.27) Варианты мультиплексирования выходного кода счетчика с применением мультиплексора (а) и без него (б)И в заключение данного раздела мы рассмотрим две более сложные схемы, строящиеся на основе счетчиков. Это
Генерация прямоугольных импульсов - довольно часто встречающаяся задача, в частности при разработке, отладке,
тестировании электронной аппаратуры. От
Предлагаемая здесь схема генератора не претендует, конечно, на рекордные характеристики, но она вполне может
стать реальным удобным инструментом для разработчика цифровой аппаратуры, особенно если управление генератором
поручить компьютеру с установленной на нем развитой сервисной
(рис 9.28) Счетчики длительности импульса и паузы для генератора прямоугольных импульсовВ основе генератора (рис. 9.28) - два 16-разрядных счетчика, выполненных на основе микросхем ИЕ7. Один из этих
счетчиков (на рисунке внизу) отсчитывает длительность выходного импульса, другой (на рисунке вверху) - длительность
паузы. Коды длительности импульса и паузы подаются, соответственно, на входы данных верхнего и нижнего счетчиков
(эти коды могут храниться, например, в регистрах, не показанных на схеме). Счетчики импульса и паузы работают по
очереди, что определяется управляющими сигналами на их входах параллельной записи –WR, которые также запрещают
прохождение на входы -1 тактовых импульсов с помощью элементов 2И-НЕ. Эти управляющие сигналы поступают с прямого
и
В результате, когда один счетчик считает, другой находится в режиме параллельной записи и не считает. После того как считающий счетчик досчитает до нуля, он перебросит выходной триггер, который переведет этот счетчик в состояние параллельной записи, запретит поступление на его вход тактовых импульсов и разрешит считать другому счетчику. Описанная последовательность действий повторится уже для другого счетчика. И этот процесс будет повторяться до тех пор, пока разрешена генерация.
В данном случае смело можно одновременно использовать как вход –R, так и вход –S триггера, поскольку сигналы, приходящие на них, гарантированно разнесены во времени. Сигнал с прямого выхода триггера служит выходным сигналом всего генератора в целом. Разрешается генерация положительным сигналом "Разр". Когда генерация запрещена (нулевой сигнал "Разр."), триггер сброшен в нуль по входу –R и оба счетчика находятся в состоянии параллельной записи. Поэтому генератор всегда начинает работу с отработки паузы заданной длительности, а потом отрабатывает выходной импульс заданной длительности.
Сформулируем условия правильной работы данной схемы.
Во-первых, как и в случае управляемого
Во-вторых, частота
Пусть, например, мы хотим выбрать максимальную тактовую частоту 10 МГц (период ТТ = 100 нс). Посмотрим, можно ли использовать микросхемы счетчиков серии КР1533. Для счетчиков КР1533ИЕ7 задержка сигнала переноса составляет не более 18 нс. Для четырех микросхем задержка переноса составит 72 нс. Тогда на сумму задержек триггера, элемента 2И и элемента 2И-НЕ остается не более 28 нс. Следовательно, если мы возьмем эти элементы из более быстрых серий (например, КР531 или КР1531), мы легко удовлетворим этому требованию.
При величине кода импульса N длительность импульса ТИ составит (N+1) • ТТ. При величине кода паузы М длительность
паузы ТП составит (М+1) • ТТ. Период выходных импульсов ТВЫХ будет равен (M+N+2) • ТТ. Коды M и N могут принимать
значения от 0 до 65535. То есть минимальная длительность импульса и паузы равна ТТ, максимальная длительность импульса
и паузы равна 65536 ТТ, минимальная длительность периода выходного сигнала равна 2ТТ, а максимальная - 131072 ТТ.
Например, при тактовой частоте 10 МГц максимальный период выходного сигнала будет равен 13,1072 мс, а минимальный -
200 нс.
Для расширения диапазона изменения периода выходного сигнала можно применить управляемый делитель тактовой частоты.
Другой возможный путь - наращивание разрядности счетчиков - приводит к снижению максимально допустимой тактовой
частоты, так как обязательно вызывает увеличение задержек переключения счетчиков. К тому же, как правило, нет
необходимости задавать длительность периода выходного сигнала, скажем, в 1 секунду с
(рис 9.29) Схема управления и делитель частоты для генератора прямоугольных импульсовСхема управления
Левый по рисунку триггер вырабатывает сигнал разрешения генерации "Разр". В этот триггер необходимо записать единицу
для разрешения генерации или нуль для остановки генерации. Запись в триггер входного сигнала Ген./
Правый по рисунку триггер служит для организации разового запуска генератора. Переключение режима разового или
автоматического запуска производится управляющим сигналом "Раз./-Авт". При автоматическом запуске (нуль на входе
Раз./-Авт.) данный триггер не работает, он всегда находится в нулевом состоянии и дает уровень логической единицы
на своем
(рис 9.30) Режимы работы генератора импульсов: автоматический (а) и разовый (б)Асинхронность (независимость) момента прихода команды на начало передачи и сигнала задающего кварцевого генератора приводит к тому, что длительность первой паузы может оказаться на 100 нс меньше, чем она задана кодом паузы. Но это не слишком существенно, так как гораздо важнее длительность выходного импульса. Все последующие импульсы и паузы выдерживаются точно.
Таким образом, рассмотренный генератор может формировать импульсы длительностью от 100 нс с паузой между
импульсами от 100 нс. Максимально возможная длительность импульса составляет 216 • 212 • 100 нс = 26,84 с. Такой
же может быть и пауза. Правда, отношение длительности импульса к длительности паузы (или длительности паузы к
длительности импульса) не может превышать 65536. Величина периода выходного сигнала генератора может достигать 53,69 с.
Теперь рассмотрим вторую схему.
Задача измерения частоты следования входных прямоугольных импульсов также часто встречается как в чисто
цифровых, так и в аналого-цифровых системах. Как уже упоминалось, существует два традиционных метода измерения
частоты (рис. 9.31): один предполагает измерение периода TВХ путем подсчета тактовых импульсов с периодом TT
в течение TВХ и дальнейшее вычисление частоты по формуле fВХ = 1/TВХ (а), а другой прямо измеряет частоту fВХ
путем подсчета входных импульсов в течение временного окна tO (б).
1/N, где N - полученный в результате
подсчета код. Понятно, что первый метод дает хорошую точность только для низких частот fВХ (то есть для больших TВХ и соответственно больших N ). Второй метод дает хорошую точность только для больших частот fВХ или в случае
большого временного окна tO (то есть для больших N ). В первом случае для увеличения точности необходимо увеличивать
тактовую частоту, во втором - увеличивать длительность временного окна.
(рис 9.31) Методы измерения частоты: через период (а), прямой (б) и комбинированный (в)Время измерения частоты по первому методу составляет TВХ. Для второго метода оно постоянно и равно длительности
временного окна tO.
Поэтому желательно было бы соединить достоинства обоих методов, чтобы частота fВХ измерялась бы достаточно быстро
и с заданной точностью (с погрешностью, не меньшей заданной). Это возможно при использовании комбинированного метода
(рис. 9.31в). При данном методе импульсы тактовой частоты с периодом TT подсчитываются в течение М полных периодов
входного сигнала. При этом количество сосчитанных импульсов N определяет точность измерения (1/N ). Значит, необходимо обеспечить, чтобы N было достаточно большим, например, при N>100 относительная
погрешность не превысит 1%, а при N > 1000 она будет меньше 0,1%. Обеспечить достаточную величину N можно простым выбором
числа М.
Недостаток данного комбинированного метода состоит в том, что измеренное значение частоты необходимо вычислять.
Так как при этом методе выполняется равенство МTВХ = NTT, следовательно, fВХ = M/(NTT). Однако при использовании
компьютера или
(рис 9.32) Счетчики измерителя частоты входного сигналаВ основе схемы М и N ) используются после окончания измерения для
вычисления значения частоты входного сигнала.
Работа счетчиков разрешается отрицательным сигналом "–Разр." по фронту (например, положительному) входного сигнала. После окончания измерения по такому же фронту входного сигнала поступление сигналов "Изм." и "Такт" запрещается. То есть счет производится в течение целого числа периодов входного сигнала.
Выход "N достиг достаточной величины (в нашем случае -8192), и,
следовательно, можно останавливать измерение (но только по ближайшему фронту входного сигнала). Иначе говоря, код N в
конце измерения будет не менее 8192, и поэтому погрешность измерения частоты входного сигнала не превысит 1/8192 или
0,012%.
Для правильной работы схемы частота входного сигнала должна быть не более тактовой частоты fT = 1/ ТТ и не менее fT /65536. Если она будет слишком малой, то наступит переполнение нижнего счетчика (выработается сигнал переноса
"–Пер. 2"). Если же она будет слишком большой, то наступит переполнение верхнего счетчика (выработается сигнал переноса
"–Пер. 1"). Например, при тактовой частоте 10 МГц измеряемая частота входного сигнала может находиться в пределах от
152,6 Гц до 10 МГц.
Полное время измерения будет изменяться в пределах от 8192ТТ до (8192ТТ + 2ТВХ). Один период ТВХ может прибавляться
к времени измерения из-за того, что после разрешения измерения счет начинается не сразу, а только с приходом фронта
входного сигнала. Второй период ТВХ может прибавляться за счет того, что счет заканчивается не сразу после достижения
кодом N величины 8192, а только с приходом нужного (положительного) фронта входного сигнала. Максимальное время измерения
в любом случае не превышает 65536ТТ для всех измеряемых частот.
Для увеличения диапазона измеряемых частот можно применить предварительный управляемый
(рис 9.33) Делитель частоты и схема управления для измерителя частоты входного сигналаСхема управления измерителем частоты, также показанная на рис. 9.33, включает в себя цепочку из четырех последовательно срабатывающих триггеров (ТМ2). Перед началом измерения все эти триггеры сбрасываются в нуль сигналом "–Сброс".
Первый триггер перебрасывается в единицу по сигналу начала измерения "Старт" (положительный фронт). При этом разрешается прохождение подсчитываемых импульсов "Изм." и "Такт" на вход счетчиков (рис. 9.32). Одновременно разрешается работа второго триггера.
Второй триггер перебрасывается в единицу по положительному фронту входного сигнала. Тем самым он с помощью сигнала со своего инверсного выхода разрешает работу счетчиков (сигнал "–Разр."). Одновременно разрешается работа третьего триггера.
Третий триггер перебрасывается в единицу по сигналу "
Наконец, четвертый триггер перебрасывается по положительному фронту входного сигнала и сигналом со своего
инверсного выхода сбрасывает первый триггер. Поступление сигналов "Изм." и "Такт" прекращается. Выходной сигнал
четвертого триггера служит флагом готовности выходных кодов N и M, которые необходимо прочитать для дальнейшего
вычисления частоты. Перед новым измерением надо подать сигнал "Сброс".
Кроме четырех управляющих триггеров, в схему управления введены еще два триггера (справа на рисунке), выходные
сигналы которых служат флагами переполнения и показывают после окончания измерения, правильно ли сработал измеритель
частоты. Перед началом измерения оба эти триггера сбрасываются по сигналу "Сброс". Если частота входного сигнала в
нужных пределах, то оба триггера останутся в нуле. Если частота входного сигнала очень большая, то сработает верхний по
рисунку триггер по входному сигналу переноса "Пер. 1" (см. рис. 9.32) и выдаст сигнал "Увел.", говорящий о том, что
надо поднять частоту
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.