322 #ifndef ti_drivers_can__include 323 #define ti_drivers_can__include 329 #include <ti/devices/DeviceFamily.h> 347 #define CAN_STATUS_SUCCESS ((int_fast16_t)0) 355 #define CAN_STATUS_ERROR ((int_fast16_t)-1) 363 #define CAN_STATUS_NOT_SUPPORTED ((int_fast16_t)-2) 370 #define CAN_STATUS_TX_BUF_FULL ((int_fast16_t)-3) 378 #define CAN_STATUS_NO_RX_MSG_AVAIL ((int_fast16_t)-4) 395 #define CAN_EVENT_SPI_XFER_ERROR (0x200U) 403 #define CAN_EVENT_BIT_ERR_UNCORRECTED (0x100U) 413 #define CAN_EVENT_RX_RING_BUFFER_FULL (0x80U) 420 #define CAN_EVENT_RX_FIFO_MSG_LOST (0x40U) 425 #define CAN_EVENT_ERR_PASSIVE (0x20U) 430 #define CAN_EVENT_ERR_ACTIVE (0x10U) 435 #define CAN_EVENT_BUS_OFF (0x08U) 440 #define CAN_EVENT_BUS_ON (0x04U) 445 #define CAN_EVENT_TX_FINISHED (0x02U) 453 #define CAN_EVENT_RX_DATA_AVAIL (0x01U) 493 typedef void (*
CAN_EventCbk)(CAN_Handle handle, uint32_t event, uint32_t data,
void *userArg);
522 uint32_t rxFIFONum[2];
624 uint32_t rxFIFONum[2];
651 #if (DeviceFamily_PARENT == DeviceFamily_PARENT_CC27XX) 680 #define CAN_DLC_0B ((uint32_t)0U) 681 #define CAN_DLC_1B ((uint32_t)1U) 682 #define CAN_DLC_2B ((uint32_t)2U) 683 #define CAN_DLC_3B ((uint32_t)3U) 684 #define CAN_DLC_4B ((uint32_t)4U) 685 #define CAN_DLC_5B ((uint32_t)5U) 686 #define CAN_DLC_6B ((uint32_t)6U) 687 #define CAN_DLC_7B ((uint32_t)7U) 688 #define CAN_DLC_8B ((uint32_t)8U) 689 #define CAN_DLC_12B ((uint32_t)9U) 690 #define CAN_DLC_16B ((uint32_t)10U) 691 #define CAN_DLC_20B ((uint32_t)11U) 692 #define CAN_DLC_24B ((uint32_t)12U) 693 #define CAN_DLC_32B ((uint32_t)13U) 694 #define CAN_DLC_48B ((uint32_t)14U) 695 #define CAN_DLC_64B ((uint32_t)15U) 711 #define CAN_FEC_DISABLE_FILTER 0U 712 #define CAN_FEC_STORE_RXFIFO0 1U 713 #define CAN_FEC_STORE_RXFIFO1 2U 714 #define CAN_FEC_REJECT_ID 3U 715 #define CAN_FEC_SET_PRIO 4U 716 #define CAN_FEC_SET_PRIO_STORE_RXFIFO0 5U 717 #define CAN_FEC_SET_PRIO_STORE_RXFIFO1 6U 718 #define CAN_FEC_STORE_RXBUF 7U 727 #define CAN_FILTER_RANGE 0U 728 #define CAN_FILTER_DUAL_ID 1U 729 #define CAN_FILTER_WITH_MASK 2U 730 #define CAN_FILTER_DISABLE 3U 809 int_fast16_t
CAN_read(CAN_Handle handle, CAN_RxBufElement *elem);
823 int_fast16_t
CAN_write(CAN_Handle handle,
const CAN_TxBufElement *elem);
851 int_fast16_t
CAN_writeBuffer(CAN_Handle handle, uint32_t bufIdx,
const CAN_TxBufElement *elem);
ADC_Params params
Definition: Driver_Init.h:11
uint32_t stdFilterNum
Definition: CAN.h:508
uint32_t nbrp
Definition: CAN.h:572
void(* CAN_EventCbk)(CAN_Handle handle, uint32_t event, uint32_t data, void *userArg)
The definition of a callback function used by the CAN driver.
Definition: CAN.h:493
CAN Object.
Definition: CAN.h:614
bool isOpen
Definition: CAN.h:629
uint32_t rxBufNum
Definition: CAN.h:623
void * userArg
Definition: CAN.h:618
Structure for MCAN Standard Message ID Filter Element.
Definition: MCAN.h:1152
CAN hardware attributes.
Definition: CAN.h:639
uint_least8_t rxPin
Definition: CAN.h:655
uint32_t eventMask
Definition: CAN.h:617
void CAN_init(void)
This function initializes the CAN module.
int_fast16_t CAN_enableLoopbackInt(CAN_Handle handle)
Enables internal loopback test mode.
uint32_t intPriority
Definition: CAN.h:652
struct CAN_Config_ * CAN_Handle
A handle that is returned from a CAN_open() call.
Definition: CAN.h:470
uint32_t nsjw
Definition: CAN.h:582
uint32_t txPinMux
Definition: CAN.h:654
uint32_t dtSeg1
Definition: CAN.h:548
Structure for MCAN Extended Message ID Filter Element.
Definition: MCAN.h:1184
bool enableCANFD
Definition: CAN.h:641
StructRingBuf_Object txStructRingBuf
Definition: CAN.h:627
uint32_t txFIFOQMode
Definition: CAN.h:531
uint32_t dbrp
Definition: CAN.h:543
int_fast16_t CAN_write(CAN_Handle handle, const CAN_TxBufElement *elem)
Sends CAN message using the Tx FIFO/Queue.
uint32_t dtSeg2
Definition: CAN.h:551
size_t txRingBufSize
Definition: CAN.h:650
struct CAN_Config_ CAN_Config
CAN Global configuration.
uint32_t rxBufNum
Definition: CAN.h:524
CAN_Object * object
Definition: CAN.h:670
uint32_t extFilterNum
Definition: CAN.h:510
CAN_Handle CAN_open(uint_least8_t index, CAN_Params *params)
Initializes a CAN driver instance and returns a handle.
const CAN_DataBitRateTimingRaw * dataTiming
Definition: CAN.h:587
uint32_t tdcFilterWinLen
Definition: CAN.h:559
CAN Global configuration.
Definition: CAN.h:667
uint32_t ntSeg2
Definition: CAN.h:579
MCAN_TxBufElement CAN_TxBufElement
A CAN Tx buffer element struct for CAN_write() and CAN_writeBuffer().
Definition: CAN.h:465
CAN_EventCbk eventCbk
Definition: CAN.h:604
MCAN_RxBufElement CAN_RxBufElement
A CAN Rx buffer element struct for CAN_read().
Definition: CAN.h:460
Structure defining the raw MCAN CAN FD data phase bit rate configuration.
Definition: CAN.h:541
int_fast16_t CAN_enableLoopbackExt(CAN_Handle handle)
Enables external loopback test mode.
const CAN_BitRateTimingRaw * bitTiming
Definition: CAN.h:603
uint32_t dsjw
Definition: CAN.h:554
uint32_t dataBitRate
Definition: CAN.h:645
uint32_t intMask
Definition: CAN.h:619
uint_least8_t txPin
Definition: CAN.h:656
Definition: StructRingBuf.h:45
uint32_t txFIFOQNum
Definition: CAN.h:529
void * rxRingBufPtr
Definition: CAN.h:647
uint32_t txFIFOQNum
Definition: CAN.h:622
const uint_least8_t CAN_count
size_t rxRingBufSize
Definition: CAN.h:649
bool enableBRS
Definition: CAN.h:642
uint32_t txBufNum
Definition: CAN.h:621
uint32_t rxPinMux
Definition: CAN.h:653
void CAN_Params_init(CAN_Params *params)
Initializes the CAN_Params struct to its default values.
MCAN_StdMsgIDFilterElement * stdMsgIDFilterList
Definition: CAN.h:512
bool rejectNonMatchingMsgs
Definition: CAN.h:643
void * txRingBufPtr
Definition: CAN.h:648
uint32_t txBufNum
Definition: CAN.h:527
int_fast16_t CAN_read(CAN_Handle handle, CAN_RxBufElement *elem)
Reads a received CAN message.
uint32_t nominalBitRate
Definition: CAN.h:644
Structure for MCAN Tx Buffer element.
Definition: MCAN.h:888
uint32_t ntSeg1
Definition: CAN.h:576
uint32_t eventMask
Definition: CAN.h:605
int_fast16_t CAN_writeBuffer(CAN_Handle handle, uint32_t bufIdx, const CAN_TxBufElement *elem)
Sends CAN message using a dedicated Tx Buffer.
void * userArg
Definition: CAN.h:606
StructRingBuf_Object rxStructRingBuf
Definition: CAN.h:626
Structure defining the raw MCAN bit rate configuration.
Definition: CAN.h:570
void CAN_close(CAN_Handle handle)
Closes a CAN peripheral specified by handle.
Structure for MCAN Rx Buffer element.
Definition: MCAN.h:992
Hardware abstraction layer for M_CAN Controller v3.2.1.
int_fast16_t CAN_disableLoopback(CAN_Handle handle)
Disables loopback test mode.
uint32_t tdcOffset
Definition: CAN.h:557
CAN_EventCbk eventCbk
Definition: CAN.h:616
const CAN_MsgRAMConfig * msgRAMConfig
Definition: CAN.h:602
const CAN_Config CAN_config[]
const CAN_HWAttrs * hwAttrs
Definition: CAN.h:673
CAN Message RAM configuration.
Definition: CAN.h:506
MCAN_ExtMsgIDFilterElement * extMsgIDFilterList
Definition: CAN.h:514
CAN Parameters.
Definition: CAN.h:600