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

Шаг 3. А теперь ближе к практике: знакомтесь — микроконтроллеры AVR 99 вывода: TCNT1H и TCNT1L. Счетный регистр таймера ТЗ — это два регистра TCNT3H и TCNT3L. Микроконтроллер может записать в любой счетный регистр любое число в любой момент времени, а также в любой момент прочитать содержимое любого счетного регистра. Когда таймер включается в режим счета, то на его вход начинают поступать счетные импульсы. После при ­ хода каждого такого импульса содержимое счетного регистра увеличива ­ ется на единицу. Счетными импульсами могут служить как специальные тактовые импульсы, вырабатываемые внутри самого микроконтроллера, так и внешние импульсы, поступающие на специальные входы микро ­ схемы. При переполнении счетного регистра его содержимое обнуляется, и счет начинается сначала. Любой таймер жестко завязан с системой прерываний. Вызвать пре ­ рывание может целый ряд событий, связанных с таймером. Например, существует прерывание по переполнению таймера, по срабатыванию специальной схемы совпадения. Отдельные прерывания может вызывать сторожевой таймер. Режимы работы таймеров Таймеры микроконтроллеров семейства AVR могут работать в несколь ­ ких режимах. Разные микроконтроллеры имеют разные наборы режимов для своих таймеров. Для выбора режимов работы существуют специаль ­ ные регистры — регистры управления таймерами. Для простых таймеров используется один регистр управления. Для более сложных — два реги ­ стра. Регистры управления таймером называются TCCRx (где «х» — номер таймера). Например, для таймера ТО используется один регистр с именем TCCR0. Для управления таймером Т1 используется два регистра: TCCR1A и TCCR1B. При помощи регистров управления производится не только выбор соответствующего режима, но и более тонкая настройка таймера. Ниже перечислены все основные режимы работы таймера и их описание. Режим Normal Это самый простой режим. В этом режиме таймер производит под ­ счет приходящих на его вход импульсов (от тактового генератора или внешнего устройства) и вызывает прерывание по переполнению. Этот режим является единственным режимом работы для восьмиразрядных таймеров большинства микроконтроллеров семейства «Тіпу» и для части микроконтроллеров семейства «Mega». Для всех остальных восьмираз ­ рядных и всех шестнадцатиразрядных таймеров это всего лишь один из возможных режимов.

RkJQdWJsaXNoZXIy MTExODQxMg==