OS_Dtimer_Run (dtimer, newtime)
Запустить dtimer на отсчет времени newtime с момента вызова этого сервиса. Флаг переполнения сбрасывается.
Для использования динамических таймеров в файле OSAcfg.h нужно определить константу OS_ENABLE_DTIMERS. Разрядность динамических таймеров такая же, как и у системного, и задается константой OS_TIMER_SIZE.
Везде
dtimer |
Дескриптор динамического таймера типа OST_DTIMER. Содержит счетчик таймера, а также информацию о состоянии (считает, остановлен, активен, переполнение). Может размещаться в памяти только в bank0 или bank1 |
newtime |
Время, на которое запускается таймер. Задается в системных тиках - периодах вызова сервиса OS_Timer. Не должно превышать разрядности таймера |
Нет
OST_DTIMER dtimer; void Task (void) { OS_Dtimer_Create(dtimer); for (;;) { /*...*/ // В течение секунды генерируем меандр 100 Гц OS_Dtimer_Run (dtimer, 1000); do { RB1 = 1; OS_Delay(5); RB1 = 0; OS_Delay(5); } while (!OS_Dtimer_Check(dtimer)); /*...*/ } }
OS_RunDTimer