Народ, если кто пользует порт uCOS под Win32 помогите плз! Взял порт для uCOS'а чтобы отлаживать программу на PC. Все было отлично до тех пор, пока у меня была всего одна пользовательская задача. Когда я добавил вторую все сломалось :( Берем примерчик из запуска задач, где внчале запускается задача AppStartTask, из которой можно стартовать все необходимые задачи. Добавляю в нее следующий код:
OSTaskCreateExt(Task1,
(void *)0,
(OS_STK *)&Task1Stk[TASK_STK_SIZE-1],
TASK1_PRIO,
TASK1_PRIO,
(OS_STK *)&Task1Stk[0],
TASK_STK_SIZE,
(void *)0,
OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
Sleep(500);
OSTaskCreateExt(Task2,
(void *)0,
(OS_STK *)&Task2Stk[TASK_STK_SIZE-1],
TASK2_PRIO,
TASK2_PRIO,
(OS_STK *)&Task2Stk[0],
TASK_STK_SIZE,
(void *)0,
OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
В результате оба вызова OSTaskCreateExt возвращают, что все хорошо, но реально управелние получает только одна задача - та, которая имеет более высокий приоритет. Пробовал ее приостанавливать Sleep'ом - не помогает. В чем дело? Вроде все сделано правильно... Заранее спасибо.
-
- Разобрался слегонца... goz(75 знак., 05.01.2006 15:09, )