Infineon MOTIX™ MCU TLE987x Device Family SDK
Data Structures | Macros | Typedefs | Enumerations | Functions
bdrv.h File Reference

Go to the source code of this file.

Detailed Description

Bridge Driver low level access library.

Version
V0.6.2
Date
02. Jan 2025

Include Graph

Include dependency graph for bdrv.h:

Data Structures

struct  TBDRV_Off_Diag
 This struct lists the Bridge Driver Off Diagnosis Status Phases configuration. More...
 

Macros

#define TBDRV_Curr_RANGE_POS   5u
 
#define TBDRV_Curr_CURRENT_MASK   0x3Fu
 
#define LS1_DS   SCUPM_BDRV_ISCLR_LS1_DS_ICLR_Msk
 this enum lists the bit masks for the BridgeDriver status flags More...
 
#define LS2_DS   SCUPM_BDRV_ISCLR_LS2_DS_ICLR_Msk
 Phase2 Low Side MOSFET mask for Off-Diagnosis. More...
 
#define HS1_DS   SCUPM_BDRV_ISCLR_HS1_DS_ICLR_Msk
 Phase1 High Side MOSFET mask for Off-Diagnosis. More...
 
#define HS2_DS   SCUPM_BDRV_ISCLR_HS2_DS_ICLR_Msk
 Phase2 High Side MOSFET mask for Off-Diagnosis. More...
 
#define LS1_OC   SCUPM_BDRV_ISCLR_LS1_OC_ICLR_Msk
 Phase1 Low Side MOSFET mask for On-Diagnosis. More...
 
#define LS2_OC   SCUPM_BDRV_ISCLR_LS2_OC_ICLR_Msk
 Phase2 Low Side MOSFET mask for On-Diagnosis. More...
 
#define HS1_OC   SCUPM_BDRV_ISCLR_HS1_OC_ICLR_Msk
 Phase1 High Side MOSFET mask for On-Diagnosis. More...
 
#define HS2_OC   SCUPM_BDRV_ISCLR_HS2_OC_ICLR_Msk
 Phase2 High Side MOSFET mask for On-Diagnosis. More...
 
#define LS3_DS   SCUPM_BDRV_ISCLR_LS3_DS_ICLR_Msk
 Phase3 Low Side MOSFET mask for Off-Diagnosis. More...
 
#define HS3_DS   SCUPM_BDRV_ISCLR_HS3_DS_ICLR_Msk
 Phase3 High Side MOSFET mask for Off-Diagnosis. More...
 
#define LS3_OC   SCUPM_BDRV_ISCLR_LS3_OC_ICLR_Msk
 Phase3 Low Side MOSFET mask for On-Diagnosis. More...
 
#define HS3_OC   SCUPM_BDRV_ISCLR_HS3_OC_ICLR_Msk
 Phase3 High Side MOSFET mask for On-Diagnosis. More...
 
#define BDRV_ISCLR_OC   (LS1_OC | HS1_OC | LS2_OC | HS2_OC | LS3_OC | HS3_OC)
 
#define BDRV_ISCLR_DS   (LS1_DS | HS1_DS | LS2_DS | HS2_DS | LS3_DS | HS3_DS)
 
#define BDRV_IRQ_BITS   (BDRV_ISCLR_OC | BDRV_ISCLR_DS)
 
#define BDRV_DS_STS_BITS   BDRV_ISCLR_DS
 

Typedefs

typedef enum Bdrv_Ch_Cfg TBdrv_Ch_Cfg
 
typedef enum Bdrv_Ch TBdrv_Ch
 
typedef enum BDRV_Off_Diag_Sts TBDRV_Off_Diag_Sts
 
typedef enum Bdrv_Ch_Int TBdrv_Ch_Int
 
typedef enum Bdrv_DSM_Threshold TBdrv_DSM_Threshold
 
typedef enum BDRV_Curr TBDRV_Curr
 

Enumerations

enum  Bdrv_Ch_Cfg {
  Ch_Off = 0u , Ch_En = 1u , Ch_PWM = 3u , Ch_On = 5u ,
  Ch_DCS = 9u
}
 
enum  Bdrv_Ch {
  LS1 = 0u , LS2 = 1u , HS1 = 2u , HS2 = 3u ,
  LS3 = 4u , HS3 = 5u
}
 
enum  BDRV_Off_Diag_Sts { Ch_Ok = 0u , Ch_Short_to_Gnd = 1u , Ch_Short_to_VBat = 2u }
 
enum  Bdrv_Ch_Int { Int_Off = 0U , Int_DS = 1U , Int_OC = 2U , Int_DS_OC = 3U }
 
enum  Bdrv_DSM_Threshold {
  Threshold_0_25_V = 0U , Threshold_0_50_V = 1U , Threshold_0_75_V = 2U , Threshold_1_00_V = 3U ,
  Threshold_1_25_V = 4U , Threshold_1_50_V = 5U , Threshold_1_75_V = 6U , Threshold_2_00_V = 7U
}
 
enum  BDRV_Curr {
  BDRV_Curr_HR_Disabled = 0U , BDRV_Curr_HR_Min = 1U , BDRV_Curr_HR_10mA = 2U , BDRV_Curr_HR_15mA = 3U ,
  BDRV_Curr_HR_20mA = 4U , BDRV_Curr_HR_25mA = 5U , BDRV_Curr_HR_30mA = 6U , BDRV_Curr_HR_35mA = 7U ,
  BDRV_Curr_HR_40mA = 8U , BDRV_Curr_HR_45mA = 9U , BDRV_Curr_HR_50mA = 10U , BDRV_Curr_HR_55mA = 11U ,
  BDRV_Curr_HR_60mA = 12U , BDRV_Curr_HR_65mA = 13U , BDRV_Curr_HR_70mA = 14U , BDRV_Curr_HR_75mA = 15U ,
  BDRV_Curr_HR_80mA = 16U , BDRV_Curr_HR_85mA = 17U , BDRV_Curr_HR_90mA = 18U , BDRV_Curr_HR_95mA = 19U ,
  BDRV_Curr_HR_100mA = 20U , BDRV_Curr_HR_105mA = 21U , BDRV_Curr_HR_110mA = 22U , BDRV_Curr_HR_115mA = 23U ,
  BDRV_Curr_HR_120mA = 24U , BDRV_Curr_HR_125mA = 25U , BDRV_Curr_HR_130mA = 26U , BDRV_Curr_HR_135mA = 27U ,
  BDRV_Curr_HR_140mA = 28U , BDRV_Curr_HR_145mA = 29U , BDRV_Curr_HR_150mA = 30U , BDRV_Curr_HR_155mA = 31U ,
  BDRV_Curr_FR_Disabled = 32U , BDRV_Curr_FR_Min = 33U , BDRV_Curr_FR_20mA = 43U , BDRV_Curr_FR_30mA = 35U ,
  BDRV_Curr_FR_40mA = 36U , BDRV_Curr_FR_50mA = 37U , BDRV_Curr_FR_60mA = 38U , BDRV_Curr_FR_70mA = 39U ,
  BDRV_Curr_FR_80mA = 40U , BDRV_Curr_FR_90mA = 41U , BDRV_Curr_FR_100mA = 42U , BDRV_Curr_FR_110mA = 43U ,
  BDRV_Curr_FR_120mA = 44U , BDRV_Curr_FR_130mA = 45U , BDRV_Curr_FR_140mA = 46U , BDRV_Curr_FR_150mA = 47U ,
  BDRV_Curr_FR_160mA = 48U , BDRV_Curr_FR_170mA = 49U , BDRV_Curr_FR_180mA = 50U , BDRV_Curr_FR_190mA = 51U ,
  BDRV_Curr_FR_200mA = 52U , BDRV_Curr_FR_210mA = 53U , BDRV_Curr_FR_220mA = 54U , BDRV_Curr_FR_230mA = 55U ,
  BDRV_Curr_FR_240mA = 56U , BDRV_Curr_FR_250mA = 57U , BDRV_Curr_FR_260mA = 58U , BDRV_Curr_FR_270mA = 59U ,
  BDRV_Curr_FR_280mA = 60U , BDRV_Curr_FR_290mA = 61U , BDRV_Curr_FR_300mA = 62U , BDRV_Curr_FR_310mA = 63U
}
 

