322 #ifndef ti_drivers_can__include 323 #define ti_drivers_can__include 346 #define CAN_STATUS_SUCCESS ((int_fast16_t)0) 354 #define CAN_STATUS_ERROR ((int_fast16_t)-1) 362 #define CAN_STATUS_NOT_SUPPORTED ((int_fast16_t)-2) 369 #define CAN_STATUS_TX_BUF_FULL ((int_fast16_t)-3) 377 #define CAN_STATUS_NO_RX_MSG_AVAIL ((int_fast16_t)-4) 394 #define CAN_EVENT_SPI_XFER_ERROR (0x200U) 402 #define CAN_EVENT_BIT_ERR_UNCORRECTED (0x100U) 412 #define CAN_EVENT_RX_RING_BUFFER_FULL (0x80U) 419 #define CAN_EVENT_RX_FIFO_MSG_LOST (0x40U) 424 #define CAN_EVENT_ERR_PASSIVE (0x20U) 429 #define CAN_EVENT_ERR_ACTIVE (0x10U) 434 #define CAN_EVENT_BUS_OFF (0x08U) 439 #define CAN_EVENT_BUS_ON (0x04U) 444 #define CAN_EVENT_TX_FINISHED (0x02U) 452 #define CAN_EVENT_RX_DATA_AVAIL (0x01U) 492 typedef void (*
CAN_EventCbk)(CAN_Handle handle, uint32_t event, uint32_t data,
void *userArg);
521 uint32_t rxFIFONum[2];
623 uint32_t rxFIFONum[2];
672 #define CAN_DLC_0B ((uint32_t)0U) 673 #define CAN_DLC_1B ((uint32_t)1U) 674 #define CAN_DLC_2B ((uint32_t)2U) 675 #define CAN_DLC_3B ((uint32_t)3U) 676 #define CAN_DLC_4B ((uint32_t)4U) 677 #define CAN_DLC_5B ((uint32_t)5U) 678 #define CAN_DLC_6B ((uint32_t)6U) 679 #define CAN_DLC_7B ((uint32_t)7U) 680 #define CAN_DLC_8B ((uint32_t)8U) 681 #define CAN_DLC_12B ((uint32_t)9U) 682 #define CAN_DLC_16B ((uint32_t)10U) 683 #define CAN_DLC_20B ((uint32_t)11U) 684 #define CAN_DLC_24B ((uint32_t)12U) 685 #define CAN_DLC_32B ((uint32_t)13U) 686 #define CAN_DLC_48B ((uint32_t)14U) 687 #define CAN_DLC_64B ((uint32_t)15U) 703 #define CAN_FEC_DISABLE_FILTER 0U 704 #define CAN_FEC_STORE_RXFIFO0 1U 705 #define CAN_FEC_STORE_RXFIFO1 2U 706 #define CAN_FEC_REJECT_ID 3U 707 #define CAN_FEC_SET_PRIO 4U 708 #define CAN_FEC_SET_PRIO_STORE_RXFIFO0 5U 709 #define CAN_FEC_SET_PRIO_STORE_RXFIFO1 6U 710 #define CAN_FEC_STORE_RXBUF 7U 719 #define CAN_FILTER_RANGE 0U 720 #define CAN_FILTER_DUAL_ID 1U 721 #define CAN_FILTER_WITH_MASK 2U 722 #define CAN_FILTER_DISABLE 3U 801 int_fast16_t
CAN_read(CAN_Handle handle, CAN_RxBufElement *elem);
815 int_fast16_t
CAN_write(CAN_Handle handle,
const CAN_TxBufElement *elem);
843 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:507
uint32_t nbrp
Definition: CAN.h:571
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:492
CAN Object.
Definition: CAN.h:613
bool isOpen
Definition: CAN.h:628
uint32_t irqMask
Definition: CAN.h:618
uint32_t rejectNonMatchingMsgs
Definition: CAN.h:644
uint32_t rxBufNum
Definition: CAN.h:622
void * userArg
Definition: CAN.h:617
uint32_t enableCANFD
Definition: CAN.h:640
Structure for MCAN Standard Message ID Filter Element.
Definition: MCAN.h:1209
CAN hardware attributes.
Definition: CAN.h:638
uint32_t eventMask
Definition: CAN.h:616
void CAN_init(void)
This function initializes the CAN module.
int_fast16_t CAN_enableLoopbackInt(CAN_Handle handle)
Enables internal loopback test mode.
struct CAN_Config_ * CAN_Handle
A handle that is returned from a CAN_open() call.
Definition: CAN.h:469
uint32_t nsjw
Definition: CAN.h:581
uint32_t dtSeg1
Definition: CAN.h:547
Structure for MCAN Extended Message ID Filter Element.
Definition: MCAN.h:1241
StructRingBuf_Object txStructRingBuf
Definition: CAN.h:626
uint32_t txFIFOQMode
Definition: CAN.h:530
uint32_t dbrp
Definition: CAN.h:542
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:550
size_t txRingBufSize
Definition: CAN.h:649
struct CAN_Config_ CAN_Config
CAN Global configuration.
uint32_t rxBufNum
Definition: CAN.h:523
CAN_Object * object
Definition: CAN.h:662
uint32_t extFilterNum
Definition: CAN.h:509
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:586
uint32_t tdcFilterWinLen
Definition: CAN.h:558
CAN Global configuration.
Definition: CAN.h:659
uint32_t ntSeg2
Definition: CAN.h:578
MCAN_TxBufElement CAN_TxBufElement
A CAN Tx buffer element struct for CAN_write() and CAN_writeBuffer().
Definition: CAN.h:464
CAN_EventCbk eventCbk
Definition: CAN.h:603
MCAN_RxBufElement CAN_RxBufElement
A CAN Rx buffer element struct for CAN_read().
Definition: CAN.h:459
Structure defining the raw MCAN CAN FD data phase bit rate configuration.
Definition: CAN.h:540
int_fast16_t CAN_enableLoopbackExt(CAN_Handle handle)
Enables external loopback test mode.
const CAN_BitRateTimingRaw * bitTiming
Definition: CAN.h:602
uint32_t dsjw
Definition: CAN.h:553
uint32_t dataBitRate
Definition: CAN.h:643
Definition: StructRingBuf.h:45
uint32_t txFIFOQNum
Definition: CAN.h:528
void * rxRingBufPtr
Definition: CAN.h:646
uint32_t txFIFOQNum
Definition: CAN.h:621
const uint_least8_t CAN_count
size_t rxRingBufSize
Definition: CAN.h:648
uint32_t enableBRS
Definition: CAN.h:641
uint32_t txBufNum
Definition: CAN.h:620
void CAN_Params_init(CAN_Params *params)
Initializes the CAN_Params struct to its default values.
MCAN_StdMsgIDFilterElement * stdMsgIDFilterList
Definition: CAN.h:511
void * txRingBufPtr
Definition: CAN.h:647
uint32_t txBufNum
Definition: CAN.h:526
int_fast16_t CAN_read(CAN_Handle handle, CAN_RxBufElement *elem)
Reads a received CAN message.
uint32_t nominalBitRate
Definition: CAN.h:642
Structure for MCAN Tx Buffer element.
Definition: MCAN.h:945
uint32_t ntSeg1
Definition: CAN.h:575
uint32_t eventMask
Definition: CAN.h:604
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:605
StructRingBuf_Object rxStructRingBuf
Definition: CAN.h:625
Structure defining the raw MCAN bit rate configuration.
Definition: CAN.h:569
void CAN_close(CAN_Handle handle)
Closes a CAN peripheral specified by handle.
Structure for MCAN Rx Buffer element.
Definition: MCAN.h:1049
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:556
CAN_EventCbk eventCbk
Definition: CAN.h:615
const CAN_MsgRAMConfig * msgRAMConfig
Definition: CAN.h:601
const CAN_Config CAN_config[]
const CAN_HWAttrs * hwAttrs
Definition: CAN.h:665
CAN Message RAM configuration.
Definition: CAN.h:505
MCAN_ExtMsgIDFilterElement * extMsgIDFilterList
Definition: CAN.h:513
CAN Parameters.
Definition: CAN.h:599