[270] | 1 | /*
|
---|
| 2 | * ãµã³ãã«ããã°ã©ã (2)ã®ã³ã³ãã¼ãã³ãè¨è¿°ãã¡ã¤ã«
|
---|
| 3 | *
|
---|
| 4 | * $Id: tSample2.cdl 270 2017-02-09 04:03:47Z coas-nagasima $
|
---|
| 5 | */
|
---|
| 6 | /*
|
---|
| 7 | * ã«ã¼ãã«ãªãã¸ã§ã¯ãã®å®ç¾©
|
---|
| 8 | */
|
---|
| 9 | import("kernel.cdl");
|
---|
| 10 |
|
---|
| 11 | /*
|
---|
| 12 | * ã¿ã¼ã²ããéä¾åã®ã»ã«ã¿ã¤ãã®å®ç¾©
|
---|
| 13 | */
|
---|
| 14 | import("syssvc/tSerialPort.cdl");
|
---|
| 15 | import("syssvc/tSysLog.cdl");
|
---|
| 16 | import("syssvc/tLogTask.cdl");
|
---|
| 17 | import("syssvc/tBanner.cdl");
|
---|
| 18 |
|
---|
| 19 | /*
|
---|
| 20 | * ã¿ã¼ã²ããä¾åé¨ã®åãè¾¼ã¿
|
---|
| 21 | */
|
---|
| 22 | import("target.cdl");
|
---|
| 23 |
|
---|
| 24 | /*
|
---|
| 25 | * ãã»ã«ã®çµä¸ãè¨è¿°ãã¨ã¯ï¼"cell"ã§å§ã¾ãè¡ããï¼ããã«å¯¾å¿ãã"};"
|
---|
| 26 | * ã®è¡ã¾ã§ã®ãã¨ãè¨ãï¼
|
---|
| 27 | */
|
---|
| 28 |
|
---|
| 29 | /*
|
---|
| 30 | * ã·ã¹ãã ãã°æ©è½ã®çµä¸ãè¨è¿°
|
---|
| 31 | *
|
---|
| 32 | * ã·ã¹ãã ãã°æ©è½ãå¤ãå ´åã«ã¯ï¼ä»¥ä¸ã®ã»ã«ã®çµä¸ãè¨è¿°ãåé¤ãï¼ã³
|
---|
| 33 | * ã³ãã¤ã«ãªãã·ã§ã³ã«-DTOPPERS_OMIT_SYSLOGã追å ããã°ããï¼ãã ãï¼
|
---|
| 34 | * ã·ã¹ãã ãã°ã¿ã¹ã¯ã¯ã·ã¹ãã ãã°æ©è½ã使ç¨ããããï¼ãããå¤ããã¨
|
---|
| 35 | * ãå¿
|
---|
| 36 | è¦ã§ããï¼ã¾ãï¼ã·ã¹ãã ãã°æ©è½ã®ã¢ããã¿ãå¤ããªããã°ãªããª
|
---|
| 37 | * ãï¼tecsgenãè¦åã¡ãã»ã¼ã¸ãåºããï¼ç¡è¦ãã¦ããï¼
|
---|
| 38 | */
|
---|
| 39 | cell tSysLog SysLog {
|
---|
| 40 | logBufferSize = 32; /* ãã°ãããã¡ã®ãµã¤ãº */
|
---|
| 41 | initLogMask = C_EXP("LOG_UPTO(LOG_NOTICE)");
|
---|
| 42 | /* ãã°ãããã¡ã«è¨é²ãã¹ãéè¦åº¦ */
|
---|
| 43 | initLowMask = C_EXP("LOG_UPTO(LOG_EMERG)");
|
---|
| 44 | /* ä½ã¬ãã«åºåãã¹ãéè¦åº¦ */
|
---|
| 45 |
|
---|
| 46 | /* ä½ã¬ãã«åºåã¨ã®çµå */
|
---|
| 47 | cPutLog = PutLogTarget.ePutLog;
|
---|
| 48 | };
|
---|
| 49 |
|
---|
| 50 | /*
|
---|
| 51 | * ã·ãªã¢ã«ã¤ã³ã¿ãã§ã¼ã¹ãã©ã¤ãã®çµä¸ãè¨è¿°
|
---|
| 52 | *
|
---|
| 53 | * ã·ãªã¢ã«ã¤ã³ã¿ãã§ã¼ã¹ãã©ã¤ããå¤ãå ´åã«ã¯ï¼ä»¥ä¸ã®ã»ã«ã®çµä¸ãè¨
|
---|
| 54 | * è¿°ãåé¤ããã°ããï¼ãã ãï¼ã·ã¹ãã ãã°ã¿ã¹ã¯ã¯ã·ãªã¢ã«ã¤ã³ã¿ãã§ã¼
|
---|
| 55 | * ã¹ãã©ã¤ãã使ç¨ããããï¼ãããå¤ããã¨ãå¿
|
---|
| 56 | è¦ã§ããï¼ã¾ãï¼ã·ãªã¢
|
---|
| 57 | * ã«ã¤ã³ã¿ãã§ã¼ã¹ãã©ã¤ãã®ã¢ããã¿ãå¤ããªããã°ãªããªãï¼
|
---|
| 58 | */
|
---|
| 59 | cell tSerialPort SerialPort1 {
|
---|
| 60 | receiveBufferSize = 256; /* åä¿¡ãããã¡ã®ãµã¤ãº */
|
---|
| 61 | sendBufferSize = 256; /* éä¿¡ãããã¡ã®ãµã¤ãº */
|
---|
| 62 |
|
---|
| 63 | /* ã¿ã¼ã²ããä¾åé¨ã¨ã®çµå */
|
---|
| 64 | cSIOPort = SIOPortTarget1.eSIOPort;
|
---|
| 65 | eiSIOCBR <= SIOPortTarget1.ciSIOCBR; /* ã³ã¼ã«ãã㯠*/
|
---|
| 66 | };
|
---|
| 67 |
|
---|
| 68 | /*
|
---|
| 69 | * ã·ã¹ãã ãã°ã¿ã¹ã¯ã®çµä¸ãè¨è¿°
|
---|
| 70 | *
|
---|
| 71 | * ã·ã¹ãã ãã°ã¿ã¹ã¯ãå¤ãå ´åã«ã¯ï¼ä»¥ä¸ã®ã»ã«ã®çµä¸ãè¨è¿°ãåé¤ãã
|
---|
| 72 | * ã°ããï¼
|
---|
| 73 | */
|
---|
| 74 | cell tLogTask LogTask {
|
---|
| 75 | priority = 3; /* ã·ã¹ãã ãã°ã¿ã¹ã¯ã®åªå
|
---|
| 76 | 度 */
|
---|
| 77 | stackSize = LogTaskStackSize; /* ã·ã¹ãã ãã°ã¿ã¹ã¯ã®ã¹ã¿ãã¯ãµã¤ãº */
|
---|
| 78 |
|
---|
| 79 | /* ã·ãªã¢ã«ã¤ã³ã¿ãã§ã¼ã¹ãã©ã¤ãã¨ã®çµå */
|
---|
| 80 | cSerialPort = SerialPort1.eSerialPort;
|
---|
| 81 | cnSerialPortManage = SerialPort1.enSerialPortManage;
|
---|
| 82 |
|
---|
| 83 | /* ã·ã¹ãã ãã°æ©è½ã¨ã®çµå */
|
---|
| 84 | cSysLog = SysLog.eSysLog;
|
---|
| 85 |
|
---|
| 86 | /* ä½ã¬ãã«åºåã¨ã®çµå */
|
---|
| 87 | cPutLog = PutLogTarget.ePutLog;
|
---|
| 88 | };
|
---|
| 89 |
|
---|
| 90 | /*
|
---|
| 91 | * ã«ã¼ãã«èµ·åã¡ãã»ã¼ã¸åºåã®çµä¸ãè¨è¿°
|
---|
| 92 | *
|
---|
| 93 | * ã«ã¼ãã«èµ·åã¡ãã»ã¼ã¸ã®åºåãå¤ãå ´åã«ã¯ï¼ä»¥ä¸ã®ã»ã«ã®çµä¸ãè¨è¿°
|
---|
| 94 | * ãåé¤ããã°ããï¼
|
---|
| 95 | */
|
---|
| 96 | cell tBanner Banner {
|
---|
| 97 | /* å±æ§ã®è¨å® */
|
---|
| 98 | targetName = BannerTargetName;
|
---|
| 99 | copyrightNotice = BannerCopyrightNotice;
|
---|
| 100 | };
|
---|
| 101 |
|
---|
| 102 | /*
|
---|
| 103 | * ãµã³ãã«ããã°ã©ã ã®å®ç¾©
|
---|
| 104 | */
|
---|
| 105 | [singleton]
|
---|
| 106 | celltype tSample2 {
|
---|
| 107 | require tKernel.eKernel; /* å¼ã³å£åãªãï¼ä¾ï¼delayï¼*/
|
---|
| 108 | /*require cKernel = tKernel.eKernel;/* å¼ã³å£åããï¼ä¾ï¼cKernel_delayï¼*/
|
---|
| 109 | require ciKernel = tKernel.eiKernel;/* å¼ã³å£åããï¼ä¾ï¼ciKernel_ï¼*/
|
---|
| 110 |
|
---|
| 111 | call sTask cTask[4]; /* ã¿ã¹ã¯æä½ */
|
---|
| 112 | call sTask cExceptionTask;
|
---|
| 113 | call sCyclic cCyclic;
|
---|
| 114 | call sAlarm cAlarm;
|
---|
| 115 |
|
---|
| 116 | [optional] call sSerialPort cSerialPort;/* ã·ãªã¢ã«ãã©ã¤ãã¨ã®æ¥ç¶ */
|
---|
| 117 | call sSysLog cSysLog; /* ã·ã¹ãã ãã°æ©è½ã¨ã®æ¥ç¶ */
|
---|
| 118 |
|
---|
| 119 | entry sTaskBody eMainTask; /* Mainã¿ã¹ã¯ */
|
---|
| 120 | entry sTaskBody eSampleTask[3]; /* 並è¡å®è¡ãããã¿ã¹ã¯ */
|
---|
| 121 | entry sTaskBody eExceptionTask; /* ä¾å¤å¦çã¿ã¹ã¯ */
|
---|
| 122 |
|
---|
| 123 | entry siHandlerBody eiCyclicHandler;/* å¨æãã³ãã©*/
|
---|
| 124 | entry siHandlerBody eiAlarmHandler; /* ã¢ã©ã¼ã ãã³ãã© */
|
---|
| 125 | };
|
---|
| 126 |
|
---|
| 127 | /*
|
---|
| 128 | * çµã¿ä¸ãè¨è¿°
|
---|
| 129 | */
|
---|
| 130 |
|
---|
| 131 | /* Sample2ã®ãããã¿ã¤ãå®£è¨ */
|
---|
| 132 | cell tSample2 Sample2;
|
---|
| 133 |
|
---|
| 134 | cell tKernel ASPKernel{
|
---|
| 135 | };
|
---|
| 136 |
|
---|
| 137 | cell tTask MainTask {
|
---|
| 138 | /* å¼ã³å£ã®çµå */
|
---|
| 139 | cTaskBody = Sample2.eMainTask;
|
---|
| 140 | /* å±æ§ã®è¨å® */
|
---|
| 141 | attribute = C_EXP("TA_ACT");
|
---|
| 142 | priority = C_EXP("MAIN_PRIORITY");
|
---|
| 143 | stackSize = C_EXP("STACK_SIZE");
|
---|
| 144 | };
|
---|
| 145 |
|
---|
| 146 | cell tTask Task1 {
|
---|
| 147 | /* å¼ã³å£ã®çµå */
|
---|
| 148 | cTaskBody = Sample2.eSampleTask[0];
|
---|
| 149 | /* å±æ§ã®è¨å® */
|
---|
| 150 | priority = C_EXP("MID_PRIORITY");
|
---|
| 151 | stackSize = C_EXP("STACK_SIZE");
|
---|
| 152 | };
|
---|
| 153 |
|
---|
| 154 | cell tTask Task2 {
|
---|
| 155 | /* å¼ã³å£ã®çµå */
|
---|
| 156 | cTaskBody = Sample2.eSampleTask[1];
|
---|
| 157 | /* å±æ§ã®è¨å® */
|
---|
| 158 | priority = C_EXP("MID_PRIORITY");
|
---|
| 159 | stackSize = C_EXP("STACK_SIZE");
|
---|
| 160 | };
|
---|
| 161 |
|
---|
| 162 | cell tTask Task3 {
|
---|
| 163 | /* å¼ã³å£ã®çµå */
|
---|
| 164 | cTaskBody = Sample2.eSampleTask[2];
|
---|
| 165 | /* å±æ§ã®è¨å® */
|
---|
| 166 | priority = C_EXP("MID_PRIORITY");
|
---|
| 167 | stackSize = C_EXP("STACK_SIZE");
|
---|
| 168 | };
|
---|
| 169 |
|
---|
| 170 | cell tTask ExceptionTask {
|
---|
| 171 | /* å¼ã³å£ã®çµå */
|
---|
| 172 | cTaskBody = Sample2.eExceptionTask;
|
---|
| 173 | /* å±æ§ã®è¨å® */
|
---|
| 174 | priority = C_EXP("EXC_PRIORITY");
|
---|
| 175 | stackSize = C_EXP("STACK_SIZE");
|
---|
| 176 | };
|
---|
| 177 |
|
---|
| 178 | cell tCyclicHandler CyclicHandler {
|
---|
| 179 | /* å¼ã³å£ã®çµå */
|
---|
| 180 | ciHandlerBody = Sample2.eiCyclicHandler;
|
---|
| 181 | /* å±æ§ã®è¨å® */
|
---|
| 182 | cycleTime = 2000000;
|
---|
| 183 | };
|
---|
| 184 |
|
---|
| 185 | cell tAlarmHandler AlarmHandler {
|
---|
| 186 | ciHandlerBody = Sample2.eiAlarmHandler;
|
---|
| 187 | };
|
---|
| 188 |
|
---|
| 189 | cell tSample2 Sample2 {
|
---|
| 190 | /* å¼ã³å£ã®çµå */
|
---|
| 191 | cTask[ 0 ] = MainTask.eTask;
|
---|
| 192 | cTask[ 1 ] = Task1.eTask;
|
---|
| 193 | cTask[ 2 ] = Task2.eTask;
|
---|
| 194 | cTask[ 3 ] = Task3.eTask;
|
---|
| 195 |
|
---|
| 196 | cExceptionTask = ExceptionTask.eTask;
|
---|
| 197 |
|
---|
| 198 | cCyclic = CyclicHandler.eCyclic;
|
---|
| 199 | cAlarm = AlarmHandler.eAlarm;
|
---|
| 200 |
|
---|
| 201 | cSerialPort = SerialPort1.eSerialPort;
|
---|
| 202 | cSysLog = SysLog.eSysLog;
|
---|
| 203 | };
|
---|