Functions

INLINE void BDRV_ChargePump_En (void)
 enables the Charge Pump. More...
 
INLINE void BDRV_ChargePump_Dis (void)
 disables the Charge Pump. More...
 
INLINE void BDRV_HS1_OC_Int_Clr (void)
 clears External High Side 1 FET Over-current interrupt flag. More...
 
INLINE void BDRV_LS1_OC_Int_Clr (void)
 clears External Low Side 1 FET Over-current interrupt flag. More...
 
INLINE void BDRV_HS2_OC_Int_Clr (void)
 clears External High Side 2 FET Over-current interrupt flag. More...
 
INLINE void BDRV_LS2_OC_Int_Clr (void)
 clears External Low Side 2 FET Over-current interrupt flag. More...
 
INLINE void BDRV_HS3_OC_Int_Clr (void)
 clears External High Side 3 FET Over-current interrupt flag. More...
 
INLINE void BDRV_LS3_OC_Int_Clr (void)
 clears External Low Side 3 FET Over-current interrupt flag. More...
 
INLINE void BDRV_HS1_DS_Int_Clr (void)
 enables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_LS1_DS_Int_Clr (void)
 clears Low Side Driver 1 Drain Source Monitoring interrupt flag in OFF-State. More...
 
INLINE void BDRV_HS2_DS_Int_Clr (void)
 clears High Side Driver 2 Drain Source Monitoring interrupt flag in OFF-State. More...
 
INLINE void BDRV_LS2_DS_Int_Clr (void)
 clears Low Side Driver 2 Drain Source Monitoring interrupt flag in OFF-State. More...
 
INLINE void BDRV_HS3_DS_Int_Clr (void)
 clears High Side Driver 3 Drain Source Monitoring interrupt flag in OFF-State. More...
 
INLINE void BDRV_LS3_DS_Int_Clr (void)
 clears Low Side Driver 3 Drain Source Monitoring interrupt flag in OFF-State. More...
 
INLINE void BDRV_VCP_LO_Int_Clr (void)
 clears Charge Pump Low interrupt flag. More...
 
INLINE void BDRV_HS1_OC_Int_En (void)
 enables External High Side 1 FET Over-current interrupt. More...
 
INLINE void BDRV_HS1_OC_Int_Dis (void)
 disables External High Side 1 FET Over-current interrupt. More...
 
INLINE void BDRV_LS1_OC_Int_En (void)
 enables External Low Side 1 FET Over-current interrupt. More...
 
INLINE void BDRV_LS1_OC_Int_Dis (void)
 disables External Low Side 1 FET Over-current interrupt. More...
 
INLINE void BDRV_HS2_OC_Int_En (void)
 enables External High Side 2 FET Over-current interrupt. More...
 
INLINE void BDRV_HS2_OC_Int_Dis (void)
 disables External High Side 2 FET Over-current interrupt. More...
 
INLINE void BDRV_LS2_OC_Int_En (void)
 enables External Low Side 2 FET Over-current interrupt. More...
 
INLINE void BDRV_LS2_OC_Int_Dis (void)
 disables External Low Side 2 FET Over-current interrupt. More...
 
INLINE void BDRV_HS3_OC_Int_En (void)
 enables External High Side 3 FET Over-current interrupt. More...
 
INLINE void BDRV_HS3_OC_Int_Dis (void)
 disables External High Side 3 FET Over-current interrupt. More...
 
INLINE void BDRV_LS3_OC_Int_En (void)
 enables External Low Side 3 FET Over-current interrupt. More...
 
INLINE void BDRV_LS3_OC_Int_Dis (void)
 disables External Low Side 3 FET Over-current interrupt. More...
 
INLINE void BDRV_HS1_DS_Int_En (void)
 enables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_HS1_DS_Int_Dis (void)
 disables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_LS1_DS_Int_En (void)
 enables Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_LS1_DS_Int_Dis (void)
 disables Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_HS2_DS_Int_En (void)
 enables High Side Driver 2 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_HS2_DS_Int_Dis (void)
 disables High Side Driver 2 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_LS2_DS_Int_En (void)
 enables Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_LS2_DS_Int_Dis (void)
 disables Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_HS3_DS_Int_En (void)
 enables High Side Driver 3 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_HS3_DS_Int_Dis (void)
 disables High Side Driver 3 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_LS3_DS_Int_En (void)
 enables Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_LS3_DS_Int_Dis (void)
 disables Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State. More...
 
INLINE void BDRV_VCP_LO_Int_En (void)
 enables Charge Pump Low interrupt. More...
 
INLINE void BDRV_VCP_LO_Int_Dis (void)
 disables Charge Pump Low interrupt. More...
 
INLINE uint8 BDRV_HS1_OC_Int_Sts (void)
 Reads the Bridge Driver High-Side 1 Over-Current Status Flag. More...
 
INLINE uint8 BDRV_LS1_OC_Int_Sts (void)
 Reads the Bridge Driver Low-Side 1 Over-Current Status Flag. More...
 
INLINE uint8 BDRV_HS2_OC_Int_Sts (void)
 Reads the Bridge Driver High-Side 2 Over-Current Status Flag. More...
 
INLINE uint8 BDRV_LS2_OC_Int_Sts (void)
 Reads the Bridge Driver Low-Side 2 Over-Current Status Flag. More...
 
INLINE uint8 BDRV_HS3_OC_Int_Sts (void)
 Reads the Bridge Driver High-Side 3 Over-Current Status Flag. More...
 
INLINE uint8 BDRV_LS3_OC_Int_Sts (void)
 Reads the Bridge Driver Low-Side 3 Over-Current Status Flag. More...
 
INLINE uint8 BDRV_HS1_DS_Int_Sts (void)
 Reads the Bridge Driver High-Side 1 Pre-Driver Short Status Flag. More...
 
INLINE uint8 BDRV_LS1_DS_Int_Sts (void)
 Reads the Bridge Driver Low-Side 1 Pre-Driver Short Status Flag. More...
 
INLINE uint8 BDRV_HS2_DS_Int_Sts (void)
 Reads the Bridge Driver High-Side 2 Pre-Driver Short Status Flag. More...
 
INLINE uint8 BDRV_LS2_DS_Int_Sts (void)
 Reads the Bridge Driver Low-Side 2 Pre-Driver Short Status Flag. More...
 
INLINE uint8 BDRV_HS3_DS_Int_Sts (void)
 Reads the Bridge Driver High-Side 3 Pre-Driver Short Status Flag. More...
 
INLINE uint8 BDRV_LS3_DS_Int_Sts (void)
 Reads the Bridge Driver Low-Side 3 Pre-Driver Short Status Flag. More...
 
INLINE uint8 BDRV_VCP_LO_Int_Sts (void)
 Reads the Bridge Driver VCP Lower Threshold 2 Measurement Status Flag. More...
 
