Linduino  1.3.0
Linear Technology Arduino-Compatible Demonstration Board
LT_PMBusRail Class Reference

PMBusRail communication. For Multiphase Rails. More...

Detailed Description

PMBusRail communication. For Multiphase Rails.

Definition at line 72 of file LT_PMBusRail.h.

Public Member Functions

 LT_PMBusRail (LT_PMBus *pmbus, uint8_t railAddress, tRailDef **railDef)
 Construct a LT_PMBus. More...
 
 ~LT_PMBusRail ()
 
void changePMBus (LT_PMBus *pmbus)
 Change the pmbus. More...
 
uint8_t getAddress ()
 Get ther rail address. More...
 
bool isController ()
 Ask if devices is a PSM controller. More...
 
uint8_t getNoPages ()
 Get the number of pages in the rail. More...
 
bool isMultiphase ()
 Ask if the rail is multiphase. More...
 
uint32_t getCapabilities ()
 Get a list of capabilities. More...
 
uint32_t hasCapability (uint32_t capability)
 Ask if the rail has the given capability. More...
 
void merge (LT_PMBusRail *rail)
 Merge a rail into this one. No delete of incomming rail. More...
 
void setVout (float voltage)
 Set the output voltage of a polyphase rail. More...
 
float readVin (bool polling)
 Read the input voltage of a polyphase rail. More...
 
float readVout (bool polling)
 Read the output voltage of a polyphase rail. More...
 
float readIin (bool polling)
 Read the input current of a polyphase rail. More...
 
float readIout (bool polling)
 Read the output current of a polyphase rail. More...
 
float readPin (bool polling)
 Read the input power of a polyphase rail. More...
 
float readPout (bool polling)
 Read the output power of a polyphase rail. More...
 
float readExternalTemperature (bool polling)
 Read the external temperature of a polyphase rail. More...
 
float readInternalTemperature (bool polling)
 Read the internal temperature of a polyphase rail. More...
 
float readEfficiency (bool polling)
 Read the efficiency (calculated) More...
 
float readDutyCycle (bool polling)
 Read the average duty cycle. More...
 
float readPhaseBalance (bool polling)
 Read the phase balance (calculated) More...
 
float readTransient (bool polling)
 Read the transient. More...
 
uint16_t readStatusWord ()
 Read the status word of a polyphase rail. More...
 
uint16_t readMfrSpecialId ()
 Read the special of a polyphase rail. More...
 
void clearFaults ()
 Clear faults of polyphase rail. More...
 
void sequenceOn ()
 Sequence on a polyphase rail. More...
 
void immediateOff ()
 Turn off a polyphase rail. More...
 
void sequenceOff ()
 Sequence off a polyphase rail. More...
 
void marginHigh ()
 Margin high polyphase rail. More...
 
void marginLow ()
 Margin low polyphase rail. More...
 
void marginOff ()
 Margin off polyphase rail. More...
 

Protected Attributes

tRailDef ** railDef_
 

Member Function Documentation

◆ changePMBus()

void LT_PMBusRail::changePMBus ( LT_PMBus pmbus)

Change the pmbus.

Definition at line 93 of file LT_PMBusRail.cpp.

◆ clearFaults()

void LT_PMBusRail::clearFaults ( )

Clear faults of polyphase rail.

Returns
void

Definition at line 598 of file LT_PMBusRail.cpp.

◆ getAddress()

uint8_t LT_PMBusRail::getAddress ( )

Get ther rail address.

Definition at line 98 of file LT_PMBusRail.cpp.

◆ getCapabilities()

uint32_t LT_PMBusRail::getCapabilities ( )

Get a list of capabilities.

Definition at line 127 of file LT_PMBusRail.cpp.

◆ getNoPages()

uint8_t LT_PMBusRail::getNoPages ( )

Get the number of pages in the rail.

Definition at line 109 of file LT_PMBusRail.cpp.

◆ hasCapability()

uint32_t LT_PMBusRail::hasCapability ( uint32_t  capability)

Ask if the rail has the given capability.

Definition at line 132 of file LT_PMBusRail.cpp.

◆ immediateOff()

void LT_PMBusRail::immediateOff ( )

Turn off a polyphase rail.

Returns
void

Definition at line 624 of file LT_PMBusRail.cpp.

◆ isController()

bool LT_PMBusRail::isController ( )

Ask if devices is a PSM controller.

Definition at line 103 of file LT_PMBusRail.cpp.

◆ isMultiphase()

bool LT_PMBusRail::isMultiphase ( )

Ask if the rail is multiphase.

Definition at line 122 of file LT_PMBusRail.cpp.

◆ marginHigh()

void LT_PMBusRail::marginHigh ( )

Margin high polyphase rail.

Returns
void

Definition at line 641 of file LT_PMBusRail.cpp.

◆ marginLow()

void LT_PMBusRail::marginLow ( )

Margin low polyphase rail.

Returns
void

Definition at line 650 of file LT_PMBusRail.cpp.

◆ marginOff()

void LT_PMBusRail::marginOff ( )

Margin off polyphase rail.

Returns
void

Definition at line 659 of file LT_PMBusRail.cpp.

◆ merge()

void LT_PMBusRail::merge ( LT_PMBusRail rail)

Merge a rail into this one. No delete of incomming rail.

Parameters
railRail to merge

Definition at line 71 of file LT_PMBusRail.cpp.

◆ readDutyCycle()

float LT_PMBusRail::readDutyCycle ( bool  polling)

Read the average duty cycle.

Returns
duty cycle or zero if not supported
Parameters
pollingtrue for polling

Definition at line 385 of file LT_PMBusRail.cpp.

◆ readEfficiency()

float LT_PMBusRail::readEfficiency ( bool  polling)

Read the efficiency (calculated)

Returns
efficiency or zero if not supported
Parameters
pollingtrue for polling

Definition at line 338 of file LT_PMBusRail.cpp.

◆ readExternalTemperature()

float LT_PMBusRail::readExternalTemperature ( bool  polling)

Read the external temperature of a polyphase rail.

Returns
current
Parameters
pollingtrue for polling

Definition at line 279 of file LT_PMBusRail.cpp.

◆ readIin()

float LT_PMBusRail::readIin ( bool  polling)

Read the input current of a polyphase rail.

Returns
current
Parameters
pollingtrue for polling

Definition at line 181 of file LT_PMBusRail.cpp.

◆ readInternalTemperature()

float LT_PMBusRail::readInternalTemperature ( bool  polling)

Read the internal temperature of a polyphase rail.

Returns
current
Parameters
pollingtrue for polling

Definition at line 306 of file LT_PMBusRail.cpp.

◆ readIout()

float LT_PMBusRail::readIout ( bool  polling)

Read the output current of a polyphase rail.

Returns
current
Parameters
pollingtrue for polling

Definition at line 207 of file LT_PMBusRail.cpp.

◆ readMfrSpecialId()

uint16_t LT_PMBusRail::readMfrSpecialId ( )

Read the special of a polyphase rail.

Returns
word

Definition at line 575 of file LT_PMBusRail.cpp.

◆ readPhaseBalance()

float LT_PMBusRail::readPhaseBalance ( bool  polling)

Read the phase balance (calculated)

Returns
phase balance as 100 * (max-min)/total current
Parameters
pollingtrue for polling

Definition at line 410 of file LT_PMBusRail.cpp.

◆ readPin()

float LT_PMBusRail::readPin ( bool  polling)

Read the input power of a polyphase rail.

Returns
current
Parameters
pollingtrue for polling

Definition at line 232 of file LT_PMBusRail.cpp.

◆ readPout()

float LT_PMBusRail::readPout ( bool  polling)

Read the output power of a polyphase rail.

Returns
current
Parameters
pollingtrue for polling

Definition at line 254 of file LT_PMBusRail.cpp.

◆ readStatusWord()

uint16_t LT_PMBusRail::readStatusWord ( )

Read the status word of a polyphase rail.

Returns
word

Definition at line 550 of file LT_PMBusRail.cpp.

◆ readTransient()

float LT_PMBusRail::readTransient ( bool  polling)

Read the transient.

Returns
a value in ms.
Parameters
pollingtrue for polling

Definition at line 440 of file LT_PMBusRail.cpp.

◆ readVin()

float LT_PMBusRail::readVin ( bool  polling)

Read the input voltage of a polyphase rail.

Returns
voltage
Parameters
pollingtrue for polling

Definition at line 154 of file LT_PMBusRail.cpp.

◆ readVout()

float LT_PMBusRail::readVout ( bool  polling)

Read the output voltage of a polyphase rail.

Returns
voltage
Parameters
pollingtrue for polling

Definition at line 167 of file LT_PMBusRail.cpp.

◆ sequenceOff()

void LT_PMBusRail::sequenceOff ( )

Sequence off a polyphase rail.

Returns
void

Definition at line 633 of file LT_PMBusRail.cpp.

◆ sequenceOn()

void LT_PMBusRail::sequenceOn ( )

Sequence on a polyphase rail.

Returns
void

Definition at line 616 of file LT_PMBusRail.cpp.

◆ setVout()

void LT_PMBusRail::setVout ( float  voltage)

Set the output voltage of a polyphase rail.

Returns
void
Parameters
voltageRail voltage

Definition at line 142 of file LT_PMBusRail.cpp.

Constructor & Destructor Documentation

◆ LT_PMBusRail()

LT_PMBusRail::LT_PMBusRail ( LT_PMBus pmbus,
uint8_t  railAddress,
tRailDef **  railDef 
)

Construct a LT_PMBus.

A list of addresses with pages that make up the rail. NULL terminated.

Parameters
pmbusSMBus for communication. Use the PEC or non-PEC version.
railAddressThe rail address.

Definition at line 64 of file LT_PMBusRail.cpp.

◆ ~LT_PMBusRail()

LT_PMBusRail::~LT_PMBusRail ( )

Definition at line 81 of file LT_PMBusRail.cpp.

Field Documentation

◆ railDef_

tRailDef** LT_PMBusRail::railDef_
protected

Definition at line 81 of file LT_PMBusRail.h.


The documentation for this class was generated from the following files: