Astra MCU SDK Peripheral Driver Library
Loading...
Searching...
No Matches
Enumerated Types

Enumerated types for CAN driver. More...

Enumerations

enum  can_status_en {
  CAN_OK = 0 ,
  CAN_ERROR ,
  CAN_ERROR_PARAMETER ,
  CAN_ERROR_BUSY ,
  CAN_ERROR_TIMEOUT ,
  CAN_ERROR_UNSUPPORTED ,
  CAN_ERROR_NOT_INITIALIZED ,
  CAN_ERROR_NOT_RUNNING ,
  CAN_ERROR_NO_RESOURCE ,
  CAN_ERROR_TX_FAILED ,
  CAN_ERROR_RX_FAILED ,
  CAN_ERROR_DMA_FAILED ,
  CAN_ERROR_BUS_OFF ,
  CAN_ERROR_ECC
}
 CAN API status codes. More...
enum  can_transfer_status_en {
  CAN_TRANSFER_IN_PROGRESS ,
  CAN_TRANSFER_TIMEOUT ,
  CAN_TRANSFER_ERROR ,
  CAN_TRANSFER_DONE ,
  CAN_TRANSFER_ABORTED
}
 CAN transfer status. More...
enum  can_frame_format_en {
  CAN_FRAME_CLASSIC = 0U ,
  CAN_FRAME_FD = 1U
}
 CAN frame format. More...
enum  can_rx_frame_type_en {
  CAN_RX_FRAME_TYPE_CLASSIC = 1U ,
  CAN_RX_FRAME_TYPE_FD = 2U
}
 Encoded frame type values reported in received CAN headers. More...
enum  can_id_type_en {
  CAN_ID_STANDARD = 0U ,
  CAN_ID_EXTENDED = 1U
}
 CAN identifier type. More...
enum  can_rtr_type_en {
  CAN_FRAME_DATA = 0U ,
  CAN_FRAME_REMOTE = 1U
}
 CAN remote frame type. More...
enum  can_operating_mode_en {
  CAN_MODE_NORMAL = 0U ,
  CAN_MODE_LOOPBACK = 1U
}
 CAN operating mode. More...
enum  can_bus_state_en {
  CAN_BUS_ERROR_ACTIVE = 0U ,
  CAN_BUS_ERROR_PASSIVE = 1U ,
  CAN_BUS_BUS_OFF = 2U
}
 CAN bus state. More...
enum  can_interrupt_en {
  CAN_INTERRUPT_OVERLOAD_DETECTED = (1UL << 0) ,
  CAN_INTERRUPT_CLOSING_GOOD_RX_FRAME = (1UL << 1) ,
  CAN_INTERRUPT_TX_RETRANSMIT_REQUEST = (1UL << 2) ,
  CAN_INTERRUPT_INCREMENT_REC_8 = (1UL << 3) ,
  CAN_INTERRUPT_INCREMENT_REC_1 = (1UL << 4) ,
  CAN_INTERRUPT_INCREMENT_TEC_8 = (1UL << 5) ,
  CAN_INTERRUPT_ERROR_FRAME_DETECTED = (1UL << 6) ,
  CAN_INTERRUPT_ABORTS_HAPPENED = (1UL << 7) ,
  CAN_INTERRUPT_TX_FIFO_EMPTY = (1UL << 8) ,
  CAN_INTERRUPT_RX_PTR_BUFS_FIFO_ALMOST_EMPTY = (1UL << 9) ,
  CAN_INTERRUPT_RX_PTR_BUFS_FIFO_EMPTY = (1UL << 10) ,
  CAN_INTERRUPT_USED_BUFFERS_NOT_EMPTY = (1UL << 11) ,
  CAN_INTERRUPT_CLTX_NOACK = (1UL << 12) ,
  CAN_INTERRUPT_FDTX_NOACK = (1UL << 13) ,
  CAN_INTERRUPT_CLTX_GOOD = (1UL << 14) ,
  CAN_INTERRUPT_FDTX_GOOD = (1UL << 15) ,
  CAN_INTERRUPT_BUS_STATE1 = (1UL << 16) ,
  CAN_INTERRUPT_BUS_STATE2 = (1UL << 17) ,
  CAN_INTERRUPT_WATCHDOG = (1UL << 18) ,
  CAN_INTERRUPT_GAP = (1UL << 19) ,
  CAN_INTERRUPT_PANIC_NO_BUFFERS = (1UL << 20) ,
  CAN_INTERRUPT_PANIC_TX_BYTE_UNAVAILABLE = (1UL << 21) ,
  CAN_INTERRUPT_PANIC_TX_START_FAILED = (1UL << 22) ,
  CAN_INTERRUPT_PANIC_TX_WRONG_FRAME = (1UL << 23) ,
  CAN_INTERRUPT_CANNOT_FIX = (1UL << 24) ,
  CAN_INTERRUPT_FIXED = (1UL << 25) ,
  CAN_INTERRUPT_PANICS = (1UL << 26) ,
  CAN_INTERRUPT_ILLEGAL_PARITY = (1UL << 27) ,
  CAN_INTERRUPT_ILLEGAL_SM_STATES = (1UL << 28) ,
  CAN_INTERRUPT_NEW_SAMPLE_TIMESTAMP = (1UL << 31)
}
 Hardware interrupt mask bits for CAN interrupt control APIs.