INLINE uint8 BDRV_getChrgCurrent_dig (void)
 Returns the Trimming of the internal driver charge current (Digital value) More...
 
INLINE void BDRV_setChrgCurrent_dig (uint8 u8_cur_dig)
 Sets the Trimming of the internal driver charge current (Digital value) More...
 
INLINE uint8 BDRV_getChrgCurrentRange_dig (void)
 Returns the Charge current range select (Digital value) More...
 
INLINE void BDRV_setChrgCurrentRange_dig (uint8 u8_cur_range_dig)
 Sets the Charge current range select (Digital value) More...
 
INLINE uint8 BDRV_getDischrgCurrent_dig (void)
 Returns the Trimming of the internal driver dis-charge current (Digital value) More...
 
INLINE void BDRV_setDischrgCurrent_dig (uint8 u8_cur_dig)
 Sets the Trimming of the internal driver dis-charge current (Digital value) More...
 
INLINE uint8 BDRV_getDischrgCurrentRange_dig (void)
 Returns the Discharge current range select (Digital value) More...
 
INLINE void BDRV_setDischrgCurrentRange_dig (uint8 u8_cur_range_dig)
 Sets the Discharge current range select (Digital value) More...
 
void BDRV_Init (void)
 Initializes the BDRV module based on the Config Wizard for MOTIX MCU configuration. More...
 
void BDRV_Set_Bridge (TBdrv_Ch_Cfg LS1_Cfg, TBdrv_Ch_Cfg HS1_Cfg, TBdrv_Ch_Cfg LS2_Cfg, TBdrv_Ch_Cfg HS2_Cfg, TBdrv_Ch_Cfg LS3_Cfg, TBdrv_Ch_Cfg HS3_Cfg)
 Sets the bridge in the desired state. For each of the six drivers the state can be defined. More...
 
void BDRV_Set_Channel (TBdrv_Ch BDRV_Ch, TBdrv_Ch_Cfg Ch_Cfg)
 sets an individual driver of the BridgeDriver in the desired state More...
 
void BDRV_Clr_Sts (uint32 Sts_Bit)
 clears individual status flags and interrupt status flags of the BridgeDriver More...
 
void BDRV_Set_Int_Channel (TBdrv_Ch BDRV_Ch, TBdrv_Ch_Int Ch_Int)
 sets Interrupt Enable for the individual MOSFETs (channels) More...
 
bool BDRV_Diag_OpenLoad (void)
 Open Load detection, detects whether a motor is connected. More...
 
TBDRV_Off_Diag BDRV_Off_Diagnosis (void)
 Off-diagnosis. More...
 
void BDRV_Set_DSM_Threshold (TBdrv_DSM_Threshold BDRV_Threshold)
 Sets the Voltage Threshold for Drain-Source Monitoring of external FETs. More...
 
TBDRV_Curr BDRV_getChrgCurrent_mA (void)
 Returns the BDRV charge current. More...
 
void BDRV_setChrgCurrent_mA (TBDRV_Curr BDRV_Current)
 Sets the BDRV charge current. More...
 
TBDRV_Curr BDRV_getDischrgCurrent_mA (void)
 Returns BDRV discharge current. More...
 
void BDRV_setDischrgCurrent_mA (TBDRV_Curr BDRV_Current)
 Sets the BDRV discharge current. More...
 

Macro Definition Documentation

◆ BDRV_DS_STS_BITS

#define BDRV_DS_STS_BITS   BDRV_ISCLR_DS

◆ BDRV_IRQ_BITS

#define BDRV_IRQ_BITS   (BDRV_ISCLR_OC | BDRV_ISCLR_DS)

◆ BDRV_ISCLR_DS

#define BDRV_ISCLR_DS   (LS1_DS | HS1_DS | LS2_DS | HS2_DS | LS3_DS | HS3_DS)

◆ BDRV_ISCLR_OC

#define BDRV_ISCLR_OC   (LS1_OC | HS1_OC | LS2_OC | HS2_OC | LS3_OC | HS3_OC)

◆ HS1_DS

#define HS1_DS   SCUPM_BDRV_ISCLR_HS1_DS_ICLR_Msk

Phase1 High Side MOSFET mask for Off-Diagnosis.

◆ HS1_OC

#define HS1_OC   SCUPM_BDRV_ISCLR_HS1_OC_ICLR_Msk

Phase1 High Side MOSFET mask for On-Diagnosis.

◆ HS2_DS

#define HS2_DS   SCUPM_BDRV_ISCLR_HS2_DS_ICLR_Msk

Phase2 High Side MOSFET mask for Off-Diagnosis.

◆ HS2_OC

#define HS2_OC   SCUPM_BDRV_ISCLR_HS2_OC_ICLR_Msk

Phase2 High Side MOSFET mask for On-Diagnosis.

◆ HS3_DS

#define HS3_DS   SCUPM_BDRV_ISCLR_HS3_DS_ICLR_Msk

Phase3 High Side MOSFET mask for Off-Diagnosis.

◆ HS3_OC

#define HS3_OC   SCUPM_BDRV_ISCLR_HS3_OC_ICLR_Msk

Phase3 High Side MOSFET mask for On-Diagnosis.

◆ LS1_DS

#define LS1_DS   SCUPM_BDRV_ISCLR_LS1_DS_ICLR_Msk

this enum lists the bit masks for the BridgeDriver status flags

Phase1 Low Side MOSFET mask for Off-Diagnosis

◆ LS1_OC

#define LS1_OC   SCUPM_BDRV_ISCLR_LS1_OC_ICLR_Msk

Phase1 Low Side MOSFET mask for On-Diagnosis.

◆ LS2_DS

#define LS2_DS   SCUPM_BDRV_ISCLR_LS2_DS_ICLR_Msk

Phase2 Low Side MOSFET mask for Off-Diagnosis.

◆ LS2_OC

#define LS2_OC   SCUPM_BDRV_ISCLR_LS2_OC_ICLR_Msk

Phase2 Low Side MOSFET mask for On-Diagnosis.

◆ LS3_DS

#define LS3_DS   SCUPM_BDRV_ISCLR_LS3_DS_ICLR_Msk

Phase3 Low Side MOSFET mask for Off-Diagnosis.

◆ LS3_OC

#define LS3_OC   SCUPM_BDRV_ISCLR_LS3_OC_ICLR_Msk

Phase3 Low Side MOSFET mask for On-Diagnosis.

◆ TBDRV_Curr_CURRENT_MASK

#define TBDRV_Curr_CURRENT_MASK   0x3Fu

◆ TBDRV_Curr_RANGE_POS

#define TBDRV_Curr_RANGE_POS   5u

Typedef Documentation

◆ TBdrv_Ch

typedef enum Bdrv_Ch TBdrv_Ch

◆ TBdrv_Ch_Cfg

typedef enum Bdrv_Ch_Cfg TBdrv_Ch_Cfg

◆ TBdrv_Ch_Int

typedef enum Bdrv_Ch_Int TBdrv_Ch_Int

◆ TBDRV_Curr

typedef enum BDRV_Curr TBDRV_Curr

◆ TBdrv_DSM_Threshold

◆ TBDRV_Off_Diag_Sts

Enumeration Type Documentation

◆ Bdrv_Ch

enum Bdrv_Ch
Enumerator
LS1 

Phase1 Low Side MOSFET.

LS2 

Phase2 Low Side MOSFET.

HS1 

Phase1 High Side MOSFET.

HS2 

