drivers: vibrator: Finalize docstrings
This commit is contained in:
parent
95f1788347
commit
42fe7bf352
2 changed files with 18 additions and 3 deletions
|
@ -56,7 +56,6 @@ Device drivers
|
||||||
|
|
||||||
.. automodule:: drivers.vibrator
|
.. automodule:: drivers.vibrator
|
||||||
:members:
|
:members:
|
||||||
:undoc-members:
|
|
||||||
|
|
||||||
Libraries
|
Libraries
|
||||||
---------
|
---------
|
||||||
|
|
|
@ -1,13 +1,25 @@
|
||||||
# SPDX-License-Identifier: LGPL-3.0-or-later
|
# SPDX-License-Identifier: LGPL-3.0-or-later
|
||||||
# Copyright (C) 2020 Daniel Thompson
|
# Copyright (C) 2020 Daniel Thompson
|
||||||
|
|
||||||
# Generic PWM capable vibrator
|
"""Generic PWM capable vibration motor driver
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
"""
|
||||||
|
|
||||||
import time
|
import time
|
||||||
from machine import PWM
|
from machine import PWM
|
||||||
|
|
||||||
class Vibrator(object):
|
class Vibrator(object):
|
||||||
|
"""Vibration motor driver.
|
||||||
|
|
||||||
|
.. automethod:: __init__
|
||||||
|
"""
|
||||||
def __init__(self, pin, active_low=False):
|
def __init__(self, pin, active_low=False):
|
||||||
|
"""Specify the pin and configuration used to operate the motor.
|
||||||
|
|
||||||
|
:param machine.Pin pin: The PWM-capable pin used to driver the
|
||||||
|
vibration motor.
|
||||||
|
:param bool active_low: Invert the resting state of the motor.
|
||||||
|
"""
|
||||||
pin.value(active_low)
|
pin.value(active_low)
|
||||||
self.pin = pin
|
self.pin = pin
|
||||||
self.freq = PWM.FREQ_16MHZ
|
self.freq = PWM.FREQ_16MHZ
|
||||||
|
@ -15,9 +27,13 @@ class Vibrator(object):
|
||||||
self.active_low = active_low
|
self.active_low = active_low
|
||||||
|
|
||||||
def pulse(self, duty=25, ms=40):
|
def pulse(self, duty=25, ms=40):
|
||||||
|
"""Briefly pulse the motor.
|
||||||
|
|
||||||
|
:param int duty: Duty cycle, in percent.
|
||||||
|
:param int ms: Duration, in milliseconds.
|
||||||
|
"""
|
||||||
pwm = PWM(0, self.pin, freq=self.freq, duty=duty, period=self.period)
|
pwm = PWM(0, self.pin, freq=self.freq, duty=duty, period=self.period)
|
||||||
pwm.init()
|
pwm.init()
|
||||||
time.sleep_ms(ms)
|
time.sleep_ms(ms)
|
||||||
pwm.deinit()
|
pwm.deinit()
|
||||||
self.pin.value(self.active_low)
|
self.pin.value(self.active_low)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue