From ab6a8ec76e7921ddf74cbf76024f78f86d7207fb Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Sun, 18 Nov 2018 17:35:30 -0500 Subject: [PATCH] ad5206: Use bus.py helper code for spi Signed-off-by: Kevin O'Connor --- klippy/extras/ad5206.py | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/klippy/extras/ad5206.py b/klippy/extras/ad5206.py index ec4db4e5..41130815 100644 --- a/klippy/extras/ad5206.py +++ b/klippy/extras/ad5206.py @@ -3,30 +3,20 @@ # Copyright (C) 2017,2018 Kevin O'Connor # # This file may be distributed under the terms of the GNU GPLv3 license. +import bus class ad5206: def __init__(self, config): - ppins = config.get_printer().lookup_object('pins') - enable_pin = config.get('enable_pin') - enable_pin_params = ppins.lookup_pin(enable_pin) - mcu = enable_pin_params['chip'] - pin = enable_pin_params['pin'] + self.spi = bus.MCU_SPI_from_config( + config, 0, pin_option="enable_pin", default_speed=25000000) scale = config.getfloat('scale', 1., above=0.) - channels = [None]*6 - for i in range(len(channels)): + for i in range(6): val = config.getfloat('channel_%d' % (i+1,), None, minval=0., maxval=scale) if val is not None: - channels[i] = int(val * 256. / scale + .5) - oid = mcu.create_oid() - mcu.add_config_cmd( - "config_spi oid=%d bus=%d pin=%s mode=%u rate=%u shutdown_msg=" % ( - oid, 0, pin, 0, 25000000)) - for i, val in enumerate(channels): - if val is not None: - mcu.add_config_cmd( - "spi_send oid=%d data=%02x%02x" % (oid, i, val), - is_init=True) + self.set_register(i, int(val * 256. / scale + .5)) + def set_register(self, reg, value): + self.spi.spi_send([reg, value]) def load_config_prefix(config): return ad5206(config)