Phase2 High Side MOSFET.

LS3 

Phase3 Low Side MOSFET.

HS3 

Phase3 High Side MOSFET.

◆ Bdrv_Ch_Cfg

Enumerator
Ch_Off 

channel disabled

Ch_En 

channel enabled

Ch_PWM 

channel enabled with PWM (CCU6 connection)

Ch_On 

channel enabled and static on

Ch_DCS 

channel enabled with Diag.-Current Source

◆ Bdrv_Ch_Int

Enumerator
Int_Off 

all interrupts disable

Int_DS 

Drain-Source interrupt enable (Off-Diagnosis)

Int_OC 

Over-Current interrupt enable (On-Diagnosis)

Int_DS_OC 

Drain-Source and Over-Current interrupt enable.

◆ BDRV_Curr

enum BDRV_Curr
Enumerator
BDRV_Curr_HR_Disabled 

(HiZ) Slew Rate Control is inactive

BDRV_Curr_HR_Min 

(min discharge current) lowest gate discharge current

BDRV_Curr_HR_10mA 

typ. current ~10 mA

BDRV_Curr_HR_15mA 

typ. current ~15 mA

BDRV_Curr_HR_20mA 

typ. current ~20 mA

BDRV_Curr_HR_25mA 

typ. current ~25 mA

BDRV_Curr_HR_30mA 

typ. current ~30 mA

BDRV_Curr_HR_35mA 

typ. current ~35 mA

BDRV_Curr_HR_40mA 

typ. current ~40 mA

BDRV_Curr_HR_45mA 

typ. current ~45 mA

BDRV_Curr_HR_50mA 

typ. current ~50 mA

BDRV_Curr_HR_55mA 

typ. current ~55 mA

BDRV_Curr_HR_60mA 

typ. current ~60 mA

BDRV_Curr_HR_65mA 

typ. current ~65 mA

BDRV_Curr_HR_70mA 

typ. current ~70 mA

BDRV_Curr_HR_75mA 

typ. current ~75 mA

BDRV_Curr_HR_80mA 

typ. current ~80 mA

BDRV_Curr_HR_85mA 

typ. current ~85 mA

BDRV_Curr_HR_90mA 

typ. current ~90 mA

BDRV_Curr_HR_95mA 

typ. current ~95 mA

BDRV_Curr_HR_100mA 

typ. current ~100 mA

BDRV_Curr_HR_105mA 

typ. current ~105 mA

BDRV_Curr_HR_110mA 

typ. current ~110 mA

BDRV_Curr_HR_115mA 

typ. current ~115 mA

BDRV_Curr_HR_120mA 

typ. current ~120 mA

BDRV_Curr_HR_125mA 

typ. current ~125 mA

BDRV_Curr_HR_130mA 

typ. current ~130 mA

BDRV_Curr_HR_135mA 

typ. current ~135 mA

BDRV_Curr_HR_140mA 

typ. current ~140 mA

BDRV_Curr_HR_145mA 

typ. current ~145 mA

BDRV_Curr_HR_150mA 

typ. current ~150 mA

BDRV_Curr_HR_155mA 

typ. current ~155 mA

BDRV_Curr_FR_Disabled 

(HiZ) Slew Rate Control is inactive

BDRV_Curr_FR_Min 

(min discharge current) lowest gate discharge current

BDRV_Curr_FR_20mA 

typ. current ~20 mA

BDRV_Curr_FR_30mA 

typ. current ~30 mA

BDRV_Curr_FR_40mA 

typ. current ~40 mA

BDRV_Curr_FR_50mA 

typ. current ~50 mA

BDRV_Curr_FR_60mA 

typ. current ~60 mA

BDRV_Curr_FR_70mA 

typ. current ~70 mA

BDRV_Curr_FR_80mA 

typ. current ~80 mA

BDRV_Curr_FR_90mA 

typ. current ~90 mA

BDRV_Curr_FR_100mA 

typ. current ~100 mA

BDRV_Curr_FR_110mA 

typ. current ~110 mA

BDRV_Curr_FR_120mA 

typ. current ~120 mA

BDRV_Curr_FR_130mA 

typ. current ~130 mA

BDRV_Curr_FR_140mA 

typ. current ~140 mA

BDRV_Curr_FR_150mA 

typ. current ~150 mA

BDRV_Curr_FR_160mA 

typ. current ~160 mA

BDRV_Curr_FR_170mA 

typ. current ~170 mA

BDRV_Curr_FR_180mA 

typ. current ~180 mA

BDRV_Curr_FR_190mA 

typ. current ~190 mA

BDRV_Curr_FR_200mA 

typ. current ~200 mA

BDRV_Curr_FR_210mA 

typ. current ~210 mA

BDRV_Curr_FR_220mA 

typ. current ~220 mA

BDRV_Curr_FR_230mA 

typ. current ~230 mA

BDRV_Curr_FR_240mA 

typ. current ~240 mA

BDRV_Curr_FR_250mA 

typ. current ~250 mA

BDRV_Curr_FR_260mA 

typ. current ~260 mA

BDRV_Curr_FR_270mA 

typ. current ~270 mA

BDRV_Curr_FR_280mA 

typ. current ~280 mA

BDRV_Curr_FR_290mA 

typ. current ~290 mA

BDRV_Curr_FR_300mA 

typ. current ~300 mA

BDRV_Curr_FR_310mA 

typ. current ~310 mA

◆ Bdrv_DSM_Threshold

Enumerator
Threshold_0_25_V 

Threshold 0 for VDS at 0.25 V.

Threshold_0_50_V 

Threshold 1 for VDS at 0.50 V.

Threshold_0_75_V 

Threshold 2 for VDS at 0.75 V.

Threshold_1_00_V 

Threshold 3 for VDS at 1.00 V.

Threshold_1_25_V 

Threshold 4 for VDS at 1.25 V.

Threshold_1_50_V 

Threshold 5 for VDS at 1.50 V.

Threshold_1_75_V 

Threshold 6 for VDS at 1.75 V.

Threshold_2_00_V 

Threshold 7 for VDS at 2.00 V.

◆ BDRV_Off_Diag_Sts

Enumerator
Ch_Ok 
Ch_Short_to_Gnd 
Ch_Short_to_VBat 

Function Documentation

◆ BDRV_ChargePump_Dis()

INLINE void BDRV_ChargePump_Dis ( void  )

disables the Charge Pump.

Example

This example disables the Charge Pump.

void Example_Function(void)
{
}
INLINE void BDRV_ChargePump_Dis(void)
disables the Charge Pump.
Definition: bdrv.h:333

◆ BDRV_ChargePump_En()

INLINE void BDRV_ChargePump_En ( void  )

enables the Charge Pump.

Example

This example enables the Charge Pump.

void Example_Function(void)
{
}
INLINE void BDRV_ChargePump_En(void)
enables the Charge Pump.
Definition: bdrv.h:316

◆ BDRV_Clr_Sts()

void BDRV_Clr_Sts ( uint32  Sts_Bit)

clears individual status flags and interrupt status flags of the BridgeDriver

Parameters
Sts_Bitstatus bit(s) to be cleared

Example

This example enables BDRV LS1, LS2, HS1 and HS2 Over-Current Interrupt.

