mirror of
https://github.com/Klipper3d/klipper.git
synced 2025-07-23 14:44:20 -06:00
tmc: It's not valid to schedule messages with print_time=0
A print_time of zero may translate to a negative clock on a secondary micro-controller, which would cause an internal error. Change the code to pass a real print_time or None if it is not needed. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
79c24f95b3
commit
6ec7dee07d
4 changed files with 21 additions and 14 deletions
|
@ -186,12 +186,14 @@ class MCU_TMC_SPI:
|
|||
params = self.spi.spi_transfer([reg, 0x00, 0x00, 0x00, 0x00])
|
||||
pr = bytearray(params['response'])
|
||||
return (pr[1] << 24) | (pr[2] << 16) | (pr[3] << 8) | pr[4]
|
||||
def set_register(self, reg_name, val, print_time=0.):
|
||||
min_clock = self.spi.get_mcu().print_time_to_clock(print_time)
|
||||
def set_register(self, reg_name, val, print_time=None):
|
||||
minclock = 0
|
||||
if print_time is not None:
|
||||
minclock = self.spi.get_mcu().print_time_to_clock(print_time)
|
||||
reg = Registers[reg_name]
|
||||
data = [(reg | 0x80) & 0xff, (val >> 24) & 0xff, (val >> 16) & 0xff,
|
||||
(val >> 8) & 0xff, val & 0xff]
|
||||
self.spi.spi_send(data, min_clock)
|
||||
self.spi.spi_send(data, minclock)
|
||||
|
||||
|
||||
######################################################################
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue