00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef CONFIG_TESTWATCHDOG_H_
00026 #define CONFIG_TESTWATCHDOG_H_
00027
00028
00029
00030
00031
00032
00033
00034 #define cfgSysOptimized cfgFalse
00035 #define cfgSysDebug cfgFalse
00036 #define cfgSysInline cfgFalse
00037 #define cfgSysFramePointerCounterMeasures cfgFalse
00038 #define cfgSysReduceProEpilogue cfgBikini
00039 #define cfgSysRegisterCheckByte 0xA5
00040 #define cfgSysStackGrowthUp cfgFalse
00041 #define cfgSysZeroPageStack cfgFalse
00042 #define cfgSysClearUnusedR1 cfgTrue
00043 #define cfgSysSqueezeState defSysOptimized
00044 #define cfgSysReuseOsStack cfgTrue
00045 #define cfgSysClockDivider 1
00046 #define cfgSysSubTicksPerFullTick 32
00047 #define cfgSysSubTickDivider 256
00048 #define cfgSysGCCstartup cfgOverride
00049 #define cfgSysFsStorageSpace 0
00050
00051
00052
00053
00054
00055
00056 #define cfgIntGlobalOnly cfgTrue
00057 #define cfgIntUserDefined cfgFalse
00058 #define cfgIntSwitchUsesOSstack cfgFalse
00059 #define cfgIntOsProtected cfgTrue
00060 #define cfgIntTickTrack cfgFalse
00061 #define cfgIntManualTicks cfgFalse
00062
00063
00064
00065
00066
00067
00068 #if (defSysOptimized == cfgTrue)
00069
00070 #define cfgCheckSystem cfgFalse
00071 #define cfgCheckReset cfgFalse
00072 #define cfgCheckTrace cfgFalse
00073 #define cfgCheckAlwaysFatal cfgFalse
00074 #define cfgCheckWatermarks cfgFalse
00075 #define cfgCheckOsStack cfgFalse
00076 #define cfgCheckTaskStack cfgFalse
00077 #define cfgCheckIsrStack cfgFalse
00078 #define cfgCheckRegisters cfgFalse
00079 #define cfgCheckTiming cfgFalse
00080 #define cfgCheckQueuFilling cfgFalse
00081 #define cfgCheckMethodUse cfgFalse
00082 #define cfgCheckApplication cfgFalse
00083
00084 #else
00085
00086 #define cfgCheckSystem cfgTrue
00087 #define cfgCheckReset cfgTrue
00088 #define cfgCheckTrace cfgFalse
00089 #define cfgCheckAlwaysFatal cfgFalse
00090 #define cfgCheckWatermarks cfgTrue
00091 #define cfgCheckOsStack cfgTrue
00092 #define cfgCheckTaskStack cfgTrue
00093 #define cfgCheckIsrStack cfgFalse
00094 #define cfgCheckRegisters cfgTrue
00095 #define cfgCheckTiming cfgFalse
00096 #define cfgCheckQueuFilling cfgFalse
00097 #define cfgCheckMethodUse cfgTrue
00098 #define cfgCheckApplication cfgFalse
00099
00100 #endif
00101
00102
00103
00104
00105
00106
00107 #define cfgUseEquidistantTicks cfgTrue
00108 #define cfgUseDelay cfgTrue
00109 #define cfgUseSynchronization cfgSyncSingleSlot
00110 #define cfgUseHierarchicalRoundRobin cfgFalse
00111 #define cfgUseNestedCriticals cfgFalse
00112 #define cfgUsePrioritizedRelease cfgFalse
00113 #define cfgUsePriorityLifting cfgFalse
00114 #define cfgUseTaskWatchdog cfgTrue
00115 #define cfgUseCorrectWakeupTimes cfgFalse
00116 #define cfgUseTimeout cfgFalse
00117 #define cfgUseTasknames cfgFalse
00118 #define cfgUseLowPowerSleep cfgFalse
00119 #define cfgUseLowPowerOnDelay cfgFalse
00120 #define cfgUseLowPowerDelayRelease cfgFalse
00121 #define cfgUseLoadMonitor cfgFalse
00122 #define cfgUseFileSystem cfgFalse
00123 #define cfgUseFileSystemConcurrentRead cfgFalse
00124 #define cfgUseFileSystemEconomyMode cfgFalse
00125 #define cfgUseFileSystemMaintainFAT cfgFalse
00126 #define cfgUseEvents cfgFalse
00127 #define cfgUseEventsOnVariables cfgFalse
00128
00129
00130
00131
00132
00133
00134 #define cfgNumWatchdogDiv 4
00135 #define cfgNumMonitorDiv 0
00136 #define cfgNumSleepPeriod 0
00137 #define cfgNumSleepThreshold 0
00138 #define cfgNumGlobWidth 0
00139 #define cfgNumSwitchWidth 0
00140 #define cfgNumTickWidth 0
00141
00142
00143
00144
00145
00146
00147 #define callAppTick00 cfgFalse
00148 #define callAppTick08 cfgFalse
00149 #define callAppTick16 cfgFalse
00150 #define callAppTickSleep cfgFalse
00151 #define callAppEnterIdle cfgFalse
00152 #define callAppEnterSleep cfgFalse
00153 #define callAppExitSleep cfgFalse
00154 #define callAppBoot cfgTrue
00155 #define callAppInit cfgFalse
00156 #define callAppBark cfgTrue
00157
00158
00159
00160
00161
00162
00163
00164 #define includeTaskYield cfgFalse
00165 #define includeTaskDelayFromNow cfgTrue
00166 #define includeTaskDelayFromWake cfgFalse
00167 #define includeGenSuspend cfgTrue
00168 #define includeTaskSuspend cfgFalse
00169 #define includeGenResume cfgTrue
00170 #define includeTaskSleep cfgFalse
00171 #define includeTaskSleepAll cfgFalse
00172 #define includeGenSetPriority cfgTrue
00173 #define includeGenGetPriority cfgTrue
00174 #define includeGenGetTickCount cfgFalse
00175 #define includeGenAddtoTickCount cfgFalse
00176 #define includeGenGetLastWakeTime cfgFalse
00177 #define includeTaskFeedWatchdog cfgTrue
00178 #define includeTaskKillWatchdog cfgTrue
00179 #define includeGenGetTaskname cfgFalse
00180 #define includeTaskTerminate cfgFalse
00181 #define includeGenReboot cfgFalse
00182 #define includeTaskRecreate cfgFalse
00183 #define includeTaskRestart cfgFalse
00184 #define includeGenLogTask cfgFalse
00185 #define includeGenLogOs cfgFalse
00186 #define includeGenTrace cfgFalse
00187 #define includeGenPipeInt16 cfgFalse
00188 #define includeGenPassFlashString cfgFalse
00189
00190
00191 #define includeTaskWaitForEvents cfgFalse
00192 #define includeIsrFireEvent cfgFalse
00193 #define includeGenFireEvent cfgFalse
00194 #define includeGenFireEventSet cfgFalse
00195 #define includeGenCountEventBlocks cfgFalse
00196
00197
00198 #define includeTaskWaitForTasks cfgTrue
00199 #define includeGenWaitRelease cfgFalse
00200 #define includeTaskMutex cfgFalse
00201 #define includeTaskQueu cfgFalse
00202
00203
00204 #define includeGenQueuWrite cfgFalse
00205 #define includeGenQueuRead cfgFalse
00206 #define includeGenQueuClear cfgFalse
00207 #define includeGenQueuPeek cfgFalse
00208 #define includeGenQueuReadable cfgFalse
00209 #define includeGenQueuWriteable cfgFalse
00210 #define includeGenQueuFull cfgFalse
00211 #define includeGenQueuEmpty cfgFalse
00212
00213
00214 #define includeTaskFileAccess cfgFalse
00215 #define includeTaskFileFormat cfgFalse
00216 #define includeTaskFileGetSize cfgFalse
00217 #define includeTaskFileSetSize cfgFalse
00218 #define includeTaskFileReadByte cfgFalse
00219 #define includeTaskFileWriteByte cfgFalse
00220 #define includeTaskFileAppendByte cfgFalse
00221 #define includeTaskFileReadPipe cfgFalse
00222 #define includeTaskFileWritePipe cfgFalse
00223 #define includeTaskFileReadBuffer cfgFalse
00224 #define includeTaskFileWriteBuffer cfgFalse
00225
00226
00227 #define includeTaskProtectGlobalInterrupts cfgFalse
00228 #define includeTaskProtectSwitchTasks cfgFalse
00229 #define includeTaskProtectTickInterrupts cfgFalse
00230 #define includeTaskProtectGlobalCritical cfgFalse
00231 #define includeTaskProtectSwitchCritical cfgFalse
00232 #define includeTaskProtectTickCritical cfgFalse
00233
00234
00235 #define includeIsrEnter cfgFalse
00236 #define includeIsrExit cfgFalse
00237 #define includeIsrBegin cfgFalse
00238 #define includeIsrEndReturn cfgFalse
00239 #define includeIsrEndYield cfgFalse
00240 #define includeIsrStartLoad cfgFalse
00241 #define includeIsrStopLoad cfgFalse
00242
00243
00244 #define includeTaskStackCheck cfgFalse
00245 #define includeIsrStackCheck cfgFalse
00246
00247
00248
00249
00250
00251
00252 #define CN_00 LEDtask0
00253 #define CN_01 LEDtask1
00254 #define CN_02 LEDtask2
00255 #define CN_03 LEDtask3
00256 #define CN_04 LEDtask4
00257 #define CN_05 LEDtask5
00258 #define CN_06 LEDtask6
00259 #define CN_07 LEDtask7
00260 #define CN_08 Synchronize
00261 #define CN_09 Release
00262
00263
00264
00265
00266
00267
00268 #define TaskInclude_LEDtask0 cfgStartRunning
00269 #define TaskInclude_LEDtask1 cfgStartRunning
00270 #define TaskInclude_LEDtask2 cfgStartRunning
00271 #define TaskInclude_LEDtask3 cfgStartRunning
00272 #define TaskInclude_LEDtask4 cfgStartRunning
00273 #define TaskInclude_LEDtask5 cfgStartRunning
00274 #define TaskInclude_LEDtask6 cfgStartRunning
00275 #define TaskInclude_LEDtask7 cfgStartRunning
00276 #define TaskInclude_Synchronize cfgStartRunning
00277 #define TaskInclude_Release cfgStartRunning
00278
00279
00280
00281
00282
00283
00284 #define Capabilities_LEDtask0 cfgCapDelay | cfgCapWatchdog
00285 #define Capabilities_LEDtask1 cfgCapDelay
00286 #define Capabilities_LEDtask2 cfgCapDelay
00287 #define Capabilities_LEDtask3 cfgCapDelay | cfgCapSynchronization
00288 #define Capabilities_LEDtask4 cfgCapDelay
00289 #define Capabilities_LEDtask5 cfgCapDelay
00290 #define Capabilities_LEDtask6 cfgCapDelay
00291 #define Capabilities_LEDtask7 cfgCapDelay | cfgCapSynchronization
00292 #define Capabilities_Synchronize cfgCapDelay
00293 #define Capabilities_Release cfgCapDelay
00294
00295
00296
00297
00298
00299
00300 #if (defSysOptimized == cfgTrue)
00301
00302 #define StackSafety 0
00303 #define StackSizeOS 14 + 4*defThreeByteStackAdd
00304 #define StackSizeISR 0
00305 #define StackSizeShared 0
00306 #define StackSize_LEDtask0 15 + 2*defThreeByteStackAdd
00307 #define StackSize_LEDtask1 7 + 2*defThreeByteStackAdd
00308 #define StackSize_LEDtask2 7 + 2*defThreeByteStackAdd
00309 #define StackSize_LEDtask3 11 + 2*defThreeByteStackAdd
00310 #define StackSize_LEDtask4 7 + 2*defThreeByteStackAdd
00311 #define StackSize_LEDtask5 7 + 2*defThreeByteStackAdd
00312 #define StackSize_LEDtask6 7 + 2*defThreeByteStackAdd
00313 #define StackSize_LEDtask7 11 + 2*defThreeByteStackAdd
00314 #define StackSize_Synchronize 11 + 2*defThreeByteStackAdd
00315 #define StackSize_Release 23 + 3*defThreeByteStackAdd
00316
00317 #else
00318
00319 #define StackSafety 4
00320 #define StackSizeOS 32
00321 #define StackSizeISR 0
00322 #define StackSizeShared 0
00323 #define StackSize_LEDtask0 54
00324 #define StackSize_LEDtask1 32
00325 #define StackSize_LEDtask2 32
00326 #define StackSize_LEDtask3 32
00327 #define StackSize_LEDtask4 32
00328 #define StackSize_LEDtask5 32
00329 #define StackSize_LEDtask6 32
00330 #define StackSize_LEDtask7 32
00331 #define StackSize_Synchronize 40
00332 #define StackSize_Release 40
00333
00334 #endif
00335
00336
00337
00338
00339
00340
00341 #define TimeSliceIdleTime cfgSysSubTicksPerFullTick
00342 #define TimeSliceOverride cfgSysSubTicksPerFullTick
00343
00344
00345
00346
00347
00348
00349
00350
00351
00352
00353
00354 #define Priority_LEDtask0 3
00355 #define Priority_LEDtask1 3
00356 #define Priority_LEDtask2 3
00357 #define Priority_LEDtask3 2
00358 #define Priority_LEDtask4 2
00359 #define Priority_LEDtask5 1
00360 #define Priority_LEDtask6 1
00361 #define Priority_LEDtask7 0
00362 #define Priority_Synchronize 4
00363 #define Priority_Release 4
00364
00365
00366
00367
00368
00369
00370 #if (defSysOptimized == cfgTrue)
00371
00372 #define RegisterUse_LEDtask0 r12r13r14r15 | r16r17r18r19 | r24r25r26r27
00373 #define RegisterUse_LEDtask1 r24r25r26r27
00374 #define RegisterUse_LEDtask2 r24r25r26r27
00375 #define RegisterUse_LEDtask3 r24r25r26r27 | r20r21r22r23
00376 #define RegisterUse_LEDtask4 r24r25r26r27
00377 #define RegisterUse_LEDtask5 r24r25r26r27
00378 #define RegisterUse_LEDtask6 r24r25r26r27
00379 #define RegisterUse_LEDtask7 r24r25r26r27 | r20r21r22r23
00380 #define RegisterUse_Synchronize r16r17r18r19 | r24r25r26r27
00381 #define RegisterUse_Release r16_upto_r31
00382
00383 #else
00384
00385 #define RegisterUse_LEDtask0 r16_upto_r31 | r12r13r14r15
00386 #define RegisterUse_LEDtask1 r16_upto_r31
00387 #define RegisterUse_LEDtask2 r16_upto_r31
00388 #define RegisterUse_LEDtask3 r16_upto_r31
00389 #define RegisterUse_LEDtask4 r16_upto_r31
00390 #define RegisterUse_LEDtask5 r16_upto_r31
00391 #define RegisterUse_LEDtask6 r16_upto_r31
00392 #define RegisterUse_LEDtask7 r16_upto_r31
00393 #define RegisterUse_Synchronize r16_upto_r31
00394 #define RegisterUse_Release r16_upto_r31
00395
00396 #endif
00397
00398
00399
00400
00401
00402
00403 #define RegisterCheck_LEDtask0 registersAll
00404 #define RegisterCheck_LEDtask1 registersAll
00405 #define RegisterCheck_LEDtask2 registersAll
00406 #define RegisterCheck_LEDtask3 registersAll
00407 #define RegisterCheck_LEDtask4 registersAll
00408 #define RegisterCheck_LEDtask5 registersAll
00409 #define RegisterCheck_LEDtask6 registersAll
00410 #define RegisterCheck_LEDtask7 registersAll
00411 #define RegisterCheck_Synchronize registersAll
00412 #define RegisterCheck_Release registersAll
00413
00414
00415
00416
00417
00418
00419 #define InterruptStartOverride cfgGlobSet | cfgTickSet
00420
00421
00422
00423
00424
00425
00426
00427
00428
00429
00430
00431 #define SN_01 TrefPunt
00432
00433
00434
00435
00436
00437
00438 #define SlotSize_LEDtask0 1
00439 #define SlotSize_LEDtask1 1
00440 #define SlotSize_LEDtask2 1
00441 #define SlotSize_LEDtask3 1
00442 #define SlotSize_LEDtask4 1
00443 #define SlotSize_LEDtask5 1
00444 #define SlotSize_LEDtask6 1
00445 #define SlotSize_LEDtask7 1
00446 #define SlotSize_Synchronize 1
00447 #define SlotSize_Release 1
00448
00449
00450
00451
00452
00453
00454 #define SlotUse_TrefPunt cfgUseAsWait
00455
00456
00457
00458
00459
00460
00461
00462
00463
00464
00465
00466
00467
00468
00469
00470
00471 #define FileSpaceStandard 0
00472
00473
00474 #endif