-
Notifications
You must be signed in to change notification settings - Fork 675
Expand file tree
/
Copy pathreceive_all.py
More file actions
executable file
·34 lines (25 loc) · 856 Bytes
/
receive_all.py
File metadata and controls
executable file
·34 lines (25 loc) · 856 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/usr/bin/env python
"""
Shows how to receive messages via polling.
"""
import can
from can.bus import BusState
def receive_all():
"""Receives all messages and prints them to the console until Ctrl+C is pressed."""
# this uses the default configuration (for example from environment variables, or a
# config file) see https://python-can.readthedocs.io/en/stable/configuration.html
with can.Bus() as bus:
# set to read-only, only supported on some interfaces
try:
bus.state = BusState.ERROR_PASSIVE
except NotImplementedError:
pass
try:
while True:
msg = bus.recv(1)
if msg is not None:
print(msg)
except KeyboardInterrupt:
pass # exit normally
if __name__ == "__main__":
receive_all()