# 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_cjq4435', [dirname(__file__)])
except ImportError:
import _pyupm_cjq4435
return _pyupm_cjq4435
if fp is not None:
try:
_mod = imp.load_module('_pyupm_cjq4435', fp, pathname, description)
finally:
fp.close()
return _mod
_pyupm_cjq4435 = swig_import_helper()
del swig_import_helper
else:
import _pyupm_cjq4435
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_cjq4435.getVersion()
getVersion = _pyupm_cjq4435.getVersion
[docs]class CJQ4435(_object):
"""
API for the CJQ4435 MOSFET.
ID: cjq4435
Name: MOSFET
Other Names: CJQ4435
Category: electric
Manufacturer: seeed
Connection: gpio pwm
Kit: robok UPM module for the CJQ4435 MOSFET. It was developed using
the Grove MOSFET module, but could be used with any MOSFET. A MOSFET
is like a switch, but it can switch much faster than a mechanical
relay. Here, we implement support via MRAA pulse width modulation
(PWM) functions. Note: available periods vary depending on the
capabilities of your platform.
C++ includes: cjq4435.hpp
"""
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, CJQ4435, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, CJQ4435, name)
__repr__ = _swig_repr
def __init__(self, pin):
"""
CJQ4435(int pin)
CJQ4435 constructor
Parameters:
-----------
pin: Digital pin to use; this pin must be PWM-capable
"""
this = _pyupm_cjq4435.new_CJQ4435(pin)
try:
self.this.append(this)
except Exception:
self.this = this
__swig_destroy__ = _pyupm_cjq4435.delete_CJQ4435
__del__ = lambda self: None
[docs] def setPeriodUS(self, us):
"""
void
setPeriodUS(int us)
Sets a period in microseconds
Parameters:
-----------
us: Period in microseconds
"""
return _pyupm_cjq4435.CJQ4435_setPeriodUS(self, us)
[docs] def setPeriodMS(self, ms):
"""
void
setPeriodMS(int ms)
Sets a period in milliseconds
Parameters:
-----------
ms: Period in milliseconds
"""
return _pyupm_cjq4435.CJQ4435_setPeriodMS(self, ms)
[docs] def setPeriodSeconds(self, seconds):
"""
void
setPeriodSeconds(float seconds)
Sets a period in seconds
Parameters:
-----------
seconds: Period in seconds
"""
return _pyupm_cjq4435.CJQ4435_setPeriodSeconds(self, seconds)
[docs] def enable(self, enable):
"""
void enable(bool enable)
Enables output
Parameters:
-----------
enable: Enables PWM output if true, disables otherwise
"""
return _pyupm_cjq4435.CJQ4435_enable(self, enable)
[docs] def setDutyCycle(self, dutyCycle):
"""
void
setDutyCycle(float dutyCycle)
Sets a duty cycle. Duty cycle is a floating-point number between 0.0
(always off) and 1.0 (always on). It represents a proportion of time,
per period, during which the output is driven high.
Parameters:
-----------
dutyCycle: Duty cycle to use
"""
return _pyupm_cjq4435.CJQ4435_setDutyCycle(self, dutyCycle)
[docs] def on(self):
"""
void on()
Shortcut to turn the output to continuous on (high)
"""
return _pyupm_cjq4435.CJQ4435_on(self)
[docs] def off(self):
"""
void off()
Shortcut to turn the output to continuous off (low)
"""
return _pyupm_cjq4435.CJQ4435_off(self)
CJQ4435_swigregister = _pyupm_cjq4435.CJQ4435_swigregister
CJQ4435_swigregister(CJQ4435)
# This file is compatible with both classic and new-style classes.