void Example_Function(void)
{
}
#define LS2_OC
Phase2 Low Side MOSFET mask for On-Diagnosis.
Definition: bdrv.h:158
void BDRV_Clr_Sts(uint32 Sts_Bit)
clears individual status flags and interrupt status flags of the BridgeDriver
#define HS2_OC
Phase2 High Side MOSFET mask for On-Diagnosis.
Definition: bdrv.h:160
#define HS1_OC
Phase1 High Side MOSFET mask for On-Diagnosis.
Definition: bdrv.h:159
#define LS3_OC
Phase3 Low Side MOSFET mask for On-Diagnosis.
Definition: bdrv.h:164
#define LS1_OC
Phase1 Low Side MOSFET mask for On-Diagnosis.
Definition: bdrv.h:157
#define HS3_OC
Phase3 High Side MOSFET mask for On-Diagnosis.
Definition: bdrv.h:165

◆ BDRV_Diag_OpenLoad()

bool BDRV_Diag_OpenLoad ( void  )

Open Load detection, detects whether a motor is connected.

Return values
trueno motor detected,
falsemotor connected

Example

This example disables all BDRV channels when Open Load is detected.

void Example_Function(void)
{
if (BDRV_Diag_OpenLoad() == true)
{
}
}
bool BDRV_Diag_OpenLoad(void)
Open Load detection, detects whether a motor is connected.
@ HS2
Phase2 High Side MOSFET.
Definition: bdrv.h:144
@ HS1
Phase1 High Side MOSFET.
Definition: bdrv.h:143
@ LS2
Phase2 Low Side MOSFET.
Definition: bdrv.h:142
@ LS1
Phase1 Low Side MOSFET.
Definition: bdrv.h:141
void BDRV_Set_Channel(TBdrv_Ch BDRV_Ch, TBdrv_Ch_Cfg Ch_Cfg)
sets an individual driver of the BridgeDriver in the desired state
@ Ch_Off
channel disabled
Definition: bdrv.h:129

◆ BDRV_getChrgCurrent_dig()

INLINE uint8 BDRV_getChrgCurrent_dig ( void  )

Returns the Trimming of the internal driver charge current (Digital value)

Returns
Trimming of the internal driver charge current

◆ BDRV_getChrgCurrent_mA()

TBDRV_Curr BDRV_getChrgCurrent_mA ( void  )

Returns the BDRV charge current.

This function considers BDRV->CTRL3.bit.ICHARGE_TRIM as well as BDRV->CTRL3.bit.ICHARGEDIV2_N

Returns
BDRV_Current selection for the desired charge current, see TBDRV_Curr

◆ BDRV_getChrgCurrentRange_dig()

INLINE uint8 BDRV_getChrgCurrentRange_dig ( void  )

Returns the Charge current range select (Digital value)

Returns
Charge current range select (0: Half Range, 1: Full Range)

◆ BDRV_getDischrgCurrent_dig()

INLINE uint8 BDRV_getDischrgCurrent_dig ( void  )

Returns the Trimming of the internal driver dis-charge current (Digital value)

Returns
Trimming of the internal driver dis-charge current

◆ BDRV_getDischrgCurrent_mA()

TBDRV_Curr BDRV_getDischrgCurrent_mA ( void  )

Returns BDRV discharge current.

This function considers BDRV->CTRL3.bit.IDISCHARGE_TRIM as well as BDRV->CTRL3.bit.IDISCHARGEDIV2_N

Returns
BDRV_Current selection for the desired discharge current, see TBDRV_Curr

◆ BDRV_getDischrgCurrentRange_dig()

INLINE uint8 BDRV_getDischrgCurrentRange_dig ( void  )

Returns the Discharge current range select (Digital value)

Returns
Discharge current range select

◆ BDRV_HS1_DS_Int_Clr()

INLINE void BDRV_HS1_DS_Int_Clr ( void  )

enables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS1_DS_IS == 1u)
{
BDRV_HS1_DS_CALLBACK();
}
}
INLINE void BDRV_HS1_DS_Int_En(void)
enables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:927
INLINE void BDRV_HS1_DS_Int_Clr(void)
enables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:491
#define SCUPM
Definition: tle987x.h:6072

◆ BDRV_HS1_DS_Int_Dis()

INLINE void BDRV_HS1_DS_Int_Dis ( void  )

disables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS1_DS_IS == 1u)
{
BDRV_HS1_DS_CALLBACK();
}
}
INLINE void BDRV_HS1_DS_Int_Dis(void)
disables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:950

◆ BDRV_HS1_DS_Int_En()

INLINE void BDRV_HS1_DS_Int_En ( void  )

enables High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the High Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS1_DS_IS == 1u)
{
BDRV_HS1_DS_CALLBACK();
}
}

◆ BDRV_HS1_DS_Int_Sts()

INLINE uint8 BDRV_HS1_DS_Int_Sts ( void  )

Reads the Bridge Driver High-Side 1 Pre-Driver Short Status Flag.

Returns
uint8 Status Flag

◆ BDRV_HS1_OC_Int_Clr()

INLINE void BDRV_HS1_OC_Int_Clr ( void  )

clears External High Side 1 FET Over-current interrupt flag.

Example

This example treats the External High Side 1 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS1_OC_IS == 1u)
{
BDRV_HS1_OC_CALLBACK();
}
}
INLINE void BDRV_HS1_OC_Int_En(void)
enables External High Side 1 FET Over-current interrupt.
Definition: bdrv.h:649
INLINE void BDRV_HS1_OC_Int_Clr(void)
clears External High Side 1 FET Over-current interrupt flag.
Definition: bdrv.h:355

◆ BDRV_HS1_OC_Int_Dis()

INLINE void BDRV_HS1_OC_Int_Dis ( void  )

disables External High Side 1 FET Over-current interrupt.

Example

This example treats the External High Side 1 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS1_OC_IS == 1u)
{
BDRV_HS1_OC_CALLBACK();
}
}
INLINE void BDRV_HS1_OC_Int_Dis(void)
disables External High Side 1 FET Over-current interrupt.
Definition: bdrv.h:672

◆ BDRV_HS1_OC_Int_En()

INLINE void BDRV_HS1_OC_Int_En ( void  )

enables External High Side 1 FET Over-current interrupt.

Example

This example treats the External High Side 1 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS1_OC_IS == 1u)
{
BDRV_HS1_OC_CALLBACK();
}
}

◆ BDRV_HS1_OC_Int_Sts()

INLINE uint8 BDRV_HS1_OC_Int_Sts ( void  )

Reads the Bridge Driver High-Side 1 Over-Current Status Flag.

Returns
uint8 Status Flag

◆ BDRV_HS2_DS_Int_Clr()

INLINE void BDRV_HS2_DS_Int_Clr ( void  )

clears High Side Driver 2 Drain Source Monitoring interrupt flag in OFF-State.

Example

This example treats the High Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS2_DS_IS == 1u)
{
BDRV_HS2_DS_CALLBACK();
}
}
INLINE void BDRV_HS2_DS_Int_En(void)
enables High Side Driver 2 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1017
INLINE void BDRV_HS2_DS_Int_Clr(void)
clears High Side Driver 2 Drain Source Monitoring interrupt flag in OFF-State.
Definition: bdrv.h:535

◆ BDRV_HS2_DS_Int_Dis()

INLINE void BDRV_HS2_DS_Int_Dis ( void  )

disables High Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the High Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS2_DS_IS == 1u)
{
BDRV_HS2_DS_CALLBACK();
}
}
INLINE void BDRV_HS2_DS_Int_Dis(void)
disables High Side Driver 2 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1040

◆ BDRV_HS2_DS_Int_En()

INLINE void BDRV_HS2_DS_Int_En ( void  )

enables High Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the High Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS2_DS_IS == 1u)
{
BDRV_HS2_DS_CALLBACK();
}
}

