Command disabled: backlink
 
Available Languages?:

OSA : OS_Stimer_Found

bool OS_Stimer_Found ()

Сервис использует таймаутНельзя вызывать из прерывания

Проверяет, есть ли свободный статический таймер

Для использования статических таймеров в файле OSAcfg.h нужно определить константу OS_STIMERS. Разрядность статических таймеров задается константой OS_STIMER_SIZE.

Для использования этого сервиса в файле osacfg.h должна быть определена константа OS_STIMERS_ENABLE_ALLOCATION

Разрешен вызов:

Не из прерывания

Параметры сервиса:

нет

Возвращаемое значение:

true Есть свободный статический таймер
false Все таймеры заняты

Пример вызова:

void Task (void)
{
    static unsigned char stimer_id;
    for (;;) {
        /*...*/
        OS_Wait(OS_Stimer_Found());    // Ждем появление свободного таймера
        OS_Stimer_Create(stimer_id);   // Выделяем таймер для работы
        OS_Stimer_Run(stimer_id, 100); // Теперь работаем через переменную
 
        do {
           // ...
        } while (!OS_Stimer_Check(stimer_id));
 
        OS_Stimer_Delete(stimer_id);   // Освобождаем таймер
        /*...*/
    }
}

См. также

 
osa/ref/allservices/os_stimer_found.txt · Последние изменения: 07.10.2010 13:53 (внешнее изменение)
 
Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki