TLE92466ED Driver 2.0.0
API reference
Loading...
Searching...
No Matches
Functions | Variables
tle92466ed::SETPOINT Namespace Reference

SETPOINT register bit definitions (per channel) More...

Functions

constexpr uint16_t CalculateTarget (uint16_t current_ma, bool parallel_mode=false) noexcept
 Calculate setpoint value for desired current.
 
constexpr uint16_t CalculateTargetUa (uint32_t current_ua, bool parallel_mode=false) noexcept
 Calculate setpoint value for a desired current in microamperes.
 
constexpr uint16_t CalculateCurrent (uint16_t target, bool parallel_mode=false) noexcept
 Calculate current from setpoint value.
 

Variables

constexpr uint16_t TARGET_MASK = 0x7FFF
 Target current mask.
 
constexpr uint16_t AUTO_LIMIT_DIS = (1 << 15)
 Disable auto-limit.
 
constexpr uint16_t DEFAULT = 0x0000
 Default (0A)
 
constexpr uint16_t MAX_TARGET = 0x6000
 Maximum safe target value (datasheet saturates above 0x6000)
 

Detailed Description

SETPOINT register bit definitions (per channel)

15-bit current setpoint with auto-limit disable.

Current Calculation:

Current Capability (per datasheet):

Warning
The driver uses the full register scale (2A/4A) as maximum setpoint values, but the device will naturally limit to its thermal/electrical capacity (~1.5A single, ~2.7A parallel). Setting higher values may result in current regulation at the device limit rather than setpoint.
Bit Map:
* Bit 15    : AUTO_LIMIT_DIS - Auto-limit disable
* Bits 14-0 : TARGET - Current setpoint value
* 

Function Documentation

◆ CalculateCurrent()

constexpr uint16_t tle92466ed::SETPOINT::CalculateCurrent ( uint16_t  target,
bool  parallel_mode = false 
)
constexprnoexcept

Calculate current from setpoint value.

Parameters
targetSetpoint register value
parallel_modetrue if channel is in parallel mode
Returns
Current in milliamperes
Note
Uses rounding to minimize quantization error (adds half of 32767 before division)

◆ CalculateTarget()

constexpr uint16_t tle92466ed::SETPOINT::CalculateTarget ( uint16_t  current_ma,
bool  parallel_mode = false 
)
constexprnoexcept

Calculate setpoint value for desired current.

Parameters
current_maDesired current in milliamperes (0-2000 single, 0-4000 parallel)
parallel_modetrue if channel is in parallel mode
Returns
Setpoint register value
Note
Uses rounding to minimize quantization error (adds half of max_current before division)

◆ CalculateTargetUa()

constexpr uint16_t tle92466ed::SETPOINT::CalculateTargetUa ( uint32_t  current_ua,
bool  parallel_mode = false 
)
constexprnoexcept

Calculate setpoint value for a desired current in microamperes.

TARGET is 15-bit: one LSB is 2000 mA / 32767 ≈ 61 µA (single) or 122 µA (parallel). The mA overload throws that resolution away, which matters for proportional valves whose flow moves 1–2 slpm per mA. Rounds to nearest, saturates at MAX_TARGET.

Parameters
current_uaDesired current in µA (0–2 000 000 single, 0–4 000 000 parallel).

Variable Documentation

◆ AUTO_LIMIT_DIS

constexpr uint16_t tle92466ed::SETPOINT::AUTO_LIMIT_DIS = (1 << 15)
constexpr

Disable auto-limit.

◆ DEFAULT

constexpr uint16_t tle92466ed::SETPOINT::DEFAULT = 0x0000
constexpr

Default (0A)

◆ MAX_TARGET

constexpr uint16_t tle92466ed::SETPOINT::MAX_TARGET = 0x6000
constexpr

Maximum safe target value (datasheet saturates above 0x6000)

◆ TARGET_MASK

constexpr uint16_t tle92466ed::SETPOINT::TARGET_MASK = 0x7FFF
constexpr

Target current mask.