1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-20 12:03:52 +01:00

7 Commits

Author SHA1 Message Date
Gilles DOFFE
f05fc0c70f can: introduce loop_delay
During the data phase of a FDCAN transmission only one node is
transmitting, all others are receivers. The length of the bus line has
no impact.
When transmitting via pin FDCAN_TX the protocol controller receives the
transmitted data from its local CAN transceiver via pin FDCAN_RX. The
received data is delayed by the CAN transceiver loop delay.
If this delay is greater than TSEG1 (time segment before sample point),
a bit error is detected. Without transceiver delay compensation, the bit
rate in the data phase of a FDCAN frame is limited by the transceiver's
loop delay.

Since this parameter is related to the transceiver used, there cannot be
a default value, and it must be explicitly defined with the
configuration variable CONFIG_FDCAN_DEVICE_TRANSCEIVER_LOOP_DELAY.

Signed-off-by: Gilles DOFFE <gilles.doffe@rtone.fr>
2025-01-29 20:51:23 +01:00
Alexandre Abadie
ce373902ee
sys/can: migrate to ztimer 2022-01-10 12:21:40 +01:00
0b801c4de0 all: adapt to moved sched defines 2020-11-23 16:56:34 +01:00
kYc0o
00b9022bd1 sys/include/can/device.h: make CAN_DLL_NUMOF int 2017-10-25 16:18:51 +02:00
Alexandre Abadie
268c6b647e drivers/can: fix doxygen documentation + typo 2017-07-03 20:43:51 +02:00
Vincent Dupont
029a127eb3 can: add transceiver support in CAN stack 2017-06-19 15:36:20 +02:00
Vincent Dupont
5469ba1d49 can: add CAN stack
The CAN stack support only raw CAN at this time.
It contains a device interface (drivers/include/can/candev.h) and the data link
layer, build around can/device.c can/pkt.c and can/router.c. can/dll.c contains
the upper level and lower level interface to send and receive CAN frames.
Upper layer interface is located in include/can/raw.h
2017-06-19 15:35:26 +02:00