My Project
stpclkdir.h
Go to the documentation of this file.
00001 
00002 
00006 //----------------------------------------------------------------------------
00007 // A T 9 1  C P U  S U P P O R T  L I B R A R Y
00008 //----------------------------------------------------------------------------
00009 // Name:    SYKAM/CPU/AT91/MISC/STPCLKDIR/STPCLKDIR.H
00010 // Purpose: AT91 CPU SUPPORT
00011 // Author:  hschoettner
00012 //----------------------------------------------------------------------------
00013 // Copyright (c) 2008-2011 Sykam GmbH. All rights reserved.
00014 //----------------------------------------------------------------------------
00015 
00016 #ifndef SYKAM_CPU_AT91_MISC_STPCLKDIR_STPCLKDIR_H
00017 #define SYKAM_CPU_AT91_MISC_STPCLKDIR_STPCLKDIR_H 1
00018 
00019 
00020 // Defines
00021 
00023 #define STPCLKDIR_CLOCKWISE            (TRUE)
00024 
00026 #define STPCLKDIR_COUNTERCLOCKWISE     (FALSE)
00027 
00029 #define STPCLKDIR_CLKSACC_MIN          (2)
00030 
00032 #define STPCLKDIR_CLKSBRK_MIN          (1)
00033 
00035 #define STPCLKDIR_CLKSRUN_MIN          (STPCLKDIR_CLKSACC_MIN+ STPCLKDIR_CLKSBRK_MIN)
00036 
00038 #define STPCLKDIR_FLAGS_NONE           (0)
00039 
00041 #define STPCLKDIR_FLAGS_AUTOPOWEROFF   (1 << 0)
00042 
00044 #define STPCLKDIR_FLAGS_INVERSE        (1 << 1)
00045 
00046 
00047 // Macros
00048 
00049 // Function template IsrStpClkDirTcc
00050 #define STPCLKDIR_ISRTCC_FUNC(unit) void IsrStpClkDirTcc##unit(void) __irq { StpClkDirTccIrqHandler(unit); }
00051 
00052 // Function prototype IsrStpClkDirTcc
00053 #define STPCLKDIR_ISRTCC_PROTO(unit) void IsrStpClkDirTcc##unit(void) __irq
00054 
00055 // Function name IsrStpClkDirTcc
00056 #define STPCLKDIR_ISRTCC_NAME(unit) IsrStpClkDirTcc##unit
00057 
00058 
00059 // Function template IsrStpClkDirPwm
00060 #define STPCLKDIR_ISRPWM_FUNC void IsrStpClkDirPwm(U32 u32ISR, U32 u32Pin) { StpClkDirPwmIrqHandler(u32Pin); }
00061 
00062 // Function prototype IsrStpClkDirPwm
00063 #define STPCLKDIR_ISRPWM_PROTO void IsrStpClkDirPwm(U32 u32ISR, U32 u32Pin)
00064 
00065 // Function name IsrStpClkDirPwm
00066 #define STPCLKDIR_ISRPWM_NAME IsrStpClkDirPwm
00067 
00068 //----------------------------------------------------------------------------
00069 // Do *NOT* apply application specific changes here!
00070 // Set defines to change in your application before including this to override
00071 //----------------------------------------------------------------------------
00072 
00074 #ifndef STPCLKDIR_POWERONRESET
00075    #define STPCLKDIR_POWERONRESET 0
00076 #endif
00077 
00079 #ifndef STPCLKDIR_FULLSTEPSHIFT
00080    #define STPCLKDIR_FULLSTEPSHIFT 1
00081 #endif
00082 
00084 #ifndef STPCLKDIR_OFFSETAUTOSHIFT
00085    #define STPCLKDIR_OFFSETAUTOSHIFT 1
00086 #endif
00087 
00089 #ifndef STPCLKDIR_OFFSETBYDIRECTION
00090    #define STPCLKDIR_OFFSETBYDIRECTION 0
00091 #endif
00092 
00094 #ifndef STPCLKDIR_PWM_2NDCHANCEUPDATE_FIX
00095    #define STPCLKDIR_PWM_2NDCHANCEUPDATE_FIX 1
00096 #endif
00097 
00099 #ifndef STPCLKDIR_PWM_UPDATE_FIX
00100    #define STPCLKDIR_PWM_UPDATE_FIX 0
00101 #endif
00102 
00104 #ifndef STPCLKDIR_STACK_STKTSKSTPCLKDIRHOLD
00105    #define STPCLKDIR_STACK_STKTSKSTPCLKDIRHOLD 512
00106 #endif
00107 
00109 #ifndef STPCLKDIR_MBXOFFSETCNTMSG
00110    #define STPCLKDIR_MBXOFFSETCNTMSG 25
00111 #endif
00112 
00114 #ifndef STPCLKDIR_MBXCNTSTATE
00115    #define STPCLKDIR_MBXCNTSTATE 4
00116 #endif
00117 
00119 #ifndef STPCLKDIR_UNIT_MAX
00120    #define STPCLKDIR_UNIT_MAX 1
00121 #endif
00122 
00124 #ifndef STPCLKDIR_MBXCNTACC
00125    #define STPCLKDIR_MBXCNTACC 512
00126 #endif
00127 
00129 #ifndef STPCLKDIR_MBXCNTBRK
00130    #define STPCLKDIR_MBXCNTBRK 512
00131 #endif
00132 
00133 // Prototypes
00134 void StpClkDirTccIrqHandler(UCHAR ucUnit);
00135 void StpClkDirPwmIrqHandler(UCHAR ucChid);
00136 
00137 __task void TskStpClkDirHold(void *pvParam);
00138 
00139 // Each supported unit requires a prototype definition here
00140 #if STPCLKDIR_UNIT_MAX > 0
00141    STPCLKDIR_ISRTCC_PROTO(0);
00142    STPCLKDIR_ISRPWM_PROTO;
00143 #endif
00144 
00145 #if STPCLKDIR_UNIT_MAX > 1
00146    STPCLKDIR_ISRTCC_PROTO(1);
00147 #endif
00148 
00149 #if STPCLKDIR_UNIT_MAX > 2
00150    STPCLKDIR_ISRTCC_PROTO(2);
00151 #endif
00152 
00153 #endif
 All Files Functions Variables Defines