Available Languages?:

Это — старая версия документа!


OSA : OS_Stimer_Free

OS_Stimer_Free (stimer_id)

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

Освободить ранее выделенный сервисом OS_Stimer_Alloc таймер по его номеру.

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

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

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

Только не из прерывания

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

stimer_id ID освобождаемого таймера

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

нет

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

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

См. также

 
osa/ref/allservices/os_stimer_free.1265324386.txt.gz · Последние изменения: 05.02.2010 01:59 От osa_chief
 
Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki