HF-MAX22200 Driver 0.1.0-dev
HF-MAX22200 C++ Driver
Loading...
Searching...
No Matches
max22200::FaultStatus Struct Reference

Per-channel fault information from FAULT register (0x09) More...

#include <max22200_types.hpp>

Public Member Functions

 FaultStatus ()
 
void fromRegister (uint32_t val)
 
bool hasFault () const
 Check if any per-channel fault is active.
 
uint8_t getFaultCount () const
 Count total per-channel faults.
 
bool hasOvercurrent () const
 
bool hasHitNotReached () const
 
bool hasOpenLoadFault () const
 
bool hasPlungerMovementFault () const
 
bool hasFaultOnChannel (uint8_t ch) const
 
bool hasOvercurrentOnChannel (uint8_t ch) const
 
bool hasHitNotReachedOnChannel (uint8_t ch) const
 
bool hasOpenLoadFaultOnChannel (uint8_t ch) const
 
bool hasPlungerMovementFaultOnChannel (uint8_t ch) const
 
uint8_t channelsWithAnyFault () const
 

Public Attributes

uint8_t overcurrent_channel_mask
 OCP per-channel bitmask (bit N = channel N)
 
uint8_t hit_not_reached_channel_mask
 HHF per-channel bitmask (bit N = channel N)
 
uint8_t open_load_fault_channel_mask
 OLF per-channel bitmask (bit N = channel N)
 
uint8_t plunger_movement_fault_channel_mask
 DPM per-channel bitmask (bit N = channel N)
 

Detailed Description

Per-channel fault information from FAULT register (0x09)

The FAULT register is 32-bit, read-only, and contains per-channel fault flags. Each fault type has an 8-bit field where bit N corresponds to channel N.

Register Layout

Byte Bits Field Description
3 31:24 OCP[7:0] Per-channel overcurrent flags
2 23:16 HHF[7:0] Per-channel HIT not reached flags
1 15:8 OLF[7:0] Per-channel open-load flags
0 7:0 DPM[7:0] Per-channel plunger movement flags

Clearing Fault Flags

MAX22200: Reading the FAULT register clears all fault flags simultaneously.

MAX22200A (recommended): Selective clear on read. To clear a specific fault bit, read the FAULT register while keeping the corresponding SDI bit HIGH for the channel(s) to clear. Only the bits corresponding to HIGH SDI bits are cleared.

Note
Channel 0 corresponds to the LSB (bit 0) of each fault byte.
Reading the FAULT register also deasserts the nFAULT pin (if no other faults are active).

Constructor & Destructor Documentation

◆ FaultStatus()

max22200::FaultStatus::FaultStatus ( )
inline

Member Function Documentation

◆ channelsWithAnyFault()

uint8_t max22200::FaultStatus::channelsWithAnyFault ( ) const
inline

◆ fromRegister()

void max22200::FaultStatus::fromRegister ( uint32_t val)
inline

◆ getFaultCount()

uint8_t max22200::FaultStatus::getFaultCount ( ) const
inline

◆ hasFault()

bool max22200::FaultStatus::hasFault ( ) const
inline

Check if any per-channel fault is active.

Examples
/home/runner/work/hf-max22200-driver/hf-max22200-driver/inc/max22200_types.hpp.

◆ hasFaultOnChannel()

bool max22200::FaultStatus::hasFaultOnChannel ( uint8_t ch) const
inline

◆ hasHitNotReached()

bool max22200::FaultStatus::hasHitNotReached ( ) const
inline

◆ hasHitNotReachedOnChannel()

bool max22200::FaultStatus::hasHitNotReachedOnChannel ( uint8_t ch) const
inline

◆ hasOpenLoadFault()

bool max22200::FaultStatus::hasOpenLoadFault ( ) const
inline

◆ hasOpenLoadFaultOnChannel()

bool max22200::FaultStatus::hasOpenLoadFaultOnChannel ( uint8_t ch) const
inline

◆ hasOvercurrent()

bool max22200::FaultStatus::hasOvercurrent ( ) const
inline

◆ hasOvercurrentOnChannel()

bool max22200::FaultStatus::hasOvercurrentOnChannel ( uint8_t ch) const
inline

◆ hasPlungerMovementFault()

bool max22200::FaultStatus::hasPlungerMovementFault ( ) const
inline

◆ hasPlungerMovementFaultOnChannel()

bool max22200::FaultStatus::hasPlungerMovementFaultOnChannel ( uint8_t ch) const
inline

Member Data Documentation

◆ hit_not_reached_channel_mask

uint8_t max22200::FaultStatus::hit_not_reached_channel_mask

HHF per-channel bitmask (bit N = channel N)

Examples
/home/runner/work/hf-max22200-driver/hf-max22200-driver/inc/max22200_types.hpp.

◆ open_load_fault_channel_mask

uint8_t max22200::FaultStatus::open_load_fault_channel_mask

OLF per-channel bitmask (bit N = channel N)

Examples
/home/runner/work/hf-max22200-driver/hf-max22200-driver/inc/max22200_types.hpp.

◆ overcurrent_channel_mask

uint8_t max22200::FaultStatus::overcurrent_channel_mask

OCP per-channel bitmask (bit N = channel N)

Examples
/home/runner/work/hf-max22200-driver/hf-max22200-driver/inc/max22200_types.hpp.

◆ plunger_movement_fault_channel_mask

uint8_t max22200::FaultStatus::plunger_movement_fault_channel_mask

DPM per-channel bitmask (bit N = channel N)

Examples
/home/runner/work/hf-max22200-driver/hf-max22200-driver/inc/max22200_types.hpp.

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