Микропроцессоры и микроконтроллеры

 
 
 
Отладка кода вдвое сложнее, чем его написание. Так что если вы пишете код настолько умно, насколько можете, то вы по определению недостаточно сообразительны, чтобы его отлаживать.
Brian W. Kernighan.
Русский | Українська



На правах рекламы:



Rambler's Top100 Рейтинг@Mail.ru
Микропроцессоры и микроконтроллеры :: Принципы программирования MSC-51 :: Особенности реализации временных интервалов

Особенности реализации временных интервалов

Реализация временных интервалов (задание и измерение) имеет некоторые особенности, вызванные тем, что содержимое таймерных регистров нельзя контролировать в процессе подсчета импульсов без резкого снижения эффективности процессора (то есть дополнительной загрузки процессора программной проверкой содержимого таймерных регистров). В нормальном режиме параллельной работы процессора и таймера последний информирует процессор лишь о моментах переполнения путем формирования сигнала прерывания.

Исходя из этого, для реализации интервала времени заданной продолжительности T, сек, необходимо выполнить такие действия:

1.     Проверить возможность реализации заданного интервала. Должно выполняться условие

[ T / Ti ] < Nmax,

где Ti - период следования подсчитываемых импульсов, (импульсы ГТИ МК51);

Nmax - максимальное число, которое может быть записано в таймерный регистр в конкретной конфигурации; [ ] - операция взятия целой части.

В случае невыполнения условия надо выбрать другой режим работы таймера или осуществить измерение на каскаде из двух (или больше) таймеров.

2.     В таймерные регистры необходимо загрузить стартовое число, от которого будет начинаться счет; значение стартового числа определяется формулой

Ns = Nmax - [ T / Ti ].

После этого таймер может быть включен (например, командой SETB TRx), и через T секунд (с точностью Ti) при переполнении будет сформированный сигнал прерывания TFx, то есть процессор получит информацию о завершении заданного интервала. Процесс реализации интервала иллюстрируется схемой (рис. 14.6):

Диаграмма реализации интервала времени на таймере

Рис. 14.6. Диаграмма реализации интервала времени на таймере













При использовании любых материалов с сайта обратная ссылка на сайт Микропроцессоры и микроконтроллеры обязательна.