Дата последнего обновления файла 7.11.2009

Устройство таймера микроконтроллера MCS-48

В микроконтроллерах семейства MCS-48 внутренний таймер может быть использован как в режиме таймера так и в режиме счетчика внешних событий.

Режим таймера

Таймер состоит из пятиразрядного предварительного делителя на 32 и восьмиразрядного суммирующего счётчика. На вход предделителя поступают сигналы основной синхронизации ALE с периодом 2,5 мкс (15 периодов задающего генератора тактовой частоты). Таким образом минимальный промежуток времени, задаваемый при помощи таймера равен 80 мкс. Путём предварительной записи информации в таймер можно регулировать время, задаваемое таймером от 80 мкс до 20,48 мс. Эти значения определяются тем, что в таймер T можно записать 256 различных чисел. Если требуется больший временной интервал, то его можно получить программным путём с использованием любой ячейки внутренней памяти. Схема таймера приведена на рисунке 1.


Рисунок 1. Схема таймера микроконтроллеров семейства MCS-48

Когда содержимое счетчика изменяется из состояния все "1" в состояние все "0" , то устанавливается (принимает значение "1") флаг прерывания таймера TF0 или TF1.

Обычно пользователя интересует не максимальный интервал времени, а свой конкретный интервал времени, меньший максимально возможного. Для уменьшения интервала времени в регистр таймера можно предварительно занести число и тем самым сформировать произвольный интервал времени. Рассмотрим пример подготовки таймера T для формирования временного интервала 5мс.

;Настроить таймер на генерацию 5-ти миллисекундного интервала времени--------------------------------------
    mov A, #-62             ;Загрузить таймер числом 9Eh, равным числу -62 - количество периодов
    mov T, A                ;входной частоты таймера (62 периода таймера = 62*80 мкс =  4,96 мс)
    
    STRT T                  ;Запустить таймер

OjidanTimer:
    JTF   SledKomanda       ;Подождать пока не переполнится таймер
    JMP  OjidanTimer
SledKomanda:
  STOP TCNT                 ;Остановить таймер

Режим счётчика

В режиме счетчика содержимое счетчика инкрементируется под воздействием перехода из 1 в 0 внешнего входного сигнала, подаваемого на вывод микроконтроллера T1. Так как на распознавание периода требуются три машинных цикла то, минимальное время между импульсами равно 7,5 мкс. Минимальная длительность единичного сигнала на входе T1 при частоте кварцевого резонатора 6 МГц равна 0,5 мкс. На длительность периода входных сигналов ограничений сверху нет.

Запуск счётчика осуществляется командой STRT CNT, а остановка STOP TCNT. Количество подсчитанных импульсов можно считать командой  MOV A, T.

Литература:

  1. В.В. Сташин А.В. Урусов О.Ф. Мологонцева Е. П. Проектирование цифровых устройств на однокристальных микроконтроллерах 1990.

Вместе со статьей "Устройство таймера микроконтроллера MCS-48" читают:

Состав семейства MCS-48
http://digteh.ru/MCS48/tablms.php

Система команд микроконтроллеров семейства MCS-48 (1816ВЕ48)
http://digteh.ru/MCS48/SysInstr.php

Устройство таймеров микроконтроллеров MCS-51
http://digteh.ru/MCS51/timers.php


Автор Микушин А. В. All rights reserved. 2001 ... 2017

Предыдущие версии сайта:
http://neic.nsk.su/~mavr
http://digital.sibsutis.ru/

Поиск по сайту сервисом Яндекс

Поиск по сайту сервисом ГУГЛ

пЕИРХМЦ@Mail.ru


Rambler's Top100