◆ BDRV_HS2_DS_Int_Sts()

INLINE uint8 BDRV_HS2_DS_Int_Sts ( void  )

Reads the Bridge Driver High-Side 2 Pre-Driver Short Status Flag.

Returns
uint8 Status Flag

◆ BDRV_HS2_OC_Int_Clr()

INLINE void BDRV_HS2_OC_Int_Clr ( void  )

clears External High Side 2 FET Over-current interrupt flag.

Example

This example treats the External High Side 2 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS2_OC_IS == 1u)
{
BDRV_HS2_OC_CALLBACK();
}
}
INLINE void BDRV_HS2_OC_Int_Clr(void)
clears External High Side 2 FET Over-current interrupt flag.
Definition: bdrv.h:399
INLINE void BDRV_HS2_OC_Int_En(void)
enables External High Side 2 FET Over-current interrupt.
Definition: bdrv.h:739

◆ BDRV_HS2_OC_Int_Dis()

INLINE void BDRV_HS2_OC_Int_Dis ( void  )

disables External High Side 2 FET Over-current interrupt.

Example

This example treats the External High Side 2 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS2_OC_IS == 1u)
{
BDRV_HS2_OC_CALLBACK();
}
}
INLINE void BDRV_HS2_OC_Int_Dis(void)
disables External High Side 2 FET Over-current interrupt.
Definition: bdrv.h:762

◆ BDRV_HS2_OC_Int_En()

INLINE void BDRV_HS2_OC_Int_En ( void  )

enables External High Side 2 FET Over-current interrupt.

Example

This example treats the External High Side 2 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS2_OC_IS == 1u)
{
BDRV_HS2_OC_CALLBACK();
}
}

◆ BDRV_HS2_OC_Int_Sts()

INLINE uint8 BDRV_HS2_OC_Int_Sts ( void  )

Reads the Bridge Driver High-Side 2 Over-Current Status Flag.

Returns
uint8 Status Flag

◆ BDRV_HS3_DS_Int_Clr()

INLINE void BDRV_HS3_DS_Int_Clr ( void  )

clears High Side Driver 3 Drain Source Monitoring interrupt flag in OFF-State.

Example

This example treats the High Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS3_DS_IS == 1u)
{
BDRV_HS3_DS_CALLBACK();
}
}
INLINE void BDRV_HS3_DS_Int_En(void)
enables High Side Driver 3 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1108
INLINE void BDRV_HS3_DS_Int_Clr(void)
clears High Side Driver 3 Drain Source Monitoring interrupt flag in OFF-State.
Definition: bdrv.h:580

◆ BDRV_HS3_DS_Int_Dis()

INLINE void BDRV_HS3_DS_Int_Dis ( void  )

disables High Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the High Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS3_DS_IS == 1u)
{
BDRV_HS3_DS_CALLBACK();
}
}
INLINE void BDRV_HS3_DS_Int_Dis(void)
disables High Side Driver 3 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1133

◆ BDRV_HS3_DS_Int_En()

INLINE void BDRV_HS3_DS_Int_En ( void  )

enables High Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the High Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS3_DS_IS == 1u)
{
BDRV_HS3_DS_CALLBACK();
}
}

◆ BDRV_HS3_DS_Int_Sts()

INLINE uint8 BDRV_HS3_DS_Int_Sts ( void  )

Reads the Bridge Driver High-Side 3 Pre-Driver Short Status Flag.

Returns
uint8 Status Flag

◆ BDRV_HS3_OC_Int_Clr()

INLINE void BDRV_HS3_OC_Int_Clr ( void  )

clears External High Side 3 FET Over-current interrupt flag.

Example

This example treats the External High Side 3 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS3_OC_IS == 1u)
{
BDRV_HS3_OC_CALLBACK();
}
}
INLINE void BDRV_HS3_OC_Int_Clr(void)
clears External High Side 3 FET Over-current interrupt flag.
Definition: bdrv.h:444
INLINE void BDRV_HS3_OC_Int_En(void)
enables External High Side 3 FET Over-current interrupt.
Definition: bdrv.h:830

◆ BDRV_HS3_OC_Int_Dis()

INLINE void BDRV_HS3_OC_Int_Dis ( void  )

disables External High Side 3 FET Over-current interrupt.

Example

This example treats the External High Side 3 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS3_OC_IS == 1u)
{
BDRV_HS3_OC_CALLBACK();
}
}
INLINE void BDRV_HS3_OC_Int_Dis(void)
disables External High Side 3 FET Over-current interrupt.
Definition: bdrv.h:855

◆ BDRV_HS3_OC_Int_En()

INLINE void BDRV_HS3_OC_Int_En ( void  )

enables External High Side 3 FET Over-current interrupt.

Example

This example treats the External High Side 3 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.HS3_OC_IS == 1u)
{
BDRV_HS3_OC_CALLBACK();
}
}

◆ BDRV_HS3_OC_Int_Sts()

INLINE uint8 BDRV_HS3_OC_Int_Sts ( void  )

Reads the Bridge Driver High-Side 3 Over-Current Status Flag.

Returns
uint8 Status Flag

◆ BDRV_Init()

void BDRV_Init ( void  )

Initializes the BDRV module based on the Config Wizard for MOTIX MCU configuration.

◆ BDRV_LS1_DS_Int_Clr()

INLINE void BDRV_LS1_DS_Int_Clr ( void  )

clears Low Side Driver 1 Drain Source Monitoring interrupt flag in OFF-State.

Example

This example treats the Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS1_DS_IS == 1u)
{
BDRV_LS1_DS_CALLBACK();
}
}
INLINE void BDRV_LS1_DS_Int_Clr(void)
clears Low Side Driver 1 Drain Source Monitoring interrupt flag in OFF-State.
Definition: bdrv.h:513
INLINE void BDRV_LS1_DS_Int_En(void)
enables Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:972

◆ BDRV_LS1_DS_Int_Dis()

INLINE void BDRV_LS1_DS_Int_Dis ( void  )

disables Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS1_DS_IS == 1u)
{
BDRV_LS1_DS_CALLBACK();
}
}
INLINE void BDRV_LS1_DS_Int_Dis(void)
disables Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:995

◆ BDRV_LS1_DS_Int_En()

INLINE void BDRV_LS1_DS_Int_En ( void  )

enables Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the Low Side Driver 1 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS1_DS_IS == 1u)
{
BDRV_LS1_DS_CALLBACK();
}
}

◆ BDRV_LS1_DS_Int_Sts()

INLINE uint8 BDRV_LS1_DS_Int_Sts ( void  )

Reads the Bridge Driver Low-Side 1 Pre-Driver Short Status Flag.

Returns
uint8 Status Flag

◆ BDRV_LS1_OC_Int_Clr()

INLINE void BDRV_LS1_OC_Int_Clr ( void  )

clears External Low Side 1 FET Over-current interrupt flag.

Example

This example treats the External Low Side 1 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS1_OC_IS == 1u)
{
BDRV_LS1_OC_CALLBACK();
}
}
INLINE void BDRV_LS1_OC_Int_En(void)
enables External Low Side 1 FET Over-current interrupt.
Definition: bdrv.h:694
INLINE void BDRV_LS1_OC_Int_Clr(void)
clears External Low Side 1 FET Over-current interrupt flag.
Definition: bdrv.h:377

◆ BDRV_LS1_OC_Int_Dis()

INLINE void BDRV_LS1_OC_Int_Dis ( void  )

disables External Low Side 1 FET Over-current interrupt.

Example

