tmc2660: Use helper functions for register access and simplify TMC2660 parameters

sense_resistor is now a mandatory parameter for tmc2660 blocks. Duet2 users should use a value of 0.051

Signed-off-by: Florian Heilmann <Florian.Heilmann@gmx.net>
This commit is contained in:
Florian Heilmann
2019-03-02 00:41:00 +00:00
committed by KevinOConnor
parent 4541f16cd9
commit e96b71a9a3
3 changed files with 208 additions and 224 deletions

View File

@@ -1050,9 +1050,9 @@
#run_current:
# The amount of current (in ampere) used by the driver during stepper
# movement. This parameter must be provided.
#sense_resistor: 0.051
# The resistance (in ohms) of the motor sense resistor. The default
# is 0.051 ohms.
#sense_resistor:
# The resistance (in ohms) of the motor sense resistor. This parameter
# must be provided.
#idle_current_percent: 100
# The percentage of the run_current the stepper driver will be
# lowered to when the idle timeout expires (you need to set up the
@@ -1062,42 +1062,35 @@
# their position. There is also small delay until the current is
# raised again, so take this into account when commanding fast moves
# while the stepper is idling. The default is 100 (no reduction).
#driver_DEDGE: False
#driver_TBL: 36
# Valid values are 16, 24, 36, 54.
#driver_CHM: spreadcycle
# Valid values are 'spreadcycle' and 'constant_toff'
#driver_RNDTF: False
#driver_HDEC: False
#driver_HEND: 7 if spreadcycle is used, 3 otherwise
#driver_HSTRT: 5 if spreadcycle is used, 4 otherwise
#driver_TOFF: 7 if spreadcycle is used, 4 otherwise
#driver_SEIMIN: half
# Valid values are 'quarter' and 'half'.
#driver_SEDN: 32
# Valid values are 1, 2, 8, 32.
#driver_DEDGE: 0
#driver_TBL: 2
#driver_RNDTF: 0
#driver_HDEC: 0
#driver_CHM: 0
#driver_HEND: 6
#driver_HSTRT: 3
#driver_TOFF: 4
#driver_SEIMIN: 0
#driver_SEDN: 0
#driver_SEMAX: 0
#driver_SEUP: 1
# Valid values are 1, 2, 4, 8.
#driver_SEUP: 0
#driver_SEMIN: 0
#driver_SFILT: True
#driver_SGT: -64
#driver_SLPH: min
# Valid values are 'min', 'min_tc', 'med_tc', 'max'
#driver_SLPL: min
# Valid values are 'min', 'med', 'max'
#driver_DISS2G: False
#driver_TS2G: 0.8
# Valid values are 0.8, 1.2, 1.6, 3.2.
#driver_VSENSE: high
# Valid values are 'high' and 'low'
#driver_SFILT: 1
#driver_SGT: 0
#driver_SLPH: 0
#driver_SLPL: 0
#driver_DISS2G: 0
#driver_TS2G: 3
#driver_VSENSE: 1
#
# Set the given parameter during the configuration of the TMC2660
# chip. This may be used to set custom driver parameters. The
# defaults for each parameter are next to the parameter name in the
# list above. See the TMC2660 datasheet about what each parameter
# does and what the restrictions on parameter combinations are.
# Be especially aware of the CHOPCONF register, where setting CHM to
# either 0 or one will lead to layout changes (the first bit of HDEC)
# is interpreted as the MSB of HSTRT in this case).
# Homing override. One may use this mechanism to run a series of
# g-code commands in place of a G28 found in the normal g-code input.

View File

@@ -98,6 +98,7 @@ spi_bus: 1 # All TMC2660 drivers are connected to USART1, which is bus 1 on the
microsteps: 16
interpolate: True # 1/16 micro-steps interpolated to 1/256
run_current: 1.000
sense_resistor: 0.051
idle_current_percent: 20
[stepper_y]
@@ -115,6 +116,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
idle_current_percent: 20
[stepper_z]
@@ -132,6 +134,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
#On drive E4
[stepper_z1]
@@ -146,6 +149,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
#On drive E5
[stepper_z2]
@@ -160,6 +164,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
#On drive E6
[stepper_z3]
@@ -174,6 +179,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
#On drive E0
[extruder0]
@@ -199,6 +205,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
#On drive E1
[extruder1]
@@ -224,6 +231,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
# On drive E2
[extruder2]
@@ -249,6 +257,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
# On drive E3
[extruder3]
@@ -274,6 +283,7 @@ spi_bus: 1
microsteps: 16
interpolate: True
run_current: 1.000
sense_resistor: 0.051
[heater_bed]
heater_pin: !PA19