# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.8
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.
from sys import version_info
if version_info >= (2, 6, 0):
def swig_import_helper():
from os.path import dirname
import imp
fp = None
try:
fp, pathname, description = imp.find_module('_pyupm_adafruitms1438', [dirname(__file__)])
except ImportError:
import _pyupm_adafruitms1438
return _pyupm_adafruitms1438
if fp is not None:
try:
_mod = imp.load_module('_pyupm_adafruitms1438', fp, pathname, description)
finally:
fp.close()
return _mod
_pyupm_adafruitms1438 = swig_import_helper()
del swig_import_helper
else:
import _pyupm_adafruitms1438
del version_info
try:
_swig_property = property
except NameError:
pass # Python < 2.2 doesn't have 'property'.
def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
if (name == "thisown"):
return self.this.own(value)
if (name == "this"):
if type(value).__name__ == 'SwigPyObject':
self.__dict__[name] = value
return
method = class_type.__swig_setmethods__.get(name, None)
if method:
return method(self, value)
if (not static):
if _newclass:
object.__setattr__(self, name, value)
else:
self.__dict__[name] = value
else:
raise AttributeError("You cannot add attributes to %s" % self)
def _swig_setattr(self, class_type, name, value):
return _swig_setattr_nondynamic(self, class_type, name, value, 0)
def _swig_getattr_nondynamic(self, class_type, name, static=1):
if (name == "thisown"):
return self.this.own()
method = class_type.__swig_getmethods__.get(name, None)
if method:
return method(self)
if (not static):
return object.__getattr__(self, name)
else:
raise AttributeError(name)
def _swig_getattr(self, class_type, name):
return _swig_getattr_nondynamic(self, class_type, name, 0)
def _swig_repr(self):
try:
strthis = "proxy of " + self.this.__repr__()
except Exception:
strthis = ""
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
try:
_object = object
_newclass = 1
except AttributeError:
class _object:
pass
_newclass = 0
def getVersion():
return _pyupm_adafruitms1438.getVersion()
getVersion = _pyupm_adafruitms1438.getVersion
_pyupm_adafruitms1438.ADAFRUITMS1438_I2C_BUS_swigconstant(_pyupm_adafruitms1438)
ADAFRUITMS1438_I2C_BUS = _pyupm_adafruitms1438.ADAFRUITMS1438_I2C_BUS
_pyupm_adafruitms1438.ADAFRUITMS1438_DEFAULT_I2C_ADDR_swigconstant(_pyupm_adafruitms1438)
ADAFRUITMS1438_DEFAULT_I2C_ADDR = _pyupm_adafruitms1438.ADAFRUITMS1438_DEFAULT_I2C_ADDR
[docs]class AdafruitMS1438(_object):
"""
API for the AdafruitMS1438 Motor Shield.
ID: adafruitms1438
Name: Module for the Adafruit Motor Shield 1438
Category: motor
Manufacturer: adafruit
Link:http://www.adafruit.com/products/1438
Connection: i2c This class implements support for the stepper and DC
motors that can be connected to this Motor Shield. Note: the two servo
connections are not controlled by the PCA9685 controller (or this
class). They are connected directly to digital PWM pins 9 and 10 on
the Arduino* breakout board.
An example using a DC motor connected to M3An example using a stepper
motor connected to M1 & M2
C++ includes: adafruitms1438.hpp
"""
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, AdafruitMS1438, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, AdafruitMS1438, name)
__repr__ = _swig_repr
DIR_NONE = _pyupm_adafruitms1438.AdafruitMS1438_DIR_NONE
DIR_CW = _pyupm_adafruitms1438.AdafruitMS1438_DIR_CW
DIR_CCW = _pyupm_adafruitms1438.AdafruitMS1438_DIR_CCW
MOTOR_M1 = _pyupm_adafruitms1438.AdafruitMS1438_MOTOR_M1
MOTOR_M2 = _pyupm_adafruitms1438.AdafruitMS1438_MOTOR_M2
MOTOR_M3 = _pyupm_adafruitms1438.AdafruitMS1438_MOTOR_M3
MOTOR_M4 = _pyupm_adafruitms1438.AdafruitMS1438_MOTOR_M4
STEPMOTOR_M12 = _pyupm_adafruitms1438.AdafruitMS1438_STEPMOTOR_M12
STEPMOTOR_M34 = _pyupm_adafruitms1438.AdafruitMS1438_STEPMOTOR_M34
def __init__(self, bus, address=0x60):
"""
AdafruitMS1438(int bus, uint8_t
address=ADAFRUITMS1438_DEFAULT_I2C_ADDR)
AdafruitMS1438 constructor
Parameters:
-----------
bus: I2C bus to use
address: Address for this sensor
"""
this = _pyupm_adafruitms1438.new_AdafruitMS1438(bus, address)
try:
self.this.append(this)
except Exception:
self.this = this
__swig_destroy__ = _pyupm_adafruitms1438.delete_AdafruitMS1438
__del__ = lambda self: None
[docs] def getMillis(self, motor):
"""
uint32_t
getMillis(STEPMOTORS_T motor)
Returns the number of milliseconds elapsed since initClock(...) was
last called.
Elapsed milliseconds
"""
return _pyupm_adafruitms1438.AdafruitMS1438_getMillis(self, motor)
[docs] def initClock(self, motor):
"""
void
initClock(STEPMOTORS_T motor)
Resets the clock
"""
return _pyupm_adafruitms1438.AdafruitMS1438_initClock(self, motor)
[docs] def setPWMPeriod(self, hz):
"""
void
setPWMPeriod(float hz)
Sets the PWM period. Note: this applies to all PWM channels.
Parameters:
-----------
hz: Sets the PWM period
"""
return _pyupm_adafruitms1438.AdafruitMS1438_setPWMPeriod(self, hz)
[docs] def enableMotor(self, motor):
"""
void
enableMotor(DCMOTORS_T motor)
Enables PWM output for a motor
Parameters:
-----------
motor: DC motor to enable
"""
return _pyupm_adafruitms1438.AdafruitMS1438_enableMotor(self, motor)
[docs] def disableMotor(self, motor):
"""
void
disableMotor(DCMOTORS_T motor)
Disables PWM output for a motor
Parameters:
-----------
motor: DC motor to disable
"""
return _pyupm_adafruitms1438.AdafruitMS1438_disableMotor(self, motor)
[docs] def enableStepper(self, motor):
"""
void
enableStepper(STEPMOTORS_T motor)
Enables output for a stepper motor
Parameters:
-----------
motor: Stepper motor to enable
"""
return _pyupm_adafruitms1438.AdafruitMS1438_enableStepper(self, motor)
[docs] def disableStepper(self, motor):
"""
void
disableStepper(STEPMOTORS_T motor)
Disable output for a stepper motor
Parameters:
-----------
motor: Stepper motor to disable
"""
return _pyupm_adafruitms1438.AdafruitMS1438_disableStepper(self, motor)
[docs] def setMotorSpeed(self, motor, speed):
"""
void
setMotorSpeed(DCMOTORS_T motor, int speed)
set the speed of a DC motor. Values can range from 0 (off) to 100
(full speed).
Parameters:
-----------
motor: the DC motor to configure
speed: speed to set the motor to
"""
return _pyupm_adafruitms1438.AdafruitMS1438_setMotorSpeed(self, motor, speed)
[docs] def setStepperSpeed(self, motor, speed):
"""
void
setStepperSpeed(STEPMOTORS_T motor, int speed)
Sets the speed of a stepper in revolutions per minute (RPM)
Parameters:
-----------
motor: DC motor to configure
speed: Speed to set the motor to
"""
return _pyupm_adafruitms1438.AdafruitMS1438_setStepperSpeed(self, motor, speed)
[docs] def setMotorDirection(self, motor, dir):
"""
void
setMotorDirection(DCMOTORS_T motor, DIRECTION_T dir)
Sets the direction of a DC motor, clockwise or counterclockwise
Parameters:
-----------
motor: DC motor to configure
dir: Direction to set the motor in
"""
return _pyupm_adafruitms1438.AdafruitMS1438_setMotorDirection(self, motor, dir)
[docs] def setStepperDirection(self, motor, dir):
"""
void
setStepperDirection(STEPMOTORS_T motor, DIRECTION_T dir)
Sets the direction of a stepper motor, clockwise or counterclockwise
Parameters:
-----------
motor: Stepper motor to configure
dir: Direction to set the motor in
"""
return _pyupm_adafruitms1438.AdafruitMS1438_setStepperDirection(self, motor, dir)
[docs] def stepConfig(self, motor, stepsPerRev):
"""
void
stepConfig(STEPMOTORS_T motor, unsigned int stepsPerRev)
Sets a stepper motor configuration
Parameters:
-----------
motor: Stepper motor to configure
stepsPerRev: Number of steps to complete a full revolution
"""
return _pyupm_adafruitms1438.AdafruitMS1438_stepConfig(self, motor, stepsPerRev)
[docs] def stepperSteps(self, motor, steps):
"""
void
stepperSteps(STEPMOTORS_T motor, unsigned int steps)
Steps a stepper motor a specified number of steps
Parameters:
-----------
motor: Stepper motor to step
steps: Number of steps to move the stepper motor
"""
return _pyupm_adafruitms1438.AdafruitMS1438_stepperSteps(self, motor, steps)
AdafruitMS1438_swigregister = _pyupm_adafruitms1438.AdafruitMS1438_swigregister
AdafruitMS1438_swigregister(AdafruitMS1438)
# This file is compatible with both classic and new-style classes.