This example treats the External Low Side 1 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS1_OC_IS == 1u)
{
BDRV_LS1_OC_CALLBACK();
}
}
INLINE void BDRV_LS1_OC_Int_Dis(void)
disables External Low Side 1 FET Over-current interrupt.
Definition: bdrv.h:717

◆ BDRV_LS1_OC_Int_En()

INLINE void BDRV_LS1_OC_Int_En ( void  )

enables External Low Side 1 FET Over-current interrupt.

Example

This example treats the External Low Side 1 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS1_OC_IS == 1u)
{
BDRV_LS1_OC_CALLBACK();
}
}

◆ BDRV_LS1_OC_Int_Sts()

INLINE uint8 BDRV_LS1_OC_Int_Sts ( void  )

Reads the Bridge Driver Low-Side 1 Over-Current Status Flag.

Returns
uint8 Status Flag

◆ BDRV_LS2_DS_Int_Clr()

INLINE void BDRV_LS2_DS_Int_Clr ( void  )

clears Low Side Driver 2 Drain Source Monitoring interrupt flag in OFF-State.

Example

This example treats the Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS2_DS_IS == 1u)
{
BDRV_LS2_DS_CALLBACK();
}
}
INLINE void BDRV_LS2_DS_Int_Clr(void)
clears Low Side Driver 2 Drain Source Monitoring interrupt flag in OFF-State.
Definition: bdrv.h:557
INLINE void BDRV_LS2_DS_Int_En(void)
enables Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1062

◆ BDRV_LS2_DS_Int_Dis()

INLINE void BDRV_LS2_DS_Int_Dis ( void  )

disables Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS2_DS_IS == 1u)
{
BDRV_LS2_DS_CALLBACK();
}
}
INLINE void BDRV_LS2_DS_Int_Dis(void)
disables Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1085

◆ BDRV_LS2_DS_Int_En()

INLINE void BDRV_LS2_DS_Int_En ( void  )

enables Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the Low Side Driver 2 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS2_DS_IS == 1u)
{
BDRV_LS2_DS_CALLBACK();
}
}

◆ BDRV_LS2_DS_Int_Sts()

INLINE uint8 BDRV_LS2_DS_Int_Sts ( void  )

Reads the Bridge Driver Low-Side 2 Pre-Driver Short Status Flag.

Returns
uint8 Status Flag

◆ BDRV_LS2_OC_Int_Clr()

INLINE void BDRV_LS2_OC_Int_Clr ( void  )

clears External Low Side 2 FET Over-current interrupt flag.

Example

This example treats the External Low Side 2 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS2_OC_IS == 1u)
{
BDRV_LS2_OC_CALLBACK();
}
}
INLINE void BDRV_LS2_OC_Int_Clr(void)
clears External Low Side 2 FET Over-current interrupt flag.
Definition: bdrv.h:421
INLINE void BDRV_LS2_OC_Int_En(void)
enables External Low Side 2 FET Over-current interrupt.
Definition: bdrv.h:784

◆ BDRV_LS2_OC_Int_Dis()

INLINE void BDRV_LS2_OC_Int_Dis ( void  )

disables External Low Side 2 FET Over-current interrupt.

Example

This example treats the External Low Side 2 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS2_OC_IS == 1u)
{
BDRV_LS2_OC_CALLBACK();
}
}
INLINE void BDRV_LS2_OC_Int_Dis(void)
disables External Low Side 2 FET Over-current interrupt.
Definition: bdrv.h:807

◆ BDRV_LS2_OC_Int_En()

INLINE void BDRV_LS2_OC_Int_En ( void  )

enables External Low Side 2 FET Over-current interrupt.

Example

This example treats the External Low Side 2 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS2_OC_IS == 1u)
{
BDRV_LS2_OC_CALLBACK();
}
}

◆ BDRV_LS2_OC_Int_Sts()

INLINE uint8 BDRV_LS2_OC_Int_Sts ( void  )

Reads the Bridge Driver Low-Side 2 Over-Current Status Flag.

Returns
uint8 Status Flag

◆ BDRV_LS3_DS_Int_Clr()

INLINE void BDRV_LS3_DS_Int_Clr ( void  )

clears Low Side Driver 3 Drain Source Monitoring interrupt flag in OFF-State.

Example

This example treats the Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS3_DS_IS == 1u)
{
BDRV_LS3_DS_CALLBACK();
}
}
INLINE void BDRV_LS3_DS_Int_Clr(void)
clears Low Side Driver 3 Drain Source Monitoring interrupt flag in OFF-State.
Definition: bdrv.h:604
INLINE void BDRV_LS3_DS_Int_En(void)
enables Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1157

◆ BDRV_LS3_DS_Int_Dis()

INLINE void BDRV_LS3_DS_Int_Dis ( void  )

disables Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS3_DS_IS == 1u)
{
BDRV_LS3_DS_CALLBACK();
}
}
INLINE void BDRV_LS3_DS_Int_Dis(void)
disables Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State.
Definition: bdrv.h:1182

◆ BDRV_LS3_DS_Int_En()

INLINE void BDRV_LS3_DS_Int_En ( void  )

enables Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

Example

This example treats the Low Side Driver 3 Drain Source Monitoring interrupt in OFF-State.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS3_DS_IS == 1u)
{
BDRV_LS3_DS_CALLBACK();
}
}

◆ BDRV_LS3_DS_Int_Sts()

INLINE uint8 BDRV_LS3_DS_Int_Sts ( void  )

Reads the Bridge Driver Low-Side 3 Pre-Driver Short Status Flag.

Returns
uint8 Status Flag

◆ BDRV_LS3_OC_Int_Clr()

INLINE void BDRV_LS3_OC_Int_Clr ( void  )

clears External Low Side 3 FET Over-current interrupt flag.

Example

This example treats the External Low Side 3 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS3_OC_IS == 1u)
{
BDRV_LS3_OC_CALLBACK();
}
}
INLINE void BDRV_LS3_OC_Int_Clr(void)
clears External Low Side 3 FET Over-current interrupt flag.
Definition: bdrv.h:468
INLINE void BDRV_LS3_OC_Int_En(void)
enables External Low Side 3 FET Over-current interrupt.
Definition: bdrv.h:879

◆ BDRV_LS3_OC_Int_Dis()

INLINE void BDRV_LS3_OC_Int_Dis ( void  )

disables External Low Side 3 FET Over-current interrupt.

Example

This example treats the External Low Side 3 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS3_OC_IS == 1u)
{
BDRV_LS3_OC_CALLBACK();
}
}
INLINE void BDRV_LS3_OC_Int_Dis(void)
disables External Low Side 3 FET Over-current interrupt.
Definition: bdrv.h:904

◆ BDRV_LS3_OC_Int_En()

INLINE void BDRV_LS3_OC_Int_En ( void  )

enables External Low Side 3 FET Over-current interrupt.

Example

This example treats the External Low Side 3 FET Over-current interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.LS3_OC_IS == 1u)
{
BDRV_LS3_OC_CALLBACK();
}
}

◆ BDRV_LS3_OC_Int_Sts()

INLINE uint8 BDRV_LS3_OC_Int_Sts ( void  )

Reads the Bridge Driver Low-Side 3 Over-Current Status Flag.

Returns
uint8 Status Flag

◆ BDRV_Off_Diagnosis()

TBDRV_Off_Diag BDRV_Off_Diagnosis ( void  )

Off-diagnosis.

Detects a short of the phases either to Gnd or to Vbat

Return values
trueany short detected
falseno short

◆ BDRV_Set_Bridge()

