Speed profile working
Fork of Easyspin_lib by
easyspin_config.h@0:cba942f8172a, 2015-07-07 (annotated)
- Committer:
- julientiron
- Date:
- Tue Jul 07 20:35:36 2015 +0000
- Revision:
- 0:cba942f8172a
- Child:
- 1:9efe863db15e
run function is working;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
julientiron | 0:cba942f8172a | 1 | /******************************************************//** |
julientiron | 0:cba942f8172a | 2 | * @file Easyspin_target_config.h |
julientiron | 0:cba942f8172a | 3 | * @version V1.0 |
julientiron | 0:cba942f8172a | 4 | * @date June 29, 2015 |
julientiron | 0:cba942f8172a | 5 | * @brief Predefines values for the Easyspin registers |
julientiron | 0:cba942f8172a | 6 | * and for the shields parameters |
julientiron | 0:cba942f8172a | 7 | * |
julientiron | 0:cba942f8172a | 8 | * This file is free software; you can redistribute it and/or modify |
julientiron | 0:cba942f8172a | 9 | * it under the terms of either the GNU General Public License version 2 |
julientiron | 0:cba942f8172a | 10 | * or the GNU Lesser General Public License version 2.1, both as |
julientiron | 0:cba942f8172a | 11 | * published by the Free Software Foundation. |
julientiron | 0:cba942f8172a | 12 | **********************************************************/ |
julientiron | 0:cba942f8172a | 13 | |
julientiron | 0:cba942f8172a | 14 | #ifndef __Easyspin_TARGET_CONFIG_H |
julientiron | 0:cba942f8172a | 15 | #define __Easyspin_TARGET_CONFIG_H |
julientiron | 0:cba942f8172a | 16 | |
julientiron | 0:cba942f8172a | 17 | /// The maximum number of shields in the daisy chain |
julientiron | 0:cba942f8172a | 18 | #define MAX_NUMBER_OF_SHIELDS (3) |
julientiron | 0:cba942f8172a | 19 | |
julientiron | 0:cba942f8172a | 20 | /************************ Speed Profile *******************************/ |
julientiron | 0:cba942f8172a | 21 | |
julientiron | 0:cba942f8172a | 22 | /// Acceleration rate in step/s2 for shield 0 (must be greater than 0) |
julientiron | 0:cba942f8172a | 23 | #define Easyspin_CONF_PARAM_ACC_SHIELD_0 (160) |
julientiron | 0:cba942f8172a | 24 | /// Acceleration rate in step/s2 for shield 1 (must be greater than 0) |
julientiron | 0:cba942f8172a | 25 | #define Easyspin_CONF_PARAM_ACC_SHIELD_1 (160) |
julientiron | 0:cba942f8172a | 26 | /// Acceleration rate in step/s2 for shield 2 (must be greater than 0) |
julientiron | 0:cba942f8172a | 27 | #define Easyspin_CONF_PARAM_ACC_SHIELD_2 (160) |
julientiron | 0:cba942f8172a | 28 | |
julientiron | 0:cba942f8172a | 29 | /// Deceleration rate in step/s2 for shield 0 (must be greater than 0) |
julientiron | 0:cba942f8172a | 30 | #define Easyspin_CONF_PARAM_DEC_SHIELD_0 (160) |
julientiron | 0:cba942f8172a | 31 | /// Deceleration rate in step/s2 for shield 1 (must be greater than 0) |
julientiron | 0:cba942f8172a | 32 | #define Easyspin_CONF_PARAM_DEC_SHIELD_1 (160) |
julientiron | 0:cba942f8172a | 33 | /// Deceleration rate in step/s2 for shield 2 (must be greater than 0) |
julientiron | 0:cba942f8172a | 34 | #define Easyspin_CONF_PARAM_DEC_SHIELD_2 (160) |
julientiron | 0:cba942f8172a | 35 | |
julientiron | 0:cba942f8172a | 36 | /// Maximum speed in step/s for shield 0 (30 step/s < Maximum speed <= 10 000 step/s ) |
julientiron | 0:cba942f8172a | 37 | #define Easyspin_CONF_PARAM_MAX_SPEED_SHIELD_0 (1600) |
julientiron | 0:cba942f8172a | 38 | /// Maximum speed in step/s for shield 1 (30 step/s < Maximum speed <= 10 000 step/s ) |
julientiron | 0:cba942f8172a | 39 | #define Easyspin_CONF_PARAM_MAX_SPEED_SHIELD_1 (1600) |
julientiron | 0:cba942f8172a | 40 | /// Maximum speed in step/s for shield 2 (30 step/s < Maximum speed <= 10 000 step/s ) |
julientiron | 0:cba942f8172a | 41 | #define Easyspin_CONF_PARAM_MAX_SPEED_SHIELD_2 (1600) |
julientiron | 0:cba942f8172a | 42 | |
julientiron | 0:cba942f8172a | 43 | /// Minimum speed in step/s for shield 0 (30 step/s <= Minimum speed < 10 000 step/s) |
julientiron | 0:cba942f8172a | 44 | #define Easyspin_CONF_PARAM_MIN_SPEED_SHIELD_0 (800) |
julientiron | 0:cba942f8172a | 45 | /// Minimum speed in step/s for shield 1 (30 step/s <= Minimum speed < 10 000 step/s) |
julientiron | 0:cba942f8172a | 46 | #define Easyspin_CONF_PARAM_MIN_SPEED_SHIELD_1 (800) |
julientiron | 0:cba942f8172a | 47 | /// Minimum speed in step/s for shield 2 (30 step/s <= Minimum speed < 10 000 step/s) |
julientiron | 0:cba942f8172a | 48 | #define Easyspin_CONF_PARAM_MIN_SPEED_SHIELD_2 (800) |
julientiron | 0:cba942f8172a | 49 | |
julientiron | 0:cba942f8172a | 50 | |
julientiron | 0:cba942f8172a | 51 | /************************ Phase Current Control *******************************/ |
julientiron | 0:cba942f8172a | 52 | |
julientiron | 0:cba942f8172a | 53 | // Current value that is assigned to the torque regulation DAC |
julientiron | 0:cba942f8172a | 54 | /// TVAL register value for shield 0 (range 31.25mA to 4000mA) |
julientiron | 0:cba942f8172a | 55 | #define Easyspin_CONF_PARAM_TVAL_SHIELD_0 (250) |
julientiron | 0:cba942f8172a | 56 | /// TVAL register value for shield 1 (range 31.25mA to 4000mA) |
julientiron | 0:cba942f8172a | 57 | #define Easyspin_CONF_PARAM_TVAL_SHIELD_1 (250) |
julientiron | 0:cba942f8172a | 58 | /// TVAL register value for shield 2 (range 31.25mA to 4000mA) |
julientiron | 0:cba942f8172a | 59 | #define Easyspin_CONF_PARAM_TVAL_SHIELD_2 (250) |
julientiron | 0:cba942f8172a | 60 | |
julientiron | 0:cba942f8172a | 61 | /// Fall time value (T_FAST field of T_FAST register) for shield 0 (range 2us to 32us) |
julientiron | 0:cba942f8172a | 62 | #define Easyspin_CONF_PARAM_FAST_STEP_SHIELD_0 (Easyspin_FAST_STEP_12us) |
julientiron | 0:cba942f8172a | 63 | /// Fall time value (T_FAST field of T_FAST register) for shield 1 (range 2us to 32us) |
julientiron | 0:cba942f8172a | 64 | #define Easyspin_CONF_PARAM_FAST_STEP_SHIELD_1 (Easyspin_FAST_STEP_12us) |
julientiron | 0:cba942f8172a | 65 | /// Fall time value (T_FAST field of T_FAST register) for shield 2 (range 2us to 32us) |
julientiron | 0:cba942f8172a | 66 | #define Easyspin_CONF_PARAM_FAST_STEP_SHIELD_2 (Easyspin_FAST_STEP_12us) |
julientiron | 0:cba942f8172a | 67 | |
julientiron | 0:cba942f8172a | 68 | /// Maximum fast decay time (T_OFF field of T_FAST register) for shield 0 (range 2us to 32us) |
julientiron | 0:cba942f8172a | 69 | #define Easyspin_CONF_PARAM_TOFF_FAST_SHIELD_0 (Easyspin_TOFF_FAST_8us) |
julientiron | 0:cba942f8172a | 70 | /// Maximum fast decay time (T_OFF field of T_FAST register) for shield 1 (range 2us to 32us) |
julientiron | 0:cba942f8172a | 71 | #define Easyspin_CONF_PARAM_TOFF_FAST_SHIELD_1 (Easyspin_TOFF_FAST_8us) |
julientiron | 0:cba942f8172a | 72 | /// Maximum fast decay time (T_OFF field of T_FAST register) for shield 2 (range 2us to 32us) |
julientiron | 0:cba942f8172a | 73 | #define Easyspin_CONF_PARAM_TOFF_FAST_SHIELD_2 (Easyspin_TOFF_FAST_8us) |
julientiron | 0:cba942f8172a | 74 | |
julientiron | 0:cba942f8172a | 75 | /// Minimum ON time (TON_MIN register) for shield 0 (range 0.5us to 64us) |
julientiron | 0:cba942f8172a | 76 | #define Easyspin_CONF_PARAM_TON_MIN_SHIELD_0 (3) |
julientiron | 0:cba942f8172a | 77 | /// Minimum ON time (TON_MIN register) for shield 1 (range 0.5us to 64us) |
julientiron | 0:cba942f8172a | 78 | #define Easyspin_CONF_PARAM_TON_MIN_SHIELD_1 (3) |
julientiron | 0:cba942f8172a | 79 | /// Minimum ON time (TON_MIN register) for shield 2 (range 0.5us to 64us) |
julientiron | 0:cba942f8172a | 80 | #define Easyspin_CONF_PARAM_TON_MIN_SHIELD_2 (3) |
julientiron | 0:cba942f8172a | 81 | |
julientiron | 0:cba942f8172a | 82 | /// Minimum OFF time (TOFF_MIN register) for shield 0 (range 0.5us to 64us) |
julientiron | 0:cba942f8172a | 83 | #define Easyspin_CONF_PARAM_TOFF_MIN_SHIELD_0 (21) |
julientiron | 0:cba942f8172a | 84 | /// Minimum OFF time (TOFF_MIN register) for shield 1 (range 0.5us to 64us) |
julientiron | 0:cba942f8172a | 85 | #define Easyspin_CONF_PARAM_TOFF_MIN_SHIELD_1 (21) |
julientiron | 0:cba942f8172a | 86 | /// Minimum OFF time (TOFF_MIN register) for shield 2 (range 0.5us to 64us) |
julientiron | 0:cba942f8172a | 87 | #define Easyspin_CONF_PARAM_TOFF_MIN_SHIELD_2 (21) |
julientiron | 0:cba942f8172a | 88 | |
julientiron | 0:cba942f8172a | 89 | /******************************* Others ***************************************/ |
julientiron | 0:cba942f8172a | 90 | |
julientiron | 0:cba942f8172a | 91 | /// Overcurrent threshold settings for shield 0 (OCD_TH register) |
julientiron | 0:cba942f8172a | 92 | #define Easyspin_CONF_PARAM_OCD_TH_SHIELD_0 (Easyspin_OCD_TH_750mA) |
julientiron | 0:cba942f8172a | 93 | /// Overcurrent threshold settings for shield 1 (OCD_TH register) |
julientiron | 0:cba942f8172a | 94 | #define Easyspin_CONF_PARAM_OCD_TH_SHIELD_1 (Easyspin_OCD_TH_750mA) |
julientiron | 0:cba942f8172a | 95 | /// Overcurrent threshold settings for shield 2 (OCD_TH register) |
julientiron | 0:cba942f8172a | 96 | #define Easyspin_CONF_PARAM_OCD_TH_SHIELD_2 (Easyspin_OCD_TH_750mA) |
julientiron | 0:cba942f8172a | 97 | |
julientiron | 0:cba942f8172a | 98 | /// Alarm settings for shield 0 (ALARM_EN register) |
julientiron | 0:cba942f8172a | 99 | #define Easyspin_CONF_PARAM_ALARM_EN_SHIELD_0 (Easyspin_ALARM_EN_OVERCURRENT |\ |
julientiron | 0:cba942f8172a | 100 | Easyspin_ALARM_EN_THERMAL_SHUTDOWN |\ |
julientiron | 0:cba942f8172a | 101 | Easyspin_ALARM_EN_THERMAL_WARNING |\ |
julientiron | 0:cba942f8172a | 102 | Easyspin_ALARM_EN_UNDERVOLTAGE |\ |
julientiron | 0:cba942f8172a | 103 | Easyspin_ALARM_EN_SW_TURN_ON |\ |
julientiron | 0:cba942f8172a | 104 | Easyspin_ALARM_EN_WRONG_NPERF_CMD) |
julientiron | 0:cba942f8172a | 105 | |
julientiron | 0:cba942f8172a | 106 | ///Alarm settings for shield 1 (ALARM_EN register) |
julientiron | 0:cba942f8172a | 107 | #define Easyspin_CONF_PARAM_ALARM_EN_SHIELD_1 (Easyspin_ALARM_EN_OVERCURRENT |\ |
julientiron | 0:cba942f8172a | 108 | Easyspin_ALARM_EN_THERMAL_SHUTDOWN |\ |
julientiron | 0:cba942f8172a | 109 | Easyspin_ALARM_EN_THERMAL_WARNING |\ |
julientiron | 0:cba942f8172a | 110 | Easyspin_ALARM_EN_UNDERVOLTAGE |\ |
julientiron | 0:cba942f8172a | 111 | Easyspin_ALARM_EN_SW_TURN_ON |\ |
julientiron | 0:cba942f8172a | 112 | Easyspin_ALARM_EN_WRONG_NPERF_CMD) |
julientiron | 0:cba942f8172a | 113 | |
julientiron | 0:cba942f8172a | 114 | /// Alarm settings for shield 2 (ALARM_EN register) |
julientiron | 0:cba942f8172a | 115 | #define Easyspin_CONF_PARAM_ALARM_EN_SHIELD_2 (Easyspin_ALARM_EN_OVERCURRENT |\ |
julientiron | 0:cba942f8172a | 116 | Easyspin_ALARM_EN_THERMAL_SHUTDOWN |\ |
julientiron | 0:cba942f8172a | 117 | Easyspin_ALARM_EN_THERMAL_WARNING |\ |
julientiron | 0:cba942f8172a | 118 | Easyspin_ALARM_EN_UNDERVOLTAGE |\ |
julientiron | 0:cba942f8172a | 119 | Easyspin_ALARM_EN_SW_TURN_ON |\ |
julientiron | 0:cba942f8172a | 120 | Easyspin_ALARM_EN_WRONG_NPERF_CMD) |
julientiron | 0:cba942f8172a | 121 | |
julientiron | 0:cba942f8172a | 122 | /// Step selection settings for shield 0 (STEP_SEL field of STEP_MODE register) |
julientiron | 0:cba942f8172a | 123 | #define Easyspin_CONF_PARAM_STEP_SEL_SHIELD_0 (Easyspin_STEP_SEL_1_16) |
julientiron | 0:cba942f8172a | 124 | /// Step selection settings for shield 1 (STEP_SEL field of STEP_MODE register) |
julientiron | 0:cba942f8172a | 125 | #define Easyspin_CONF_PARAM_STEP_SEL_SHIELD_1 (Easyspin_STEP_SEL_1_16) |
julientiron | 0:cba942f8172a | 126 | /// Step selection settings for shield 2 (STEP_SEL field of STEP_MODE register) |
julientiron | 0:cba942f8172a | 127 | #define Easyspin_CONF_PARAM_STEP_SEL_SHIELD_2 (Easyspin_STEP_SEL_1_16) |
julientiron | 0:cba942f8172a | 128 | |
julientiron | 0:cba942f8172a | 129 | /// Synch. selection settings for shield 0 (SYNC_SEL field of STEP_MODE register) |
julientiron | 0:cba942f8172a | 130 | #define Easyspin_CONF_PARAM_SYNC_SEL_SHIELD_0 (Easyspin_SYNC_SEL_1_2) |
julientiron | 0:cba942f8172a | 131 | /// Synch. selection settings for shield 1 (SYNC_SEL field of STEP_MODE register) |
julientiron | 0:cba942f8172a | 132 | #define Easyspin_CONF_PARAM_SYNC_SEL_SHIELD_1 (Easyspin_SYNC_SEL_1_2) |
julientiron | 0:cba942f8172a | 133 | /// Synch. selection settings for shield 2 (SYNC_SEL field of STEP_MODE register) |
julientiron | 0:cba942f8172a | 134 | #define Easyspin_CONF_PARAM_SYNC_SEL_SHIELD_2 (Easyspin_SYNC_SEL_1_2) |
julientiron | 0:cba942f8172a | 135 | |
julientiron | 0:cba942f8172a | 136 | /// Target Swicthing Period for shield 0 (field TOFF of CONFIG register) |
julientiron | 0:cba942f8172a | 137 | #define Easyspin_CONF_PARAM_TOFF_SHIELD_0 (Easyspin_CONFIG_TOFF_044us) |
julientiron | 0:cba942f8172a | 138 | /// Target Swicthing Period for shield 1 (field TOFF of CONFIG register) |
julientiron | 0:cba942f8172a | 139 | #define Easyspin_CONF_PARAM_TOFF_SHIELD_1 (Easyspin_CONFIG_TOFF_044us) |
julientiron | 0:cba942f8172a | 140 | /// Target Swicthing Period for shield 2 (field TOFF of CONFIG register) |
julientiron | 0:cba942f8172a | 141 | #define Easyspin_CONF_PARAM_TOFF_SHIELD_2 (Easyspin_CONFIG_TOFF_044us) |
julientiron | 0:cba942f8172a | 142 | |
julientiron | 0:cba942f8172a | 143 | /// Slew rate for shield 0 (POW_SR field of CONFIG register) |
julientiron | 0:cba942f8172a | 144 | #define Easyspin_CONF_PARAM_SR_SHIELD_0 (Easyspin_CONFIG_SR_320V_us) |
julientiron | 0:cba942f8172a | 145 | /// Slew rate for shield 1 (POW_SR field of CONFIG register) |
julientiron | 0:cba942f8172a | 146 | #define Easyspin_CONF_PARAM_SR_SHIELD_1 (Easyspin_CONFIG_SR_320V_us) |
julientiron | 0:cba942f8172a | 147 | /// Slew rate for shield 2 (POW_SR field of CONFIG register) |
julientiron | 0:cba942f8172a | 148 | #define Easyspin_CONF_PARAM_SR_SHIELD_2 (Easyspin_CONFIG_SR_320V_us) |
julientiron | 0:cba942f8172a | 149 | |
julientiron | 0:cba942f8172a | 150 | /// Over current shutwdown enabling for shield 0 (OC_SD field of CONFIG register) |
julientiron | 0:cba942f8172a | 151 | #define Easyspin_CONF_PARAM_OC_SD_SHIELD_0 (Easyspin_CONFIG_OC_SD_ENABLE) |
julientiron | 0:cba942f8172a | 152 | /// Over current shutwdown enabling for shield 1 (OC_SD field of CONFIG register) |
julientiron | 0:cba942f8172a | 153 | #define Easyspin_CONF_PARAM_OC_SD_SHIELD_1 (Easyspin_CONFIG_OC_SD_ENABLE) |
julientiron | 0:cba942f8172a | 154 | /// Over current shutwdown enabling for shield 2 (OC_SD field of CONFIG register) |
julientiron | 0:cba942f8172a | 155 | #define Easyspin_CONF_PARAM_OC_SD_SHIELD_2 (Easyspin_CONFIG_OC_SD_ENABLE) |
julientiron | 0:cba942f8172a | 156 | |
julientiron | 0:cba942f8172a | 157 | /// Torque regulation method for shield 0 (EN_TQREG field of CONFIG register) |
julientiron | 0:cba942f8172a | 158 | #define Easyspin_CONF_PARAM_TQ_REG_SHIELD_0 (Easyspin_CONFIG_EN_TQREG_TVAL_USED) |
julientiron | 0:cba942f8172a | 159 | ///Torque regulation method for shield 1 (EN_TQREG field of CONFIG register) |
julientiron | 0:cba942f8172a | 160 | #define Easyspin_CONF_PARAM_TQ_REG_SHIELD_1 (Easyspin_CONFIG_EN_TQREG_TVAL_USED) |
julientiron | 0:cba942f8172a | 161 | /// Torque regulation method for shield 2 (EN_TQREG field of CONFIG register) |
julientiron | 0:cba942f8172a | 162 | #define Easyspin_CONF_PARAM_TQ_REG_SHIELD_2 (Easyspin_CONFIG_EN_TQREG_TVAL_USED) |
julientiron | 0:cba942f8172a | 163 | |
julientiron | 0:cba942f8172a | 164 | /// Clock setting for shield 0 (OSC_CLK_SEL field of CONFIG register) |
julientiron | 0:cba942f8172a | 165 | #define Easyspin_CONF_PARAM_CLOCK_SETTING_SHIELD_0 (Easyspin_CONFIG_INT_16MHZ) |
julientiron | 0:cba942f8172a | 166 | /// Clock setting for shield 1 (OSC_CLK_SEL field of CONFIG register) |
julientiron | 0:cba942f8172a | 167 | #define Easyspin_CONF_PARAM_CLOCK_SETTING_SHIELD_1 (Easyspin_CONFIG_INT_16MHZ) |
julientiron | 0:cba942f8172a | 168 | /// Clock setting for shield 2 (OSC_CLK_SEL field of CONFIG register) |
julientiron | 0:cba942f8172a | 169 | #define Easyspin_CONF_PARAM_CLOCK_SETTING_SHIELD_2 (Easyspin_CONFIG_INT_16MHZ) |
julientiron | 0:cba942f8172a | 170 | |
julientiron | 0:cba942f8172a | 171 | #endif /* __Easyspin_TARGET_CONFIG_H */ |