HPM SDK
HPMicro Software Development Kit
can_config_t Struct Reference

CAN configuration. More...

#include <hpm_can_drv.h>

Data Fields

union {
   struct {
      uint32_t   baudrate
 
      uint32_t   baudrate_fd
 
      uint16_t   can20_samplepoint_min
 
      uint16_t   can20_samplepoint_max
 
      uint16_t   canfd_samplepoint_min
 
      uint16_t   canfd_samplepoint_max
 
   } 
 
   struct {
      can_bit_timing_param_t   can_timing
 
      can_bit_timing_param_t   canfd_timing
 
   } 
 
}; 
 
can_node_mode_t mode
 
bool use_lowlevel_timing_setting
 
bool enable_canfd
 
bool enable_self_ack
 
bool disable_ptb_retransmission
 
bool disable_stb_retransmission
 
bool enable_tdc
 
uint8_t filter_list_num
 
can_filter_config_tfilter_list
 
uint8_t irq_txrx_enable_mask
 
uint8_t irq_error_enable_mask
 
bool enable_tx_buffer_priority_mode
 
bool enable_can_fd_iso_mode
 

Detailed Description

CAN configuration.

Field Documentation

◆ 

union { ... }

◆ baudrate

uint32_t can_config_t::baudrate

CAN2.0 baudrate / CANFD nominal baudrate

◆ baudrate_fd

uint32_t can_config_t::baudrate_fd

CANFD data baudrate minimum sampling point, value range (0-1000), samplepoint_min/1000 will be used in driver

◆ can20_samplepoint_max

uint16_t can_config_t::can20_samplepoint_max

minimum sampling point, value range (0-1000), samplepoint_min/1000 will be used in driver

◆ can20_samplepoint_min

uint16_t can_config_t::can20_samplepoint_min

maximum sampling point, value range (0-1000), samplepoint_max/1000 will be used in driver

◆ can_timing

can_bit_timing_param_t can_config_t::can_timing

CAN2.0 /CANFD nominal low-level bit timing parameters

◆ canfd_samplepoint_max

uint16_t can_config_t::canfd_samplepoint_max

◆ canfd_samplepoint_min

uint16_t can_config_t::canfd_samplepoint_min

maximum sampling point, value range (0-1000), samplepoint_max/1000 will be used in driver

◆ canfd_timing

can_bit_timing_param_t can_config_t::canfd_timing

CANFD low-level bit timing parameters

◆ disable_ptb_retransmission

bool can_config_t::disable_ptb_retransmission

disable re-transmission for primary transmit buffer

◆ disable_stb_retransmission

bool can_config_t::disable_stb_retransmission

disable re-transmission for secondary transmit buffer

◆ enable_can_fd_iso_mode

bool can_config_t::enable_can_fd_iso_mode

Enable CAN-FD ISO mode

◆ enable_canfd

bool can_config_t::enable_canfd

Enable CAN FD

◆ enable_self_ack

bool can_config_t::enable_self_ack

CAN self-ack flag

◆ enable_tdc

bool can_config_t::enable_tdc

Enable transmitter delay compensation

◆ enable_tx_buffer_priority_mode

bool can_config_t::enable_tx_buffer_priority_mode

Enable Priority-based priority

◆ filter_list

can_filter_config_t* can_config_t::filter_list

CAN filter list pointer

◆ filter_list_num

uint8_t can_config_t::filter_list_num

element number of CAN filters in filter list

◆ irq_error_enable_mask

uint8_t can_config_t::irq_error_enable_mask

CAN Error IRQ Enable Mask

◆ irq_txrx_enable_mask

uint8_t can_config_t::irq_txrx_enable_mask

CAN TX and RX IRQ Enable Mask

◆ mode

can_node_mode_t can_config_t::mode

CAN work mode

◆ use_lowlevel_timing_setting

bool can_config_t::use_lowlevel_timing_setting

Use low-level timing setting


The documentation for this struct was generated from the following file: