Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of Easyspin_lib by
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 */
Generated on Tue Jul 12 2022 21:33:48 by
1.7.2
