diff options
| author | Henrik Sölver <henrik.solver@gmail.com> | 2015-01-15 23:16:57 +0100 |
|---|---|---|
| committer | Damien George <damien.p.george@gmail.com> | 2015-02-15 03:10:53 +0000 |
| commit | f80f1a70777dd84171af02200b77033a08fba28a (patch) | |
| tree | 75a507e2423e038f7b29cf72c5b01b957b00b330 /tests/pyb/can.py | |
| parent | ed8b4da0db693dc6cc18c73b5fc43faad4801134 (diff) | |
stmhal: Add support for CAN rx callbacks.
Diffstat (limited to 'tests/pyb/can.py')
| -rw-r--r-- | tests/pyb/can.py | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/tests/pyb/can.py b/tests/pyb/can.py index f1cad860b..132da2306 100644 --- a/tests/pyb/can.py +++ b/tests/pyb/can.py @@ -48,3 +48,75 @@ else: print('passed') else: print('failed, wrong data received') + +del can + +# Test RxCallbacks +can = CAN(1, CAN.LOOPBACK) +can.setfilter(0, CAN.LIST16, 0, (1, 2, 3, 4)) +can.setfilter(1, CAN.LIST16, 1, (5, 6, 7, 8)) +def cb0(bus, reason): + print('cb0') + if reason == 0: + print('pending') + if reason == 1: + print('full') + if reason == 2: + print('overflow') + +def cb1(bus, reason): + print('cb1') + if reason == 0: + print('pending') + if reason == 1: + print('full') + if reason == 2: + print('overflow') + +def cb0a(bus, reason): + print('cb0a') + if reason == 0: + print('pending') + if reason == 1: + print('full') + if reason == 2: + print('overflow') + +def cb1a(bus, reason): + print('cb1a') + if reason == 0: + print('pending') + if reason == 1: + print('full') + if reason == 2: + print('overflow') + + +can.rxcallback(0, cb0) +can.rxcallback(1, cb1) + +can.send('11111111',1) +can.send('22222222',2) +can.send('33333333',3) +can.rxcallback(0, cb0a) +can.send('44444444',4) + +can.send('55555555',5) +can.send('66666666',6) +can.send('77777777',7) +can.rxcallback(1, cb1a) +can.send('88888888',8) + +print(can.recv(0)) +print(can.recv(0)) +print(can.recv(0)) +print(can.recv(1)) +print(can.recv(1)) +print(can.recv(1)) + +can.send('11111111',1) +can.send('55555555',5) + +print(can.recv(0)) +print(can.recv(1)) + |
