====== OSA : OS_Dtimer_Run ====== **OS_Dtimer_Run (dtimer, newtime)**\\ === === {{osa:ref:attr_call_to.png|Сервис использует таймаут}} Запустить //dtimer// на отсчет времени //newtime// с момента вызова этого сервиса. Флаг переполнения сбрасывается. Для использования динамических таймеров в файле ##[[osa:ref:appendix:configuration|OSAcfg.h]]## нужно определить константу ##[[osa:ref:appendix:configuration#Системные константы|OS_ENABLE_DTIMERS]]##. Разрядность динамических таймеров такая же, как и у системного, и задается константой ##[[osa:ref:appendix:configuration#Типы данных|OS_TIMER_SIZE]]##. === Разрешен вызов: === Везде === Параметры функции: === {| class = "fpl" |- |//''dtimer''// |Дескриптор динамического таймера типа ##[[osa:ref:description:data_types#OST_DTIMER|OST_DTIMER]]##. Содержит счетчик таймера, а также информацию о состоянии (считает, остановлен, активен, переполнение). Может размещаться в памяти только в **bank0** или **bank1** |- |//''newtime''// |Время, на которое запускается таймер. Задается в системных тиках - периодах вызова сервиса ##[[osa:ref:allservices:OS_Timer|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)); /*...*/ } } === Old style name === **OS_RunDTimer**\\ === См. также === * [[osa:ref:allservices:OS_Dtimer_Create|OS_Dtimer_Create]] * [[osa:ref:allservices:OS_Dtimer_Delete|OS_Dtimer_Delete]] * [[osa:ref:allservices:OS_Dtimer_Run|OS_Dtimer_Run]] * [[osa:ref:allservices:OS_Dtimer_Break|OS_Dtimer_Break]] * [[osa:ref:allservices:OS_Dtimer_Wait|OS_Dtimer_Wait]] * [[osa:ref:allservices:OS_Dtimer_Delay|OS_Dtimer_Delay]] * [[osa:ref:allservices:OS_Dtimer_Get|OS_Dtimer_Get]] * [[osa:ref:allservices:OS_Dtimer_Check|OS_Dtimer_Check]] * [[osa:ref:allservices:OS_Dtimer_IsRun|OS_Dtimer_IsRun]] * [[osa:ref:allservices:OS_Dtimer_Pause|OS_Dtimer_Pause]] * [[osa:ref:allservices:OS_Dtimer_Continue|OS_Dtimer_Continue]] * [[osa:ref:allservices:OS_Dtimer_Update|OS_Dtimer_Update]] * [[osa:ref:allservices:OS_Dtimer_Add|OS_Dtimer_Add]] * [[osa:ref:allservices:OS_Dtimer_IsActive|OS_Dtimer_IsActive]] * [[osa:ref:allservices:OS_Dtimer_IsStopped|OS_Dtimer_IsStopped]] ---- * [[osa:ref:services:alphabetical|Алфавитный указатель]] * [[osa:ref:services:brieflist|Все сервисы]] ~~UP~~