rusEFI
The most advanced open source ECU
|
CAN reception handling. This file handles multiplexing incoming CAN frames as appropriate to the subsystems that consume them.
Definition in file can_rx.cpp.
Functions | |
static void | printPacket (const size_t busIndex, const CANRxFrame &rx) |
void | serviceCanSubscribers (const size_t busIndex, const CANRxFrame &frame, efitick_t nowNt) |
void | registerCanListener (CanListener &listener) |
void | registerCanSensor (CanSensorBase &sensor) |
uint32_t | getFourBytesLsb (const CANRxFrame &frame, int offset) |
uint16_t | getTwoBytesLsb (const CANRxFrame &frame, int offset) |
uint16_t | getTwoBytesMsb (const CANRxFrame &frame, int offset) |
static int16_t | getShiftedLSB_intel (const CANRxFrame &frame, int offset) |
static void | processCanRxImu_BoschM5_10_YawY (const CANRxFrame &frame) |
static void | processCanRxImu_BoschM5_10_RollX (const CANRxFrame &frame) |
static void | processCanRxImu_BoschM5_10_Z (const CANRxFrame &frame) |
static void | processCanRxImu (const CANRxFrame &frame) |
void | boardProcessCanRxMessage (const size_t, const CANRxFrame &, efitick_t) |
void | processCanRxMessage (const size_t busIndex, const CANRxFrame &frame, efitick_t nowNt) |
Variables | |
static CanListenerTailSentinel | tailSentinel |
CanListener * | canListeners_head = &tailSentinel |
bool | verboseRxCan |
std::optional< board_can_rx_type > | custom_board_can_rx |
void boardProcessCanRxMessage | ( | const size_t | , |
const CANRxFrame & | , | ||
efitick_t | |||
) |
Definition at line 196 of file can_rx.cpp.
uint32_t getFourBytesLsb | ( | const CANRxFrame & | frame, |
int | offset | ||
) |
Definition at line 119 of file can_rx.cpp.
Referenced by processCanRequestCalibration().
|
static |
Definition at line 134 of file can_rx.cpp.
Referenced by processCanRxImu_BoschM5_10_RollX(), processCanRxImu_BoschM5_10_YawY(), and processCanRxImu_BoschM5_10_Z().
uint16_t getTwoBytesLsb | ( | const CANRxFrame & | frame, |
int | offset | ||
) |
Definition at line 126 of file can_rx.cpp.
Referenced by getShiftedLSB_intel(), processBMW_e46(), processBMW_e90(), and processCanUserControl().
uint16_t getTwoBytesMsb | ( | const CANRxFrame & | frame, |
int | offset | ||
) |
Definition at line 130 of file can_rx.cpp.
Referenced by processNissan(), and processNissanSecondVss().
|
static |
this build-in CAN sniffer is very basic but that's our CAN sniffer
Definition at line 29 of file can_rx.cpp.
Referenced by processCanRxMessage().
|
static |
Definition at line 160 of file can_rx.cpp.
Referenced by processCanRxMessage().
|
static |
Definition at line 147 of file can_rx.cpp.
Referenced by processCanRxImu().
|
static |
Definition at line 138 of file can_rx.cpp.
Referenced by processCanRxImu().
|
static |
Definition at line 154 of file can_rx.cpp.
Referenced by processCanRxImu().
void processCanRxMessage | ( | const size_t | busIndex, |
const CANRxFrame & | frame, | ||
efitick_t | nowNt | ||
) |
Definition at line 203 of file can_rx.cpp.
void registerCanListener | ( | CanListener & | listener | ) |
Definition at line 84 of file can_rx.cpp.
Referenced by CanStreamer::init(), initCanGpioMsiobox(), and registerCanSensor().
void registerCanSensor | ( | CanSensorBase & | sensor | ) |
Definition at line 92 of file can_rx.cpp.
Referenced by initCanSensors(), initEgt(), and initLambda().
void serviceCanSubscribers | ( | const size_t | busIndex, |
const CANRxFrame & | frame, | ||
efitick_t | nowNt | ||
) |
Definition at line 71 of file can_rx.cpp.
Referenced by processCanRxMessage().
CanListener* canListeners_head = &tailSentinel |
Definition at line 69 of file can_rx.cpp.
Referenced by CanWrite::PeriodicTask(), registerCanListener(), and serviceCanSubscribers().
std::optional<board_can_rx_type> custom_board_can_rx |
Definition at line 201 of file can_rx.cpp.
Referenced by processCanRxMessage().
|
static |
Definition at line 68 of file can_rx.cpp.
|
extern |
Definition at line 364 of file settings.cpp.
Referenced by enableOrDisable(), and processCanRxMessage().