def getValOut(pinnum): "This prints a passed string into this function" gpio_in = GPIO(pinnum, "out") value = gpio_in.read() gpio_in.close() return value
class MotorController(object): """电机控制类 v2.""" FRONT_DIR = 1 BACK_DIR = 0 def __init__(self, pwm_args, dir_args, enable_args): """ :param pwm_args: e.g. {'gpio_name': 'GPIO7A1', 'mux': 1, 'name': 'PWM1', 'freq': 'xx', 'duty': 'xx'} :param dir_args: e.g. {'name': 'GPIO8A4', 'write': 0} :param enable_args: e.g. {'name': 'GPIO8A7', 'write': 1} """ self._pwm = SmartPwm(pwm_args['name']) self._pwm.set_config(pwm_args['freq'], pwm_args['freq'] / 2) self._dir = GPIO(dir_args['name']) self._dir.set_output() self._dir.write(dir_args['write']) self._enable = GPIO(enable_args['name']) self._enable.set_output() self._enable.write(enable_args['write']) def start(self): self._enable.write(0) self._pwm.start() def stop(self): self._pwm.stop() self._enable.write(1) def set_freq(self, freq): self._pwm.set_config(freq, freq / 2) @property def dir(self): return self._dir.read() @dir.setter def dir(self, value): self._dir.write(value)