--- /dev/null
+#include "implementation.oil"\r
+\r
+CPU ATMEL_AT91SAM7S256\r
+{\r
+ OS LEJOS_OSEK\r
+ {\r
+ STATUS = EXTENDED;\r
+ STARTUPHOOK = FALSE;\r
+ ERRORHOOK = FALSE;\r
+ SHUTDOWNHOOK = FALSE;\r
+ PRETASKHOOK = FALSE;\r
+ POSTTASKHOOK = FALSE;\r
+ USEGETSERVICEID = FALSE;\r
+ USEPARAMETERACCESS = FALSE;\r
+ USERESSCHEDULER = FALSE;\r
+ };\r
+\r
+ /* Definition of application mode */\r
+ APPMODE appmode1{}; \r
+\r
+ EVENT SensorEventMask {\r
+ MASK = AUTO;\r
+ };\r
+\r
+ EVENT SleepEventMask {\r
+ MASK = AUTO;\r
+ };\r
+\r
+ TASK LeftMotorTask\r
+ {\r
+ AUTOSTART = TRUE {\r
+ APPMODE = appmode1;\r
+ };\r
+ EVENT = SensorEventMask;\r
+ EVENT = SleepEventMask;\r
+ PRIORITY = 1; /* Smaller value means lower priority */ \r
+ ACTIVATION = 1;\r
+ SCHEDULE = FULL;\r
+ STACKSIZE = 512; /* Stack size */ \r
+ };\r
+\r
+ TASK RightMotorTask\r
+ {\r
+ AUTOSTART = TRUE {\r
+ APPMODE = appmode1;\r
+ };\r
+ EVENT = SensorEventMask;\r
+ EVENT = SleepEventMask;\r
+ PRIORITY = 1; /* Smaller value means lower priority */ \r
+ ACTIVATION = 1;\r
+ SCHEDULE = FULL;\r
+ STACKSIZE = 512; /* Stack size */ \r
+ };\r
+\r
+ TASK SonarTask\r
+ {\r
+ AUTOSTART = TRUE {\r
+ APPMODE = appmode1;\r
+ };\r
+ EVENT = SensorEventMask;\r
+ EVENT = SleepEventMask;\r
+ PRIORITY = 1; /* Smaller value means lower priority */ \r
+ ACTIVATION = 1;\r
+ SCHEDULE = FULL;\r
+ STACKSIZE = 512; /* Stack size */ \r
+ };\r
+\r
+ TASK SensorMonitorTask {\r
+ AUTOSTART = FALSE;\r
+ PRIORITY = 1;\r
+ ACTIVATION = 1;\r
+ SCHEDULE = FULL;\r
+ STACKSIZE = 512;\r
+ };\r
+\r
+ /* Definition of OSEK Alarm Counter */\r
+ COUNTER SensorMonitorCounter\r
+ {\r
+ MINCYCLE = 1;\r
+ MAXALLOWEDVALUE = 10000;\r
+ TICKSPERBASE = 1; /* One tick is equal to 1msec */ \r
+ };\r
+\r
+ /* Definition of SensorMonitorTask execution timing */\r
+ ALARM cyclic_alarm\r
+ {\r
+ COUNTER = SensorMonitorCounter;\r
+ ACTION = ACTIVATETASK\r
+ {\r
+ TASK = SensorMonitorTask;\r
+ };\r
+ AUTOSTART = TRUE\r
+ {\r
+ ALARMTIME = 1;\r
+ CYCLETIME = 10; /* Task is executed every 10msec */\r
+ APPMODE = appmode1;\r
+ };\r
+ };\r
+};\r
+\r