Speed profile working

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers easyspin_config.h Source File

easyspin_config.h

00001 /******************************************************//**
00002  * @file    Easyspin_target_config.h
00003  * @version V1.0
00004  * @date    June 29, 2015
00005  * @brief   Predefines values for the Easyspin registers
00006  * and for the shields parameters
00007   *
00008  * This file is free software; you can redistribute it and/or modify
00009  * it under the terms of either the GNU General Public License version 2
00010  * or the GNU Lesser General Public License version 2.1, both as
00011  * published by the Free Software Foundation.
00012  **********************************************************/
00013 
00014 #ifndef __Easyspin_TARGET_CONFIG_H
00015 #define __Easyspin_TARGET_CONFIG_H
00016 
00017 /// The maximum number of shields in the daisy chain
00018 #define MAX_NUMBER_OF_SHIELDS                 (3)
00019 
00020 /************************ Speed Profile  *******************************/
00021 
00022 /// Acceleration rate in step/s2 for shield 0 (must be greater than 0)
00023 #define Easyspin_CONF_PARAM_ACC_SHIELD_0        (500)
00024 /// Acceleration rate in step/s2 for shield 1 (must be greater than 0)
00025 #define Easyspin_CONF_PARAM_ACC_SHIELD_1        (500)
00026 /// Acceleration rate in step/s2 for shield 2 (must be greater than 0)
00027 #define Easyspin_CONF_PARAM_ACC_SHIELD_2        (500)
00028 
00029 /// Deceleration rate in step/s2 for shield 0 (must be greater than 0)
00030 #define Easyspin_CONF_PARAM_DEC_SHIELD_0        (500)
00031 /// Deceleration rate in step/s2 for shield 1 (must be greater than 0)
00032 #define Easyspin_CONF_PARAM_DEC_SHIELD_1        (500)
00033 /// Deceleration rate in step/s2 for shield 2 (must be greater than 0)
00034 #define Easyspin_CONF_PARAM_DEC_SHIELD_2        (500)
00035 
00036 /// Maximum speed in step/s for shield 0 (30 step/s < Maximum speed <= 10 000 step/s )
00037 #define Easyspin_CONF_PARAM_MAX_SPEED_SHIELD_0  (9000)
00038 /// Maximum speed in step/s for shield 1 (30 step/s < Maximum speed <= 10 000 step/s )
00039 #define Easyspin_CONF_PARAM_MAX_SPEED_SHIELD_1  (9000)
00040 /// Maximum speed in step/s for shield 2 (30 step/s < Maximum speed <= 10 000 step/s )
00041 #define Easyspin_CONF_PARAM_MAX_SPEED_SHIELD_2  (9000)
00042 
00043 /// Minimum speed in step/s for shield 0 (30 step/s <= Minimum speed < 10 000 step/s)
00044 #define Easyspin_CONF_PARAM_MIN_SPEED_SHIELD_0  (2000)
00045 /// Minimum speed in step/s for shield 1 (30 step/s <= Minimum speed < 10 000 step/s)
00046 #define Easyspin_CONF_PARAM_MIN_SPEED_SHIELD_1  (2000)
00047 /// Minimum speed in step/s for shield 2 (30 step/s <= Minimum speed < 10 000 step/s)
00048 #define Easyspin_CONF_PARAM_MIN_SPEED_SHIELD_2  (2000)
00049 
00050 
00051 /************************ Phase Current Control *******************************/
00052 
00053 // Current value that is assigned to the torque regulation DAC
00054 /// TVAL register value for shield 0 (range 31.25mA to 4000mA)
00055 #define Easyspin_CONF_PARAM_TVAL_SHIELD_0  (400)
00056 /// TVAL register value for shield 1 (range 31.25mA to 4000mA)
00057 #define Easyspin_CONF_PARAM_TVAL_SHIELD_1  (400)
00058 /// TVAL register value for shield 2 (range 31.25mA to 4000mA)
00059 #define Easyspin_CONF_PARAM_TVAL_SHIELD_2  (400)
00060 
00061 /// Fall time value (T_FAST field of T_FAST register) for shield 0 (range 2us to 32us)
00062 #define Easyspin_CONF_PARAM_FAST_STEP_SHIELD_0  (Easyspin_FAST_STEP_12us)
00063 /// Fall time value (T_FAST field of T_FAST register) for shield 1 (range 2us to 32us)
00064 #define Easyspin_CONF_PARAM_FAST_STEP_SHIELD_1  (Easyspin_FAST_STEP_12us)
00065 /// Fall time value (T_FAST field of T_FAST register) for shield 2 (range 2us to 32us)
00066 #define Easyspin_CONF_PARAM_FAST_STEP_SHIELD_2  (Easyspin_FAST_STEP_12us)
00067 
00068 /// Maximum fast decay time (T_OFF field of T_FAST register) for shield 0 (range 2us to 32us)
00069 #define Easyspin_CONF_PARAM_TOFF_FAST_SHIELD_0  (Easyspin_TOFF_FAST_8us)
00070 /// Maximum fast decay time (T_OFF field of T_FAST register) for shield 1 (range 2us to 32us)
00071 #define Easyspin_CONF_PARAM_TOFF_FAST_SHIELD_1  (Easyspin_TOFF_FAST_8us)
00072 /// Maximum fast decay time (T_OFF field of T_FAST register) for shield 2 (range 2us to 32us)
00073 #define Easyspin_CONF_PARAM_TOFF_FAST_SHIELD_2  (Easyspin_TOFF_FAST_8us)
00074 
00075 /// Minimum ON time (TON_MIN register) for shield 0 (range 0.5us to 64us)
00076 #define Easyspin_CONF_PARAM_TON_MIN_SHIELD_0 (3)
00077 /// Minimum ON time (TON_MIN register) for shield 1 (range 0.5us to 64us)
00078 #define Easyspin_CONF_PARAM_TON_MIN_SHIELD_1 (3)
00079 /// Minimum ON time (TON_MIN register) for shield 2 (range 0.5us to 64us)
00080 #define Easyspin_CONF_PARAM_TON_MIN_SHIELD_2 (3)
00081 
00082 /// Minimum OFF time (TOFF_MIN register) for shield 0 (range 0.5us to 64us)
00083 #define Easyspin_CONF_PARAM_TOFF_MIN_SHIELD_0 (21)
00084 /// Minimum OFF time (TOFF_MIN register) for shield 1 (range 0.5us to 64us)
00085 #define Easyspin_CONF_PARAM_TOFF_MIN_SHIELD_1 (21)
00086 /// Minimum OFF time (TOFF_MIN register) for shield 2 (range 0.5us to 64us)
00087 #define Easyspin_CONF_PARAM_TOFF_MIN_SHIELD_2 (21)
00088 
00089 /******************************* Others ***************************************/
00090 
00091 /// Overcurrent threshold settings for shield 0 (OCD_TH register)
00092 #define Easyspin_CONF_PARAM_OCD_TH_SHIELD_0  (Easyspin_OCD_TH_750mA)
00093 /// Overcurrent threshold settings for shield 1 (OCD_TH register)
00094 #define Easyspin_CONF_PARAM_OCD_TH_SHIELD_1  (Easyspin_OCD_TH_750mA)
00095 /// Overcurrent threshold settings for shield 2 (OCD_TH register)
00096 #define Easyspin_CONF_PARAM_OCD_TH_SHIELD_2  (Easyspin_OCD_TH_750mA)
00097 
00098 /// Alarm settings for shield 0 (ALARM_EN register)
00099 #define Easyspin_CONF_PARAM_ALARM_EN_SHIELD_0  (Easyspin_ALARM_EN_OVERCURRENT |\
00100                                                 Easyspin_ALARM_EN_THERMAL_SHUTDOWN |\
00101                                                 Easyspin_ALARM_EN_THERMAL_WARNING |\
00102                                                 Easyspin_ALARM_EN_UNDERVOLTAGE |\
00103                                                 Easyspin_ALARM_EN_SW_TURN_ON |\
00104                                                 Easyspin_ALARM_EN_WRONG_NPERF_CMD)
00105 
00106 ///Alarm settings for shield 1 (ALARM_EN register)
00107 #define Easyspin_CONF_PARAM_ALARM_EN_SHIELD_1  (Easyspin_ALARM_EN_OVERCURRENT |\
00108                                                 Easyspin_ALARM_EN_THERMAL_SHUTDOWN |\
00109                                                 Easyspin_ALARM_EN_THERMAL_WARNING |\
00110                                                 Easyspin_ALARM_EN_UNDERVOLTAGE |\
00111                                                 Easyspin_ALARM_EN_SW_TURN_ON |\
00112                                                 Easyspin_ALARM_EN_WRONG_NPERF_CMD)
00113 
00114 /// Alarm settings for shield 2 (ALARM_EN register)
00115 #define Easyspin_CONF_PARAM_ALARM_EN_SHIELD_2  (Easyspin_ALARM_EN_OVERCURRENT |\
00116                                                 Easyspin_ALARM_EN_THERMAL_SHUTDOWN |\
00117                                                 Easyspin_ALARM_EN_THERMAL_WARNING |\
00118                                                 Easyspin_ALARM_EN_UNDERVOLTAGE |\
00119                                                 Easyspin_ALARM_EN_SW_TURN_ON |\
00120                                                 Easyspin_ALARM_EN_WRONG_NPERF_CMD)
00121 
00122 /// Step selection settings for shield 0 (STEP_SEL field of STEP_MODE register)
00123 #define Easyspin_CONF_PARAM_STEP_SEL_SHIELD_0  (Easyspin_STEP_SEL_1_16)
00124 /// Step selection settings for shield 1 (STEP_SEL field of STEP_MODE register)
00125 #define Easyspin_CONF_PARAM_STEP_SEL_SHIELD_1  (Easyspin_STEP_SEL_1_16)
00126 /// Step selection settings for shield 2 (STEP_SEL field of STEP_MODE register)
00127 #define Easyspin_CONF_PARAM_STEP_SEL_SHIELD_2  (Easyspin_STEP_SEL_1_16)
00128 
00129 /// Synch. selection settings for shield 0 (SYNC_SEL field of STEP_MODE register)
00130 #define Easyspin_CONF_PARAM_SYNC_SEL_SHIELD_0  (Easyspin_SYNC_SEL_1_2)
00131 /// Synch. selection settings for shield 1 (SYNC_SEL field of STEP_MODE register)
00132 #define Easyspin_CONF_PARAM_SYNC_SEL_SHIELD_1  (Easyspin_SYNC_SEL_1_2)
00133 /// Synch. selection settings for shield 2 (SYNC_SEL field of STEP_MODE register)
00134 #define Easyspin_CONF_PARAM_SYNC_SEL_SHIELD_2  (Easyspin_SYNC_SEL_1_2)
00135 
00136 /// Target Swicthing Period for shield 0 (field TOFF of CONFIG register)
00137 #define Easyspin_CONF_PARAM_TOFF_SHIELD_0  (Easyspin_CONFIG_TOFF_044us)
00138 /// Target Swicthing Period for shield 1 (field TOFF of CONFIG register)
00139 #define Easyspin_CONF_PARAM_TOFF_SHIELD_1  (Easyspin_CONFIG_TOFF_044us)
00140 /// Target Swicthing Period for shield 2 (field TOFF of CONFIG register)
00141 #define Easyspin_CONF_PARAM_TOFF_SHIELD_2  (Easyspin_CONFIG_TOFF_044us)
00142 
00143 /// Slew rate for shield 0 (POW_SR field of CONFIG register)
00144 #define Easyspin_CONF_PARAM_SR_SHIELD_0  (Easyspin_CONFIG_SR_320V_us)
00145 /// Slew rate for shield 1 (POW_SR field of CONFIG register)
00146 #define Easyspin_CONF_PARAM_SR_SHIELD_1  (Easyspin_CONFIG_SR_320V_us)
00147 /// Slew rate for shield 2 (POW_SR field of CONFIG register)
00148 #define Easyspin_CONF_PARAM_SR_SHIELD_2  (Easyspin_CONFIG_SR_320V_us)
00149 
00150 /// Over current shutwdown enabling for shield 0 (OC_SD field of CONFIG register)
00151 #define Easyspin_CONF_PARAM_OC_SD_SHIELD_0  (Easyspin_CONFIG_OC_SD_ENABLE)
00152 /// Over current shutwdown enabling for shield 1 (OC_SD field of CONFIG register)
00153 #define Easyspin_CONF_PARAM_OC_SD_SHIELD_1  (Easyspin_CONFIG_OC_SD_ENABLE)
00154 /// Over current shutwdown enabling for shield 2 (OC_SD field of CONFIG register)
00155 #define Easyspin_CONF_PARAM_OC_SD_SHIELD_2  (Easyspin_CONFIG_OC_SD_ENABLE)
00156 
00157 /// Torque regulation method for shield 0 (EN_TQREG field of CONFIG register)
00158 #define Easyspin_CONF_PARAM_TQ_REG_SHIELD_0  (Easyspin_CONFIG_EN_TQREG_TVAL_USED)
00159 ///Torque regulation method for shield 1 (EN_TQREG field of CONFIG register)
00160 #define Easyspin_CONF_PARAM_TQ_REG_SHIELD_1  (Easyspin_CONFIG_EN_TQREG_TVAL_USED)
00161 /// Torque regulation method for shield 2 (EN_TQREG field of CONFIG register)
00162 #define Easyspin_CONF_PARAM_TQ_REG_SHIELD_2  (Easyspin_CONFIG_EN_TQREG_TVAL_USED)
00163 
00164 /// Clock setting for shield 0 (OSC_CLK_SEL field of CONFIG register)
00165 #define Easyspin_CONF_PARAM_CLOCK_SETTING_SHIELD_0  (Easyspin_CONFIG_INT_16MHZ)
00166 /// Clock setting for shield 1 (OSC_CLK_SEL field of CONFIG register)
00167 #define Easyspin_CONF_PARAM_CLOCK_SETTING_SHIELD_1  (Easyspin_CONFIG_INT_16MHZ)
00168 /// Clock setting for shield 2 (OSC_CLK_SEL field of CONFIG register)
00169 #define Easyspin_CONF_PARAM_CLOCK_SETTING_SHIELD_2  (Easyspin_CONFIG_INT_16MHZ)
00170 
00171 #endif /* __Easyspin_TARGET_CONFIG_H */