This program control a 5 axis arm robot from lynx motion

Dependencies:   TextLCD mbed

Committer:
msimmerl
Date:
Tue Feb 15 07:49:25 2011 +0000
Revision:
0:b6608b36efd7

        

Who changed what in which revision?

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