Dependencies:   keypad SDHCFileSystem mbed FPointer wave_player

Committer:
daryl2110
Date:
Mon Feb 20 07:36:06 2012 +0000
Revision:
0:879af6e11219

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
daryl2110 0:879af6e11219 1 //******************************************************************************
daryl2110 0:879af6e11219 2 //*
daryl2110 0:879af6e11219 3 //* FULLNAME: Single-Chip Microcontroller Real-Time Operating System
daryl2110 0:879af6e11219 4 //*
daryl2110 0:879af6e11219 5 //* NICKNAME: scmRTOS
daryl2110 0:879af6e11219 6 //*
daryl2110 0:879af6e11219 7 //* PROCESSOR: ARM Cortex-M3
daryl2110 0:879af6e11219 8 //*
daryl2110 0:879af6e11219 9 //* TOOLKIT: EWARM (IAR Systems)
daryl2110 0:879af6e11219 10 //*
daryl2110 0:879af6e11219 11 //* PURPOSE: Project Level Configuration
daryl2110 0:879af6e11219 12 //*
daryl2110 0:879af6e11219 13 //* Version: 3.10
daryl2110 0:879af6e11219 14 //*
daryl2110 0:879af6e11219 15 //* $Revision: 196 $
daryl2110 0:879af6e11219 16 //* $Date:: 2008-06-19 #$
daryl2110 0:879af6e11219 17 //*
daryl2110 0:879af6e11219 18 //* Copyright (c) 2003-2010, Harry E. Zhurov
daryl2110 0:879af6e11219 19 //*
daryl2110 0:879af6e11219 20 //* Permission is hereby granted, free of charge, to any person
daryl2110 0:879af6e11219 21 //* obtaining a copy of this software and associated documentation
daryl2110 0:879af6e11219 22 //* files (the "Software"), to deal in the Software without restriction,
daryl2110 0:879af6e11219 23 //* including without limitation the rights to use, copy, modify, merge,
daryl2110 0:879af6e11219 24 //* publish, distribute, sublicense, and/or sell copies of the Software,
daryl2110 0:879af6e11219 25 //* and to permit persons to whom the Software is furnished to do so,
daryl2110 0:879af6e11219 26 //* subject to the following conditions:
daryl2110 0:879af6e11219 27 //*
daryl2110 0:879af6e11219 28 //* The above copyright notice and this permission notice shall be included
daryl2110 0:879af6e11219 29 //* in all copies or substantial portions of the Software.
daryl2110 0:879af6e11219 30 //*
daryl2110 0:879af6e11219 31 //* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
daryl2110 0:879af6e11219 32 //* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
daryl2110 0:879af6e11219 33 //* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
daryl2110 0:879af6e11219 34 //* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
daryl2110 0:879af6e11219 35 //* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
daryl2110 0:879af6e11219 36 //* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
daryl2110 0:879af6e11219 37 //* THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
daryl2110 0:879af6e11219 38 //*
daryl2110 0:879af6e11219 39 //* =================================================================
daryl2110 0:879af6e11219 40 //* See http://scmrtos.sourceforge.net for documentation, latest
daryl2110 0:879af6e11219 41 //* information, license and contact details.
daryl2110 0:879af6e11219 42 //* =================================================================
daryl2110 0:879af6e11219 43 //*
daryl2110 0:879af6e11219 44 //******************************************************************************
daryl2110 0:879af6e11219 45 //* Ported by Andrey Chuikin, Copyright (c) 2008-2010
daryl2110 0:879af6e11219 46
daryl2110 0:879af6e11219 47 #ifndef scmRTOS_CONFIG_H
daryl2110 0:879af6e11219 48 #define scmRTOS_CONFIG_H
daryl2110 0:879af6e11219 49
daryl2110 0:879af6e11219 50 #ifndef __IAR_SYSTEMS_ASM__
daryl2110 0:879af6e11219 51 #include <commdefs.h>
daryl2110 0:879af6e11219 52
daryl2110 0:879af6e11219 53 typedef word TTimeout;
daryl2110 0:879af6e11219 54
daryl2110 0:879af6e11219 55 #endif // __IAR_SYSTEMS_ASM__
daryl2110 0:879af6e11219 56
daryl2110 0:879af6e11219 57 #include "device.h"
daryl2110 0:879af6e11219 58 //------------------------------------------------------------------------------
daryl2110 0:879af6e11219 59 //
daryl2110 0:879af6e11219 60 // Specify scmRTOS Process Count. Must be less than 31
daryl2110 0:879af6e11219 61 //
daryl2110 0:879af6e11219 62 //
daryl2110 0:879af6e11219 63 #define scmRTOS_PROCESS_COUNT 3
daryl2110 0:879af6e11219 64
daryl2110 0:879af6e11219 65 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 66 //
daryl2110 0:879af6e11219 67 // scmRTOS System Timer
daryl2110 0:879af6e11219 68 //
daryl2110 0:879af6e11219 69 // Nested Interrupts enable macro. Value 1 means that interrupts are
daryl2110 0:879af6e11219 70 // globally enabled within System Timer ISR (this is default for Cortex-M3).
daryl2110 0:879af6e11219 71 //
daryl2110 0:879af6e11219 72 //
daryl2110 0:879af6e11219 73 #define scmRTOS_SYSTIMER_NEST_INTS_ENABLE 1
daryl2110 0:879af6e11219 74
daryl2110 0:879af6e11219 75 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 76 //
daryl2110 0:879af6e11219 77 // scmRTOS System Timer Tick Counter Enable
daryl2110 0:879af6e11219 78 //
daryl2110 0:879af6e11219 79 //
daryl2110 0:879af6e11219 80 #define scmRTOS_SYSTEM_TICKS_ENABLE 1
daryl2110 0:879af6e11219 81
daryl2110 0:879af6e11219 82
daryl2110 0:879af6e11219 83 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 84 //
daryl2110 0:879af6e11219 85 // scmRTOS System Timer Hook
daryl2110 0:879af6e11219 86 //
daryl2110 0:879af6e11219 87 //
daryl2110 0:879af6e11219 88 #define scmRTOS_SYSTIMER_HOOK_ENABLE 0
daryl2110 0:879af6e11219 89
daryl2110 0:879af6e11219 90 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 91 //
daryl2110 0:879af6e11219 92 // scmRTOS Idle Process Hook
daryl2110 0:879af6e11219 93 //
daryl2110 0:879af6e11219 94 //
daryl2110 0:879af6e11219 95 #define scmRTOS_IDLE_HOOK_ENABLE 1
daryl2110 0:879af6e11219 96
daryl2110 0:879af6e11219 97 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 98 //
daryl2110 0:879af6e11219 99 // scmRTOS Idle Process Stack size (in bytes)
daryl2110 0:879af6e11219 100 // (20 * sizeof(TStackItem)) - it's a minimum allowed value.
daryl2110 0:879af6e11219 101 //
daryl2110 0:879af6e11219 102 #define scmRTOS_IDLE_PROCESS_STACK_SIZE (20 * sizeof(TStackItem))
daryl2110 0:879af6e11219 103
daryl2110 0:879af6e11219 104 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 105 //
daryl2110 0:879af6e11219 106 // scmRTOS Priority Order
daryl2110 0:879af6e11219 107 //
daryl2110 0:879af6e11219 108 // This macro defines the order of the process's priorities. Default,
daryl2110 0:879af6e11219 109 // the ascending order is used. Alternatively, the descending priority
daryl2110 0:879af6e11219 110 // order can be used. On some platforms the descending order is preferred
daryl2110 0:879af6e11219 111 // because of performance.
daryl2110 0:879af6e11219 112 //
daryl2110 0:879af6e11219 113 // Default (corresponding to ascending order) value of macro is 0.
daryl2110 0:879af6e11219 114 // Alternative (corresponding to descending order) value of macro is 1.
daryl2110 0:879af6e11219 115 //
daryl2110 0:879af6e11219 116 // On Cortex-M3 the descending order is preferred for performance reason.
daryl2110 0:879af6e11219 117 //
daryl2110 0:879af6e11219 118 #define scmRTOS_PRIORITY_ORDER 1
daryl2110 0:879af6e11219 119
daryl2110 0:879af6e11219 120 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 121 //
daryl2110 0:879af6e11219 122 // scmRTOS Context Switch User Hook enable
daryl2110 0:879af6e11219 123 //
daryl2110 0:879af6e11219 124 // The macro enables/disables user defined hook called from system
daryl2110 0:879af6e11219 125 // Context Switch Hook function.
daryl2110 0:879af6e11219 126 //
daryl2110 0:879af6e11219 127 //
daryl2110 0:879af6e11219 128 #define scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE 0
daryl2110 0:879af6e11219 129
daryl2110 0:879af6e11219 130
daryl2110 0:879af6e11219 131 #endif // scmRTOS_CONFIG_H
daryl2110 0:879af6e11219 132 //-----------------------------------------------------------------------------
daryl2110 0:879af6e11219 133