Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

40 Микроконтроллеры AVR от азов программирования... Счетчики прямого счета Приведенную на рис. 1.22 схему можно использовать не только в каче ­ стве делителя частоты, но и в качестве счетчика входных импульсов. Представьте, что выходы Q0 — Q3 — это разряды некоторого двоичного числа. Выход Q0 — это младший разряд, а выход Q3 — самый старший. Предположим, что перед началом счета все четыре триггера установ ­ лены в нулевое состояние. На вход схемы поступает некоторое коли ­ чество импульсов. Входящие в схему триггеры будут переключаться согласно описанному выше алгоритму. Состояние триггеров в процессе счета показано в табл. 1.1. Как видно из таблицы, после прихода первого входного импульса триггер D0 переходит в единичное состояние. После прихода второго импульса D0 возвращается в ноль, зато в единичное состояние переходит D1. Дальнейшее поведение всех четырех триггеров хорошо видно из таблицы. А теперь внимательно посмотрите, что у нас получилось. Если воспринимать совокупность цифровых сигналов на выходах счетчика как четырехразрядное двоичное число, то мы видим перед собой после ­ довательность чисел от 0000 до 1111. Десятичный эквивалент этих чисел показан в правой крайней колонке табл. 1.1. Логика работы делителя Таблица 1 .7 Входные импульсы Состояние выходов Десятичный эквивалент Q3 Q2 Q1 Q0 Не было ни одного 0 0 0 0 0 Один импульс 0 0 0 1 1 Два импульса 0 0 1 0 2 Три импульса 0 0 1 1 3 0 1 0 0 4 0 1 0 1 5 0 1 1 0 6 0 1 1 1 7 1 0 0 0 8 1 0 0 1 9 1 0 1 0 10 1 0 1 1 11 1 1 0 0 12 1 1 0 1 13 Четырнадцать импульсов 1 1 1 0 14 Пятнадцать импульсов 1 1 1 1 15 Итак, перед началом счета на выходе делителя — ноль. После про ­ хождения первого импульса на выходе — единица, после второго — два, и так далее. Каждый входной импульс увеличивает значение двоичного числа на выходе счетчика на одну единицу. Поэтому в любой момент вре ­

RkJQdWJsaXNoZXIy MTExODQxMg==