Компоненты и технологии • №2 '2011 компоненты


Изменение периода работы таймера



Pdf көрінісі
бет125/129
Дата28.09.2023
өлшемі4.1 Mb.
#478975
1   ...   121   122   123   124   125   126   127   128   129
Kurniz

Изменение периода работы таймера
Независимо от того, в каком состоянии 
в данный момент находится таймер: в ак-
тивном или в пассивном, период его работы 
можно изменить посредством API-функции 
xTimerChangePeriod(). Ее прототип:
portBASE_TYPE xTimerChangePeriod( xTimerHandle xTimer, 
portTickType xNewPeriod, portTickType xBlockTime );
Аргументы и возвращаемое значение:
1. xTimer — дескриптор таймера, полу-
ченный при его создании API-функцией 
xTimerCreate().
2. xNewPeriod — новый период работы тай-
мера, задается в системных квантах.
3. xBlockTime — определяет время тайм-
аута — максимальное время нахождения 
вызывающей xTimerChangePeriod() задачи 
в блокированном состоянии, если очередь 
команд полностью заполнена и нет воз-
можности поместить в нее команду об из-
менении периода таймера.
4. Возвращаемое значение — может прини-
мать два значения:
pdFAIL

— означает, что команда об из-
менении периода таймера так и не была 
помещена в очередь команд, и время 
тайм-аута истекло.
pdPASS

— означает, что команда об из-
менении периода успешно помещена 
в очередь команд.
API-функция xTimerChangePeriod() предна-
значена для вызова из тела задачи или функ-
ции таймера. Существует версия этой API-
функции, предназначенная для вызова из обра-
ботчика прерывания, о ней будет сказано ниже.
Получение текущего состояния таймера
Для того чтобы узнать, в каком состоя-
нии — в активном или в пассивном — в дан-
ный момент находится таймер, служит API-
функция xTimerIsTimerActive(). Ее прототип:
portBASE_TYPE xTimerIsTimerActive( xTimerHandle xTimer );
Аргументом API-функции является де-
скриптор таймера, состояние которого необ-
ходимо выяснить. xTimerIsTimerActive() мо-
жет возвращать два значения:


Достарыңызбен бөлісу:
1   ...   121   122   123   124   125   126   127   128   129




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет