Program to control an accelerometer, motors and a rangefinder using the ScmRTOS ported to mbed. (Work in progress and buggy)

Dependencies:   mbed

Committer:
jberry
Date:
Mon Nov 01 20:39:01 2010 +0000
Revision:
0:9b057566f9ee

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jberry 0:9b057566f9ee 1 //******************************************************************************
jberry 0:9b057566f9ee 2 //*
jberry 0:9b057566f9ee 3 //* FULLNAME: Single-Chip Microcontroller Real-Time Operating System
jberry 0:9b057566f9ee 4 //*
jberry 0:9b057566f9ee 5 //* NICKNAME: scmRTOS
jberry 0:9b057566f9ee 6 //*
jberry 0:9b057566f9ee 7 //* PURPOSE: Macros And Common Definitions
jberry 0:9b057566f9ee 8 //*
jberry 0:9b057566f9ee 9 //* Version: 3.10
jberry 0:9b057566f9ee 10 //*
jberry 0:9b057566f9ee 11 //* $Revision: 256 $
jberry 0:9b057566f9ee 12 //* $Date:: 2010-01-22 #$
jberry 0:9b057566f9ee 13 //*
jberry 0:9b057566f9ee 14 //* Copyright (c) 2003-2010, Harry E. Zhurov
jberry 0:9b057566f9ee 15 //*
jberry 0:9b057566f9ee 16 //* Permission is hereby granted, free of charge, to any person
jberry 0:9b057566f9ee 17 //* obtaining a copy of this software and associated documentation
jberry 0:9b057566f9ee 18 //* files (the "Software"), to deal in the Software without restriction,
jberry 0:9b057566f9ee 19 //* including without limitation the rights to use, copy, modify, merge,
jberry 0:9b057566f9ee 20 //* publish, distribute, sublicense, and/or sell copies of the Software,
jberry 0:9b057566f9ee 21 //* and to permit persons to whom the Software is furnished to do so,
jberry 0:9b057566f9ee 22 //* subject to the following conditions:
jberry 0:9b057566f9ee 23 //*
jberry 0:9b057566f9ee 24 //* The above copyright notice and this permission notice shall be included
jberry 0:9b057566f9ee 25 //* in all copies or substantial portions of the Software.
jberry 0:9b057566f9ee 26 //*
jberry 0:9b057566f9ee 27 //* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
jberry 0:9b057566f9ee 28 //* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
jberry 0:9b057566f9ee 29 //* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
jberry 0:9b057566f9ee 30 //* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
jberry 0:9b057566f9ee 31 //* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
jberry 0:9b057566f9ee 32 //* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
jberry 0:9b057566f9ee 33 //* THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
jberry 0:9b057566f9ee 34 //*
jberry 0:9b057566f9ee 35 //* =================================================================
jberry 0:9b057566f9ee 36 //* See http://scmrtos.sourceforge.net for documentation, latest
jberry 0:9b057566f9ee 37 //* information, license and contact details.
jberry 0:9b057566f9ee 38 //* =================================================================
jberry 0:9b057566f9ee 39 //*
jberry 0:9b057566f9ee 40 //******************************************************************************
jberry 0:9b057566f9ee 41
jberry 0:9b057566f9ee 42 #ifndef scmRTOS_DEFS_H
jberry 0:9b057566f9ee 43 #define scmRTOS_DEFS_H
jberry 0:9b057566f9ee 44
jberry 0:9b057566f9ee 45 #include <commdefs.h>
jberry 0:9b057566f9ee 46
jberry 0:9b057566f9ee 47 //------------------------------------------------------------------------------
jberry 0:9b057566f9ee 48
jberry 0:9b057566f9ee 49 //-----------------------------------------------------------------------------
jberry 0:9b057566f9ee 50 //
jberry 0:9b057566f9ee 51 //
jberry 0:9b057566f9ee 52 /// Macro for Channel Type definition
jberry 0:9b057566f9ee 53 //
jberry 0:9b057566f9ee 54 //
jberry 0:9b057566f9ee 55 #define DefineChannel(Name, Capacity) \
jberry 0:9b057566f9ee 56 class Name : public OS::TChannel \
jberry 0:9b057566f9ee 57 { \
jberry 0:9b057566f9ee 58 public: \
jberry 0:9b057566f9ee 59 Name() : OS::TChannel(buf, sizeof(buf)) { } \
jberry 0:9b057566f9ee 60 \
jberry 0:9b057566f9ee 61 private: \
jberry 0:9b057566f9ee 62 byte buf[Capacity]; \
jberry 0:9b057566f9ee 63 \
jberry 0:9b057566f9ee 64 }
jberry 0:9b057566f9ee 65 //-----------------------------------------------------------------------------
jberry 0:9b057566f9ee 66 //
jberry 0:9b057566f9ee 67 // Check CONFIG Macro Definitions
jberry 0:9b057566f9ee 68 //
jberry 0:9b057566f9ee 69 //
jberry 0:9b057566f9ee 70
jberry 0:9b057566f9ee 71 //----------------- scmRTOS_SYSTIMER_NEST_INTS_ENABLE -------------------------
jberry 0:9b057566f9ee 72 #ifndef scmRTOS_SYSTIMER_NEST_INTS_ENABLE
jberry 0:9b057566f9ee 73 #error "Error: Config macro scmRTOS_SYSTIMER_NEST_INTS_ENABLE must be defined!"
jberry 0:9b057566f9ee 74 #endif
jberry 0:9b057566f9ee 75
jberry 0:9b057566f9ee 76 #if (scmRTOS_SYSTIMER_NEST_INTS_ENABLE < 0) || (scmRTOS_SYSTIMER_NEST_INTS_ENABLE > 1)
jberry 0:9b057566f9ee 77 #error "Error: scmRTOS_SYSTIMER_NEST_INTS_ENABLE must have values 0 or 1 only!"
jberry 0:9b057566f9ee 78 #endif
jberry 0:9b057566f9ee 79
jberry 0:9b057566f9ee 80 //----------------- scmRTOS_SYSTEM_TICKS_ENABLE -------------------------------
jberry 0:9b057566f9ee 81 #ifndef scmRTOS_SYSTEM_TICKS_ENABLE
jberry 0:9b057566f9ee 82 #error "Error: Config macro scmRTOS_SYSTEM_TICKS_ENABLE must be defined!"
jberry 0:9b057566f9ee 83 #endif
jberry 0:9b057566f9ee 84
jberry 0:9b057566f9ee 85 #if (scmRTOS_SYSTEM_TICKS_ENABLE < 0) || (scmRTOS_SYSTEM_TICKS_ENABLE > 1)
jberry 0:9b057566f9ee 86 #error "Error: scmRTOS_SYSTEM_TICKS_ENABLE must have values 0 or 1 only!"
jberry 0:9b057566f9ee 87 #endif
jberry 0:9b057566f9ee 88
jberry 0:9b057566f9ee 89
jberry 0:9b057566f9ee 90 //----------------- scmRTOS_SYSTIMER_HOOK_ENABLE ------------------------------
jberry 0:9b057566f9ee 91 #ifndef scmRTOS_SYSTIMER_HOOK_ENABLE
jberry 0:9b057566f9ee 92 #error "Error: Config macro scmRTOS_SYSTIMER_HOOK_ENABLE must be defined!"
jberry 0:9b057566f9ee 93 #endif
jberry 0:9b057566f9ee 94
jberry 0:9b057566f9ee 95 #if (scmRTOS_SYSTIMER_HOOK_ENABLE < 0) || (scmRTOS_SYSTIMER_HOOK_ENABLE > 1)
jberry 0:9b057566f9ee 96 #error "Error: scmRTOS_SYSTIMER_HOOK_ENABLE must have values 0 or 1 only!"
jberry 0:9b057566f9ee 97 #endif
jberry 0:9b057566f9ee 98
jberry 0:9b057566f9ee 99 //-------------- scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE ----------------------
jberry 0:9b057566f9ee 100 #ifndef scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE
jberry 0:9b057566f9ee 101 #error "Error: Config macro scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE must be defined!"
jberry 0:9b057566f9ee 102 #endif
jberry 0:9b057566f9ee 103
jberry 0:9b057566f9ee 104 #if (scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE < 0) || (scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE > 1)
jberry 0:9b057566f9ee 105 #error "Error: scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE must have values 0 or 1 only!"
jberry 0:9b057566f9ee 106 #endif
jberry 0:9b057566f9ee 107
jberry 0:9b057566f9ee 108 //----------------- scmRTOS_IDLE_HOOK_ENABLE ----------------------------------
jberry 0:9b057566f9ee 109 #ifndef scmRTOS_IDLE_HOOK_ENABLE
jberry 0:9b057566f9ee 110 #error "Error: Config macro scmRTOS_IDLE_HOOK_ENABLE must be defined!"
jberry 0:9b057566f9ee 111 #endif
jberry 0:9b057566f9ee 112
jberry 0:9b057566f9ee 113 #if (scmRTOS_IDLE_HOOK_ENABLE < 0) || (scmRTOS_IDLE_HOOK_ENABLE > 1)
jberry 0:9b057566f9ee 114 #error "Error: scmRTOS_IDLE_HOOK_ENABLE must have values 0 or 1 only!"
jberry 0:9b057566f9ee 115 #endif
jberry 0:9b057566f9ee 116
jberry 0:9b057566f9ee 117 //----------------- scmRTOS_CONTEXT_SWITCH_SCHEME -----------------------------
jberry 0:9b057566f9ee 118 #ifndef scmRTOS_CONTEXT_SWITCH_SCHEME
jberry 0:9b057566f9ee 119 #error "Error: Config macro scmRTOS_CONTEXT_SWITCH_SCHEME must be defined!"
jberry 0:9b057566f9ee 120 #endif
jberry 0:9b057566f9ee 121
jberry 0:9b057566f9ee 122 #if (scmRTOS_CONTEXT_SWITCH_SCHEME < 0) || (scmRTOS_CONTEXT_SWITCH_SCHEME > 1)
jberry 0:9b057566f9ee 123 #error "Error: scmRTOS_CONTEXT_SWITCH_SCHEME must have values 0 or 1 only!"
jberry 0:9b057566f9ee 124 #endif
jberry 0:9b057566f9ee 125
jberry 0:9b057566f9ee 126
jberry 0:9b057566f9ee 127 //----------------- scmRTOS_PRIORITY_ORDER ------------------------------------
jberry 0:9b057566f9ee 128 #ifndef scmRTOS_PRIORITY_ORDER
jberry 0:9b057566f9ee 129 #error "Error: Config macro scmRTOS_PRIORITY_ORDER must be defined!"
jberry 0:9b057566f9ee 130 #endif
jberry 0:9b057566f9ee 131
jberry 0:9b057566f9ee 132 #if (scmRTOS_PRIORITY_ORDER < 0) || (scmRTOS_PRIORITY_ORDER > 1)
jberry 0:9b057566f9ee 133 #error "Error: scmRTOS_PRIORITY_ORDER must have values 0 or 1 only!"
jberry 0:9b057566f9ee 134 #endif
jberry 0:9b057566f9ee 135
jberry 0:9b057566f9ee 136 //----------------- User Hooks inlining ------------------------------------
jberry 0:9b057566f9ee 137 #ifndef INLINE_SYS_TIMER_HOOK
jberry 0:9b057566f9ee 138 #define INLINE_SYS_TIMER_HOOK
jberry 0:9b057566f9ee 139 #endif
jberry 0:9b057566f9ee 140
jberry 0:9b057566f9ee 141 #ifndef INLINE_CONTEXT_SWITCH_HOOK
jberry 0:9b057566f9ee 142 #define INLINE_CONTEXT_SWITCH_HOOK
jberry 0:9b057566f9ee 143 #endif
jberry 0:9b057566f9ee 144
jberry 0:9b057566f9ee 145
jberry 0:9b057566f9ee 146 //-----------------------------------------------------------------------------
jberry 0:9b057566f9ee 147 //
jberry 0:9b057566f9ee 148 /// Priority and process map type definitions
jberry 0:9b057566f9ee 149 //
jberry 0:9b057566f9ee 150 //
jberry 0:9b057566f9ee 151 namespace OS
jberry 0:9b057566f9ee 152 {
jberry 0:9b057566f9ee 153 #if scmRTOS_PROCESS_COUNT < 8
jberry 0:9b057566f9ee 154 typedef byte TProcessMap;
jberry 0:9b057566f9ee 155 #elif scmRTOS_PROCESS_COUNT < 16
jberry 0:9b057566f9ee 156 typedef word TProcessMap;
jberry 0:9b057566f9ee 157 #else
jberry 0:9b057566f9ee 158 typedef dword TProcessMap;
jberry 0:9b057566f9ee 159 #endif
jberry 0:9b057566f9ee 160 //------------------------------------------------------
jberry 0:9b057566f9ee 161 #if scmRTOS_PRIORITY_ORDER == 0
jberry 0:9b057566f9ee 162 enum TPriority {
jberry 0:9b057566f9ee 163 #if scmRTOS_PROCESS_COUNT > 0
jberry 0:9b057566f9ee 164 pr0,
jberry 0:9b057566f9ee 165 #endif
jberry 0:9b057566f9ee 166 #if scmRTOS_PROCESS_COUNT > 1
jberry 0:9b057566f9ee 167 pr1,
jberry 0:9b057566f9ee 168 #endif
jberry 0:9b057566f9ee 169 #if scmRTOS_PROCESS_COUNT > 2
jberry 0:9b057566f9ee 170 pr2,
jberry 0:9b057566f9ee 171 #endif
jberry 0:9b057566f9ee 172 #if scmRTOS_PROCESS_COUNT > 3
jberry 0:9b057566f9ee 173 pr3,
jberry 0:9b057566f9ee 174 #endif
jberry 0:9b057566f9ee 175 #if scmRTOS_PROCESS_COUNT > 4
jberry 0:9b057566f9ee 176 pr4,
jberry 0:9b057566f9ee 177 #endif
jberry 0:9b057566f9ee 178 #if scmRTOS_PROCESS_COUNT > 5
jberry 0:9b057566f9ee 179 pr5,
jberry 0:9b057566f9ee 180 #endif
jberry 0:9b057566f9ee 181 #if scmRTOS_PROCESS_COUNT > 6
jberry 0:9b057566f9ee 182 pr6,
jberry 0:9b057566f9ee 183 #endif
jberry 0:9b057566f9ee 184 #if scmRTOS_PROCESS_COUNT > 7
jberry 0:9b057566f9ee 185 pr7,
jberry 0:9b057566f9ee 186 #endif
jberry 0:9b057566f9ee 187 #if scmRTOS_PROCESS_COUNT > 8
jberry 0:9b057566f9ee 188 pr8,
jberry 0:9b057566f9ee 189 #endif
jberry 0:9b057566f9ee 190 #if scmRTOS_PROCESS_COUNT > 9
jberry 0:9b057566f9ee 191 pr9,
jberry 0:9b057566f9ee 192 #endif
jberry 0:9b057566f9ee 193 #if scmRTOS_PROCESS_COUNT > 10
jberry 0:9b057566f9ee 194 pr10,
jberry 0:9b057566f9ee 195 #endif
jberry 0:9b057566f9ee 196 #if scmRTOS_PROCESS_COUNT > 11
jberry 0:9b057566f9ee 197 pr11,
jberry 0:9b057566f9ee 198 #endif
jberry 0:9b057566f9ee 199 #if scmRTOS_PROCESS_COUNT > 12
jberry 0:9b057566f9ee 200 pr12,
jberry 0:9b057566f9ee 201 #endif
jberry 0:9b057566f9ee 202 #if scmRTOS_PROCESS_COUNT > 13
jberry 0:9b057566f9ee 203 pr13,
jberry 0:9b057566f9ee 204 #endif
jberry 0:9b057566f9ee 205 #if scmRTOS_PROCESS_COUNT > 14
jberry 0:9b057566f9ee 206 pr14,
jberry 0:9b057566f9ee 207 #endif
jberry 0:9b057566f9ee 208 #if scmRTOS_PROCESS_COUNT > 15
jberry 0:9b057566f9ee 209 pr15,
jberry 0:9b057566f9ee 210 #endif
jberry 0:9b057566f9ee 211 #if scmRTOS_PROCESS_COUNT > 16
jberry 0:9b057566f9ee 212 pr16,
jberry 0:9b057566f9ee 213 #endif
jberry 0:9b057566f9ee 214 #if scmRTOS_PROCESS_COUNT > 17
jberry 0:9b057566f9ee 215 pr17,
jberry 0:9b057566f9ee 216 #endif
jberry 0:9b057566f9ee 217 #if scmRTOS_PROCESS_COUNT > 18
jberry 0:9b057566f9ee 218 pr18,
jberry 0:9b057566f9ee 219 #endif
jberry 0:9b057566f9ee 220 #if scmRTOS_PROCESS_COUNT > 19
jberry 0:9b057566f9ee 221 pr19,
jberry 0:9b057566f9ee 222 #endif
jberry 0:9b057566f9ee 223 #if scmRTOS_PROCESS_COUNT > 20
jberry 0:9b057566f9ee 224 pr20,
jberry 0:9b057566f9ee 225 #endif
jberry 0:9b057566f9ee 226 #if scmRTOS_PROCESS_COUNT > 21
jberry 0:9b057566f9ee 227 pr21,
jberry 0:9b057566f9ee 228 #endif
jberry 0:9b057566f9ee 229 #if scmRTOS_PROCESS_COUNT > 22
jberry 0:9b057566f9ee 230 pr22,
jberry 0:9b057566f9ee 231 #endif
jberry 0:9b057566f9ee 232 #if scmRTOS_PROCESS_COUNT > 23
jberry 0:9b057566f9ee 233 pr23,
jberry 0:9b057566f9ee 234 #endif
jberry 0:9b057566f9ee 235 #if scmRTOS_PROCESS_COUNT > 24
jberry 0:9b057566f9ee 236 pr24,
jberry 0:9b057566f9ee 237 #endif
jberry 0:9b057566f9ee 238 #if scmRTOS_PROCESS_COUNT > 25
jberry 0:9b057566f9ee 239 pr25,
jberry 0:9b057566f9ee 240 #endif
jberry 0:9b057566f9ee 241 #if scmRTOS_PROCESS_COUNT > 26
jberry 0:9b057566f9ee 242 pr26,
jberry 0:9b057566f9ee 243 #endif
jberry 0:9b057566f9ee 244 #if scmRTOS_PROCESS_COUNT > 27
jberry 0:9b057566f9ee 245 pr27,
jberry 0:9b057566f9ee 246 #endif
jberry 0:9b057566f9ee 247 #if scmRTOS_PROCESS_COUNT > 28
jberry 0:9b057566f9ee 248 pr28,
jberry 0:9b057566f9ee 249 #endif
jberry 0:9b057566f9ee 250 #if scmRTOS_PROCESS_COUNT > 29
jberry 0:9b057566f9ee 251 pr29,
jberry 0:9b057566f9ee 252 #endif
jberry 0:9b057566f9ee 253 #if scmRTOS_PROCESS_COUNT > 30
jberry 0:9b057566f9ee 254 pr30,
jberry 0:9b057566f9ee 255 #endif
jberry 0:9b057566f9ee 256 #if (scmRTOS_PROCESS_COUNT > 31) || (scmRTOS_PROCESS_COUNT < 1)
jberry 0:9b057566f9ee 257 #error "Invalid Process Count specification! Must be from 1 to 31."
jberry 0:9b057566f9ee 258 #endif
jberry 0:9b057566f9ee 259 prIDLE
jberry 0:9b057566f9ee 260 };
jberry 0:9b057566f9ee 261 #else // scmRTOS_PRIORITY_ORDER == 1
jberry 0:9b057566f9ee 262 enum TPriority {
jberry 0:9b057566f9ee 263 prIDLE,
jberry 0:9b057566f9ee 264 #if scmRTOS_PROCESS_COUNT > 30
jberry 0:9b057566f9ee 265 pr30,
jberry 0:9b057566f9ee 266 #endif
jberry 0:9b057566f9ee 267 #if scmRTOS_PROCESS_COUNT > 29
jberry 0:9b057566f9ee 268 pr29,
jberry 0:9b057566f9ee 269 #endif
jberry 0:9b057566f9ee 270 #if scmRTOS_PROCESS_COUNT > 28
jberry 0:9b057566f9ee 271 pr28,
jberry 0:9b057566f9ee 272 #endif
jberry 0:9b057566f9ee 273 #if scmRTOS_PROCESS_COUNT > 27
jberry 0:9b057566f9ee 274 pr27,
jberry 0:9b057566f9ee 275 #endif
jberry 0:9b057566f9ee 276 #if scmRTOS_PROCESS_COUNT > 26
jberry 0:9b057566f9ee 277 pr26,
jberry 0:9b057566f9ee 278 #endif
jberry 0:9b057566f9ee 279 #if scmRTOS_PROCESS_COUNT > 25
jberry 0:9b057566f9ee 280 pr25,
jberry 0:9b057566f9ee 281 #endif
jberry 0:9b057566f9ee 282 #if scmRTOS_PROCESS_COUNT > 24
jberry 0:9b057566f9ee 283 pr24,
jberry 0:9b057566f9ee 284 #endif
jberry 0:9b057566f9ee 285 #if scmRTOS_PROCESS_COUNT > 23
jberry 0:9b057566f9ee 286 pr23,
jberry 0:9b057566f9ee 287 #endif
jberry 0:9b057566f9ee 288 #if scmRTOS_PROCESS_COUNT > 22
jberry 0:9b057566f9ee 289 pr22,
jberry 0:9b057566f9ee 290 #endif
jberry 0:9b057566f9ee 291 #if scmRTOS_PROCESS_COUNT > 21
jberry 0:9b057566f9ee 292 pr21,
jberry 0:9b057566f9ee 293 #endif
jberry 0:9b057566f9ee 294 #if scmRTOS_PROCESS_COUNT > 20
jberry 0:9b057566f9ee 295 pr20,
jberry 0:9b057566f9ee 296 #endif
jberry 0:9b057566f9ee 297 #if scmRTOS_PROCESS_COUNT > 19
jberry 0:9b057566f9ee 298 pr19,
jberry 0:9b057566f9ee 299 #endif
jberry 0:9b057566f9ee 300 #if scmRTOS_PROCESS_COUNT > 18
jberry 0:9b057566f9ee 301 pr18,
jberry 0:9b057566f9ee 302 #endif
jberry 0:9b057566f9ee 303 #if scmRTOS_PROCESS_COUNT > 17
jberry 0:9b057566f9ee 304 pr17,
jberry 0:9b057566f9ee 305 #endif
jberry 0:9b057566f9ee 306 #if scmRTOS_PROCESS_COUNT > 16
jberry 0:9b057566f9ee 307 pr16,
jberry 0:9b057566f9ee 308 #endif
jberry 0:9b057566f9ee 309 #if scmRTOS_PROCESS_COUNT > 15
jberry 0:9b057566f9ee 310 pr15,
jberry 0:9b057566f9ee 311 #endif
jberry 0:9b057566f9ee 312 #if scmRTOS_PROCESS_COUNT > 14
jberry 0:9b057566f9ee 313 pr14,
jberry 0:9b057566f9ee 314 #endif
jberry 0:9b057566f9ee 315 #if scmRTOS_PROCESS_COUNT > 13
jberry 0:9b057566f9ee 316 pr13,
jberry 0:9b057566f9ee 317 #endif
jberry 0:9b057566f9ee 318 #if scmRTOS_PROCESS_COUNT > 12
jberry 0:9b057566f9ee 319 pr12,
jberry 0:9b057566f9ee 320 #endif
jberry 0:9b057566f9ee 321 #if scmRTOS_PROCESS_COUNT > 11
jberry 0:9b057566f9ee 322 pr11,
jberry 0:9b057566f9ee 323 #endif
jberry 0:9b057566f9ee 324 #if scmRTOS_PROCESS_COUNT > 10
jberry 0:9b057566f9ee 325 pr10,
jberry 0:9b057566f9ee 326 #endif
jberry 0:9b057566f9ee 327 #if scmRTOS_PROCESS_COUNT > 9
jberry 0:9b057566f9ee 328 pr9,
jberry 0:9b057566f9ee 329 #endif
jberry 0:9b057566f9ee 330 #if scmRTOS_PROCESS_COUNT > 8
jberry 0:9b057566f9ee 331 pr8,
jberry 0:9b057566f9ee 332 #endif
jberry 0:9b057566f9ee 333 #if scmRTOS_PROCESS_COUNT > 7
jberry 0:9b057566f9ee 334 pr7,
jberry 0:9b057566f9ee 335 #endif
jberry 0:9b057566f9ee 336 #if scmRTOS_PROCESS_COUNT > 6
jberry 0:9b057566f9ee 337 pr6,
jberry 0:9b057566f9ee 338 #endif
jberry 0:9b057566f9ee 339 #if scmRTOS_PROCESS_COUNT > 5
jberry 0:9b057566f9ee 340 pr5,
jberry 0:9b057566f9ee 341 #endif
jberry 0:9b057566f9ee 342 #if scmRTOS_PROCESS_COUNT > 4
jberry 0:9b057566f9ee 343 pr4,
jberry 0:9b057566f9ee 344 #endif
jberry 0:9b057566f9ee 345 #if scmRTOS_PROCESS_COUNT > 3
jberry 0:9b057566f9ee 346 pr3,
jberry 0:9b057566f9ee 347 #endif
jberry 0:9b057566f9ee 348 #if scmRTOS_PROCESS_COUNT > 2
jberry 0:9b057566f9ee 349 pr2,
jberry 0:9b057566f9ee 350 #endif
jberry 0:9b057566f9ee 351 #if scmRTOS_PROCESS_COUNT > 1
jberry 0:9b057566f9ee 352 pr1,
jberry 0:9b057566f9ee 353 #endif
jberry 0:9b057566f9ee 354 #if scmRTOS_PROCESS_COUNT > 0
jberry 0:9b057566f9ee 355 pr0
jberry 0:9b057566f9ee 356 #endif
jberry 0:9b057566f9ee 357 #if (scmRTOS_PROCESS_COUNT > 31) || (scmRTOS_PROCESS_COUNT < 1)
jberry 0:9b057566f9ee 358 #error "Invalid Process Count specification! Must be from 1 to 31."
jberry 0:9b057566f9ee 359 #endif
jberry 0:9b057566f9ee 360 };
jberry 0:9b057566f9ee 361 #endif //scmRTOS_PRIORITY_ORDER
jberry 0:9b057566f9ee 362 }
jberry 0:9b057566f9ee 363 //-----------------------------------------------------------------------------
jberry 0:9b057566f9ee 364 //
jberry 0:9b057566f9ee 365 // Process's constructor inlining control: default behaviour
jberry 0:9b057566f9ee 366 //
jberry 0:9b057566f9ee 367 #ifndef INLINE_PROCESS_CTOR
jberry 0:9b057566f9ee 368 #define INLINE_PROCESS_CTOR
jberry 0:9b057566f9ee 369 #endif
jberry 0:9b057566f9ee 370
jberry 0:9b057566f9ee 371
jberry 0:9b057566f9ee 372 //-----------------------------------------------------------------------------
jberry 0:9b057566f9ee 373
jberry 0:9b057566f9ee 374 #endif // scmRTOS_DEFS_H