собрал систему на SOPS, написал прогу
#include <stdio.h> #include "includes.h" #include "system.h"
OS_STK Stack[2048]; ALT_FLAG_GRP(Flags);
void Task(void* pdata) { while (true) { OSTimeDlyHMSM(0, 0, 1, 0); fprintf(stderr, "Flags 1 = %04x\n", Flags->OSFlagFlags); ALT_FLAG_POST(Flags, 0x80, OS_FLAG_SET); fprintf(stderr, "Flags 2 = %04x\n", Flags->OSFlagFlags); ALT_FLAG_PEND(Flags, 0x80, OS_FLAG_WAIT_SET_ANY + OS_FLAG_CONSUME, 0); } }
// ********************************************************************* // The main function creates tasks and starts multi-tasking // ********************************************************************* int main(void) { OSInit();
ALT_FLAG_CREATE(&Flagsq, 0);
OSTaskCreateExt( Task, (void*)0, &Stack[2047], 10, 10, Stack, 2048, (void*)0, 0);
OSStart(); return 0; }
так вот при запуске выводит
Flags 1 = 0000 Flags 2 = 0082
Бьюсь уже неделю не могу понять откуда двойка берется? Помогите
--------------------
Человек - это существо, которое охотнее всего рассуждает о том, в чем меньше всего разбирается.
|