5. CODE-BEISPIEL CAN
Nachdem Sie nun Ihren Raspberry Pi Pico eingerichtet haben, können Sie die
folgenden zwei Code-Beispiele für die Kommunikation über die CAN-Schnitt-
stelle auf Ihren Raspberry Pi Pico hochladen.
Um diese Beispiele zu verwenden, ist die entsprechende Bibliothek erforder-
lich. Wir verwenden die Bibliothek
die unter
MIT-Lizenz
veröffentlicht ist.
Sie können auch die erforderlichen Bibliotheksdateien und angepasste
Codebeispiele
hier
herunterladen.
Codebeispiel für den Sender aus der Bibliothek:
from
canio
import
from
MCP2515
import
from
time
import
sleep_ms
NODE_ID
= 0x1234ABCD
can_bus
=
CAN(0, 17, baudrate
i
= 0
while
True:
with
can_bus.listen(timeout=1.0)
message
=
encode("utf-8"), extended=True)
send_success
print("Send
sleep_ms(1000)
i
=
i
+ 1
Codebeispiel für den Empfänger:
from
canio
import
Message, RemoteTransmissionRequest
from
MCP2515
import
from
time
import
sleep_ms
NODE_ID
= 0x1234ABCD
can_bus
=
CAN(0, 17, baudrate
i
= 0
while
True:
with
can_bus.listen(timeout=1.0)
message_count
if
message_count
continue
print(message_count,
for
_i
in
range(message_count):
msg
=
listener.receive()
print("Message from
msg.extended)
if
isinstance(msg, Message):
print("message
if
isinstance(msg, RemoteTransmissionRequest):
print("RTR
print("")
microPython_MCP2515
Message, RemoteTransmissionRequest
MCP2515
as
CAN
=
25000, debug=True)
Message(id=NODE_ID,
=
can_bus.send(message)
success:", send_success)
MCP2515
as
CAN
=
25000, debug=True)
as
=
listener.in_waiting()
==
0:
"messages
", hex(msg.id), "extended:",
data:", msg.data)
length:", msg.length)
von capella-ben,
as
listener:
data=str(i).
listener:
available")