Detailed Description

Enumerated types for CAN driver.

Enumeration Type Documentation

◆ can_status_en

CAN API status codes.

CAN_ERROR_NOT_INITIALIZED is returned when an API requires the selected instance to be initialized or configured before use.

Enumerator
CAN_OK 

Operation succeeded

CAN_ERROR 

Internal or unspecified driver error

CAN_ERROR_PARAMETER 

Invalid parameter

CAN_ERROR_BUSY 

Driver is busy

CAN_ERROR_TIMEOUT 

Timeout occurred

CAN_ERROR_UNSUPPORTED 

Operation not supported

CAN_ERROR_NOT_INITIALIZED 

Instance is not initialized or configured

CAN_ERROR_NOT_RUNNING 

CAN controller not running

CAN_ERROR_NO_RESOURCE 

No TX buffer / RX filter available

CAN_ERROR_TX_FAILED 

Transmission failed

CAN_ERROR_RX_FAILED 

Reception failed

CAN_ERROR_DMA_FAILED 

DMA transfer failed (if applicable)

CAN_ERROR_BUS_OFF 

CAN bus-off state

CAN_ERROR_ECC 

ECC / parity error

◆ can_transfer_status_en

CAN transfer status.

This enumeration defines various CAN transfer states.

Enumerator
CAN_TRANSFER_IN_PROGRESS 

Transfer in progress

CAN_TRANSFER_TIMEOUT 

Transfer timeout

CAN_TRANSFER_ERROR 

Transfer error

CAN_TRANSFER_DONE 

Transfer completed successfully

CAN_TRANSFER_ABORTED 

Transfer aborted

◆ can_frame_format_en

CAN frame format.

This enumeration defines supported CAN frame formats.

Enumerator
CAN_FRAME_CLASSIC 

Classical CAN frame

CAN_FRAME_FD 

CAN FD frame

◆ can_rx_frame_type_en

Encoded frame type values reported in received CAN headers.

These values reflect the raw hardware encoding placed in RX descriptors.

Enumerator
CAN_RX_FRAME_TYPE_CLASSIC 

Classical CAN RX descriptor

CAN_RX_FRAME_TYPE_FD 

CAN FD RX descriptor

◆ can_id_type_en

CAN identifier type.

This enumeration selects standard or extended CAN identifiers.

Enumerator
CAN_ID_STANDARD 

11-bit standard identifier

CAN_ID_EXTENDED 

29-bit extended identifier

◆ can_rtr_type_en

CAN remote frame type.

This enumeration defines whether a frame is a data or remote frame.

Enumerator
CAN_FRAME_DATA 

Data frame

CAN_FRAME_REMOTE 

Remote (RTR) frame

◆ can_operating_mode_en

CAN operating mode.

This enumeration defines the CAN controller operating mode.

Enumerator
CAN_MODE_NORMAL 

Normal operation

CAN_MODE_LOOPBACK 

Internal loopback mode

◆ can_bus_state_en

CAN bus state.

This enumeration defines the CAN bus error state.

Enumerator
CAN_BUS_ERROR_ACTIVE 

Error-active state

CAN_BUS_ERROR_PASSIVE 

Error-passive but still operational

CAN_BUS_BUS_OFF 

Bus-off; controller is no longer operational