OIL_VERSION = "4.0"; #include IMPLEMENTATION trampoline { TASK { } ; ISR { } ; }; CPU tp1 { /* This is the configuration of the operating system */ OS config { /* Standard error checking, may be set to EXTENDED */ STATUS = EXTENDED; /* * the C files containing the source code off the application * If you use more than one C file, use many APP_SRC attributes */ BUILD = TRUE { APP_SRC = "ioc_s6.c"; APP_SRC = "task1_instance.c"; APP_SRC = "task2_instance.c"; /* The location of the Trampoline directory */ TRAMPOLINE_BASE_PATH = "../../.."; /* The name of the executable file */ APP_NAME = "ioc_s6_exe"; }; PRETASKHOOK = FALSE; POSTTASKHOOK = FALSE; STARTUPHOOK = FALSE; SHUTDOWNHOOK = TRUE; } ; COM config { COMSTATUS = COMEXTENDED; COMERRORHOOK = FALSE; COMUSEGETSERVICEID = FALSE; COMUSEPARAMETERACCESS = FALSE; COMSTARTCOMEXTENSION = FALSE; }; /* A default APPMODE */ APPMODE std { }; TASK t1 { PRIORITY = 1; AUTOSTART = TRUE { APPMODE = std; }; ACTIVATION = 1; SCHEDULE = FULL; }; TASK t2 { PRIORITY = 2; AUTOSTART = FALSE; ACTIVATION = 1; SCHEDULE = FULL; ACCESSING_APPLICATION = os_app1; }; APPLICATION os_app1{ TASK = t1; IOC = ioc1; IOC = ioc2; HAS_RESTARTTASK = FALSE; }; APPLICATION os_app2{ TASK = t2; IOC = ioc1; IOC = ioc2; HAS_RESTARTTASK = FALSE; }; IOC ioc1 { DATATYPENAME TestType1 { DATATYPEPROPERTY = DATA; }; DATATYPENAME TestType2 { DATATYPEPROPERTY = REFERENCE; }; SEMANTICS = QUEUED { BUFFER_LENGTH = 3; }; RECEIVER RCV { RCV_OSAPPLICATION = os_app2; RECEIVER_PULL_CB = AUTO; ACTION = NONE; }; SENDER SND { SENDER_ID = 0; SND_OSAPPLICATION = os_app1; }; }; IOC ioc2 { DATATYPENAME TestType1 { DATATYPEPROPERTY = DATA; }; DATATYPENAME TestType2 { DATATYPEPROPERTY = REFERENCE; }; SEMANTICS = QUEUED { BUFFER_LENGTH = 3; }; RECEIVER RCV { RCV_OSAPPLICATION = os_app1; RECEIVER_PULL_CB = AUTO; ACTION = NONE; }; SENDER SND { SENDER_ID = 0; SND_OSAPPLICATION = os_app2; }; }; } ;