OSEK OSEK {

OS	ExampleOS {
	STATUS = CT_STATUS;
	PRETASKHOOK = TRUE;
	POSTTASKHOOK = TRUE;
   STARTUPHOOK = TRUE;
   ERRORHOOK = TRUE;
   SHUTDOWNHOOK = FALSE;
	MEMMAP = FALSE;
	USERESSCHEDULER = FALSE;
};

TASK Task1 {
   PRIORITY = 1;
   SCHEDULE = CT_SCHEDULING_TASK1;
   ACTIVATION = 1;
   AUTOSTART = FALSE;
	STACK = 256;
	TYPE = BASIC;
};

TASK Task2 {
	PRIORITY = 2;
	SCHEDULE = CT_SCHEDULING_TASK2;
	ACTIVATION = 1;
	AUTOSTART = FALSE;
	STACK = 256;
	TYPE = BASIC;
}

COUNTER HardwareCounter {
	MAXALLOWEDVALUE = 100000;
	TICKSPERBASE = 10;
	MINCYCLE = 1;
	TYPE = HARDWARE;
	COUNTER = HWCOUNTER0;
};

COUNTER Counter1 {
	MAXALLOWEDVALUE = 16;
	TICKSPERBASE = 1;
	MINCYCLE = 1;
	TYPE = SOFTWARE;
};

ALARM IncrementSWCounter {
	COUNTER = HardwareCounter;
	ACTION = INCREMENT {
		COUNTER = Counter1;
	};
	AUTOSTART = TRUE {
		APPMODE = AppMode1;
		ALARMTIME = 1;
		CYCLETIME = 1;
	};
};

ALARM Alarm1 {
	COUNTER = Counter1;
	ACTION = ACTIVATETASK {
		TASK = Task2;
	};
	AUTOSTART = FALSE;
};


APPMODE AppMode1;

};
