Ваторопин Андрей

Таймер в RTX Keil

3 сообщения в этой теме

Добрый день форумчане!

Помогите с простым вопросом. Осваиваю таймеры в ОСРВ RTX Keil. 

#include <RTL.h>
#include <stm32f4xx.h>                 
#include "LED.h"

unsigned int LED_Green = 0;
unsigned int LED_Orange = 1;

OS_ID  timer0, timer1; // переменные для таймера

__task void task1 (void); // задача

    
void os_tmr_call (U16 info) // функция вызова по истечении таймера (любого)
{
        switch (info)
        {
            case 1:  LED_On (LED_Green);  LED_On (LED_Orange);             break;   // первый таймер
                                    
            case 2:  LED_On (LED_Green);  LED_On (LED_Orange);          break;  // второй таймер
        }
}

__task void task1 (void) // задача 
{      
    timer1 = os_tmr_create ( 10,2 ); // создаем таймер

    for (;;)
    {        

    }
}


int main (void)
{
  SystemCoreClockUpdate();
  LED_Init ();                              /* Initialize the LEDs */    
   timer0 = os_tmr_create ( 10, 1 );

   os_sys_init(task1);                      /* Initialize RTX and start init */ 
    for (;;);
}

По коду стартуем задачу 1 далее должен сработать любой из таймеров, по истечении вызывается функция os_tmr_call и зажигаются диоды. Но этого не происходит почему то.

Прошу помощи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Yurkin2015    297

Попробуйте добавить строчку для определения максимального количества используемых таймеров. Может оно по умолчанию =0?

#define OS_TIMERCNT 2

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...