void BDRV_Set_Bridge ( TBdrv_Ch_Cfg  LS1_Cfg,
TBdrv_Ch_Cfg  HS1_Cfg,
TBdrv_Ch_Cfg  LS2_Cfg,
TBdrv_Ch_Cfg  HS2_Cfg,
TBdrv_Ch_Cfg  LS3_Cfg,
TBdrv_Ch_Cfg  HS3_Cfg 
)

Sets the bridge in the desired state. For each of the six drivers the state can be defined.

In order to operate a 3phase motor all the six driver stages have to be configured to Ch_PWM.

See TBdrv_Ch_Cfg

Parameters
LS1_Cfgsets the desired mode for LS MOSFET of phase1
HS1_Cfgsets the desired mode for HS MOSFET of phase1
LS2_Cfgsets the desired mode for LS MOSFET of phase2
HS2_Cfgsets the desired mode for HS MOSFET of phase2
LS3_Cfgsets the desired mode for LS MOSFET of phase3
HS3_Cfgsets the desired mode for HS MOSFET of phase3

Example

This example configures BDRV Bridge channels HS1, HS2, LS1, LS2, LS3 and HS3 to be enabled with PWM.

void Example_Function(void)
{
}
void BDRV_Set_Bridge(TBdrv_Ch_Cfg LS1_Cfg, TBdrv_Ch_Cfg HS1_Cfg, TBdrv_Ch_Cfg LS2_Cfg, TBdrv_Ch_Cfg HS2_Cfg, TBdrv_Ch_Cfg LS3_Cfg, TBdrv_Ch_Cfg HS3_Cfg)
Sets the bridge in the desired state. For each of the six drivers the state can be defined.
@ Ch_PWM
channel enabled with PWM (CCU6 connection)
Definition: bdrv.h:131

◆ BDRV_Set_Channel()

void BDRV_Set_Channel ( TBdrv_Ch  BDRV_Ch,
TBdrv_Ch_Cfg  Ch_Cfg 
)

sets an individual driver of the BridgeDriver in the desired state

Parameters
BDRV_Chselects the channel for which the configuration should be set, see TBdrv_Ch
Ch_Cfgselects the mode of operation for that channel, see TBdrv_Ch_Cfg

Example

This example configures BDRV Bridge channel HS1 to be enabled with PWM.

void Example_Function(void)
{
}

◆ BDRV_Set_DSM_Threshold()

void BDRV_Set_DSM_Threshold ( TBdrv_DSM_Threshold  BDRV_Threshold)

Sets the Voltage Threshold for Drain-Source Monitoring of external FETs.

Parameters
BDRV_Thresholdselection for the desired voltage threshold, see TBdrv_DSM_Threshold

◆ BDRV_Set_Int_Channel()

void BDRV_Set_Int_Channel ( TBdrv_Ch  BDRV_Ch,
TBdrv_Ch_Int  Ch_Int 
)

sets Interrupt Enable for the individual MOSFETs (channels)

Parameters
BDRV_ChChannel selection, see TBdrv_Ch
Ch_Intselection for the desired interrupt to be enabled, see TBdrv_Ch_Int

Example

This example enables BDRV HS1 Over-Current Interrupt.

void Example_Function(void)
{
}
@ Int_OC
Over-Current interrupt enable (On-Diagnosis)
Definition: bdrv.h:198
void BDRV_Set_Int_Channel(TBdrv_Ch BDRV_Ch, TBdrv_Ch_Int Ch_Int)
sets Interrupt Enable for the individual MOSFETs (channels)

◆ BDRV_setChrgCurrent_dig()

INLINE void BDRV_setChrgCurrent_dig ( uint8  u8_cur_dig)

Sets the Trimming of the internal driver charge current (Digital value)

For setting the Charge Current in mA please use function BDRV_setChrgCurrent_mA

Parameters
u8_cur_digTrimming of the internal driver charge current

◆ BDRV_setChrgCurrent_mA()

void BDRV_setChrgCurrent_mA ( TBDRV_Curr  BDRV_Current)

Sets the BDRV charge current.

This function sets BDRV->CTRL3.bit.ICHARGE_TRIM as well as BDRV->CTRL3.bit.ICHARGEDIV2_N

Parameters
BDRV_Currentselection for the desired charge current, see TBDRV_Curr

◆ BDRV_setChrgCurrentRange_dig()

INLINE void BDRV_setChrgCurrentRange_dig ( uint8  u8_cur_range_dig)

Sets the Charge current range select (Digital value)

For setting the Charge Current in mA please use function BDRV_setChrgCurrent_mA

Parameters
u8_cur_range_digCharge current range select (0: Half Range, 1: Full Range)

◆ BDRV_setDischrgCurrent_dig()

INLINE void BDRV_setDischrgCurrent_dig ( uint8  u8_cur_dig)

Sets the Trimming of the internal driver dis-charge current (Digital value)

For setting the Dircharge Current in mA please use function BDRV_setDischrgCurrent_mA

Parameters
u8_cur_digTrimming of the internal driver dis-charge current

◆ BDRV_setDischrgCurrent_mA()

void BDRV_setDischrgCurrent_mA ( TBDRV_Curr  BDRV_Current)

Sets the BDRV discharge current.

This function sets BDRV->CTRL3.bit.IDISCHARGE_TRIM as well as BDRV->CTRL3.bit.IDISCHARGEDIV2_N

Parameters
BDRV_Currentselection for the desired discharge current, see TBDRV_Curr

◆ BDRV_setDischrgCurrentRange_dig()

INLINE void BDRV_setDischrgCurrentRange_dig ( uint8  u8_cur_range_dig)

Sets the Discharge current range select (Digital value)

For setting the Dircharge Current in mA please use function BDRV_setDischrgCurrent_mA

Parameters
u8_cur_range_digDischarge current range select

◆ BDRV_VCP_LO_Int_Clr()

INLINE void BDRV_VCP_LO_Int_Clr ( void  )

clears Charge Pump Low interrupt flag.

Example

This example treats the Charge Pump Low interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.VCP_LOWTH2_IS == 1u)
{
BDRV_VCP_LO_CALLBACK();
}
}
INLINE void BDRV_VCP_LO_Int_Clr(void)
clears Charge Pump Low interrupt flag.
Definition: bdrv.h:627
INLINE void BDRV_VCP_LO_Int_En(void)
enables Charge Pump Low interrupt.
Definition: bdrv.h:1205

◆ BDRV_VCP_LO_Int_Dis()

INLINE void BDRV_VCP_LO_Int_Dis ( void  )

disables Charge Pump Low interrupt.

Example

This example treats the Charge Pump Low interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.VCP_LOWTH2_IS == 1u)
{
BDRV_VCP_LO_CALLBACK();
}
}
INLINE void BDRV_VCP_LO_Int_Dis(void)
disables Charge Pump Low interrupt.
Definition: bdrv.h:1228

◆ BDRV_VCP_LO_Int_En()

INLINE void BDRV_VCP_LO_Int_En ( void  )

enables Charge Pump Low interrupt.

Example

This example treats the Charge Pump Low interrupt.

void Example_Function(void)
{
if (SCUPM->BDRV_IS.bit.VCP_LOWTH2_IS == 1u)
{
BDRV_VCP_LO_CALLBACK();
}
}

◆ BDRV_VCP_LO_Int_Sts()

INLINE uint8 BDRV_VCP_LO_Int_Sts ( void  )

Reads the Bridge Driver VCP Lower Threshold 2 Measurement Status Flag.

Returns
uint8 Status Flag