tests/extmod: Add test for machine.Signal class.
This commit is contained in:
parent
f1ea3bc72b
commit
ecc635d551
40
tests/extmod/machine_signal.py
Normal file
40
tests/extmod/machine_signal.py
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
# test machine.Signal class
|
||||||
|
|
||||||
|
try:
|
||||||
|
import umachine as machine
|
||||||
|
except ImportError:
|
||||||
|
import machine
|
||||||
|
try:
|
||||||
|
machine.PinBase
|
||||||
|
machine.Signal
|
||||||
|
except AttributeError:
|
||||||
|
print("SKIP")
|
||||||
|
import sys
|
||||||
|
sys.exit()
|
||||||
|
|
||||||
|
class Pin(machine.PinBase):
|
||||||
|
def __init__(self):
|
||||||
|
self.v = 0
|
||||||
|
|
||||||
|
def value(self, v=None):
|
||||||
|
if v is None:
|
||||||
|
return self.v
|
||||||
|
else:
|
||||||
|
self.v = int(v)
|
||||||
|
|
||||||
|
|
||||||
|
# test non-inverted
|
||||||
|
p = Pin()
|
||||||
|
s = machine.Signal(p)
|
||||||
|
s.value(0)
|
||||||
|
print(p.value(), s.value())
|
||||||
|
s.value(1)
|
||||||
|
print(p.value(), s.value())
|
||||||
|
|
||||||
|
# test inverted, and using on/off methods
|
||||||
|
p = Pin()
|
||||||
|
s = machine.Signal(p, inverted=True)
|
||||||
|
s.off()
|
||||||
|
print(p.value(), s.value())
|
||||||
|
s.on()
|
||||||
|
print(p.value(), s.value())
|
4
tests/extmod/machine_signal.py.exp
Normal file
4
tests/extmod/machine_signal.py.exp
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
0 0
|
||||||
|
1 1
|
||||||
|
1 0
|
||||||
|
0 1
|
Loading…
Reference in New Issue
Block a user