CAN CoreX 2.3.1
Table-driven CAN, CAN FD, ISO-TP, network simulation, and bus monitoring library
Loading...
Searching...
No Matches
can_corex_bus.h File Reference

Bus monitoring public API. More...

Go to the source code of this file.

Data Structures

struct  CCX_BusRecoveryDelay_t
struct  CCX_ErrorCounters_t
 CAN error counters from hardware controller. More...
struct  CCX_BusStats_t
 Bus monitoring statistics. More...
struct  CCX_BusMonitor_t
 Bus monitor configuration and state. More...

Macros

#define CCX_BUS_RECOVERY_MS(ms)
#define CCX_BUS_RECOVERY_US(us)
#define CAN_COREX_BUS_OFF_RECOVERY_10KBPS_MS   CCX_BUS_RECOVERY_MS(141U)
#define CAN_COREX_BUS_OFF_RECOVERY_20KBPS_MS   CCX_BUS_RECOVERY_MS(71U)
#define CAN_COREX_BUS_OFF_RECOVERY_50KBPS_MS   CCX_BUS_RECOVERY_MS(29U)
#define CAN_COREX_BUS_OFF_RECOVERY_83K3BPS_MS   CCX_BUS_RECOVERY_MS(17U)
#define CAN_COREX_BUS_OFF_RECOVERY_100KBPS_MS   CCX_BUS_RECOVERY_MS(15U)
#define CAN_COREX_BUS_OFF_RECOVERY_125KBPS_MS   CCX_BUS_RECOVERY_MS(12U)
#define CAN_COREX_BUS_OFF_RECOVERY_250KBPS_MS   CCX_BUS_RECOVERY_MS(6U)
#define CAN_COREX_BUS_OFF_RECOVERY_500KBPS_MS   CCX_BUS_RECOVERY_US(2816U)
#define CAN_COREX_BUS_OFF_RECOVERY_800KBPS_MS   CCX_BUS_RECOVERY_US(1760U)
#define CAN_COREX_BUS_OFF_RECOVERY_1000KBPS_MS   CCX_BUS_RECOVERY_US(1408U)
#define CAN_COREX_BUS_OFF_RECOVERY_FD_2M_MS   CCX_BUS_RECOVERY_US(704U)
#define CAN_COREX_BUS_OFF_RECOVERY_FD_5M_MS   CCX_BUS_RECOVERY_US(282U)
#define CAN_COREX_BUS_OFF_RECOVERY_FD_8M_MS   CCX_BUS_RECOVERY_US(176U)

Enumerations

enum  CCX_BusState_t { CCX_BUS_STATE_ACTIVE = 0 , CCX_BUS_STATE_WARNING , CCX_BUS_STATE_PASSIVE , CCX_BUS_STATE_OFF }
 CAN bus state according to ISO 11898-1. More...

Functions

CCX_Status_t CCX_BusMonitor_Init (CCX_instance_t *Instance, CCX_BusMonitor_t *Monitor, CCX_BusState_t(*GetBusState)(const CCX_instance_t *), void(*GetErrorCounters)(const CCX_instance_t *, CCX_ErrorCounters_t *), void(*RequestRecovery)(const CCX_instance_t *), CCX_BusRecoveryDelay_t recovery_delay, CCX_TIME_t successful_run_time, uint8_t auto_recovery_enabled, uint8_t max_recovery_attempts)
CCX_Status_t CCX_BusMonitor_TriggerRecovery (CCX_instance_t *Instance)
CCX_BusState_t CCX_BusMonitor_GetState (const CCX_instance_t *Instance)
void CCX_BusMonitor_ResetStats (CCX_instance_t *Instance)

Detailed Description

Bus monitoring public API.