diff options
Diffstat (limited to 'tests/extmod/machine_pulse.py')
-rw-r--r-- | tests/extmod/machine_pulse.py | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/extmod/machine_pulse.py b/tests/extmod/machine_pulse.py new file mode 100644 index 0000000000..b6e1264351 --- /dev/null +++ b/tests/extmod/machine_pulse.py @@ -0,0 +1,54 @@ +try: + import umachine as machine +except ImportError: + import machine +try: + machine.PinBase + machine.time_pulse_us +except AttributeError: + print("SKIP") + import sys + sys.exit() + + +class ConstPin(machine.PinBase): + + def __init__(self, value): + self.v = value + + def value(self, v=None): + if v is None: + return self.v + else: + self.v = v + + +class TogglePin(machine.PinBase): + + def __init__(self): + self.v = 0 + + def value(self, v=None): + if v is None: + self.v = 1 - self.v + print("value:", self.v) + return self.v + + +p = TogglePin() + +t = machine.time_pulse_us(p, 1) +print(type(t)) +t = machine.time_pulse_us(p, 0) +print(type(t)) + +p = ConstPin(0) +try: + machine.time_pulse_us(p, 1, 10) +except OSError: + print("OSError") + +try: + machine.time_pulse_us(p, 0, 10) +except OSError: + print("OSError") |