Skip to content

Commit 54acd0b

Browse files
committed
drivers/nrf24l01: Make nRF24L01 test script more portable.
1 parent 1394258 commit 54acd0b

1 file changed

Lines changed: 20 additions & 13 deletions

File tree

drivers/nrf24l01/nrf24l01test.py

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
"""Test for nrf24l01 module."""
22

33
import struct
4-
import pyb
5-
from pyb import Pin, SPI
4+
import utime
5+
from machine import Pin, SPI
66
from nrf24l01 import NRF24L01
77

88
pipes = (b'\xf0\xf0\xf0\xf0\xe1', b'\xf0\xf0\xf0\xf0\xd2')
@@ -24,7 +24,7 @@ def master():
2424
while num_successes < num_needed and num_failures < num_needed:
2525
# stop listening and send packet
2626
nrf.stop_listening()
27-
millis = pyb.millis()
27+
millis = utime.ticks_ms()
2828
led_state = max(1, (led_state << 1) & 0x0f)
2929
print('sending:', millis, led_state)
3030
try:
@@ -36,10 +36,10 @@ def master():
3636
nrf.start_listening()
3737

3838
# wait for response, with 250ms timeout
39-
start_time = pyb.millis()
39+
start_time = utime.ticks_ms()
4040
timeout = False
4141
while not nrf.any() and not timeout:
42-
if pyb.elapsed_millis(start_time) > 250:
42+
if utime.ticks_diff(utime.ticks_ms(), start_time) > 250:
4343
timeout = True
4444

4545
if timeout:
@@ -51,11 +51,11 @@ def master():
5151
got_millis, = struct.unpack('i', nrf.recv())
5252

5353
# print response and round-trip delay
54-
print('got response:', got_millis, '(delay', pyb.millis() - got_millis, 'ms)')
54+
print('got response:', got_millis, '(delay', utime.ticks_diff(utime.ticks_ms(), got_millis), 'ms)')
5555
num_successes += 1
5656

5757
# delay then loop
58-
pyb.delay(250)
58+
utime.sleep_ms(250)
5959

6060
print('master finished sending; successes=%d, failures=%d' % (num_successes, num_failures))
6161

@@ -69,18 +69,19 @@ def slave():
6969
print('NRF24L01 slave mode, waiting for packets... (ctrl-C to stop)')
7070

7171
while True:
72-
pyb.wfi()
72+
machine.idle()
7373
if nrf.any():
7474
while nrf.any():
7575
buf = nrf.recv()
7676
millis, led_state = struct.unpack('ii', buf)
7777
print('received:', millis, led_state)
78-
for i in range(4):
79-
if led_state & (1 << i):
80-
pyb.LED(i + 1).on()
78+
for led in leds:
79+
if led_state & 1:
80+
led.on()
8181
else:
82-
pyb.LED(i + 1).off()
83-
pyb.delay(15)
82+
led.off()
83+
led_state >>= 1
84+
utime.sleep_ms(15)
8485

8586
nrf.stop_listening()
8687
try:
@@ -90,6 +91,12 @@ def slave():
9091
print('sent response')
9192
nrf.start_listening()
9293

94+
try:
95+
import pyb
96+
leds = [pyb.LED(i + 1) for i in range(4)]
97+
except:
98+
leds = []
99+
93100
print('NRF24L01 test module loaded')
94101
print('NRF24L01 pinout for test:')
95102
print(' CE on Y4')

0 commit comments

Comments
 (0)