| Linduino 1.3.0 Linear Technology Arduino-Compatible Demonstration Board

Public Member Functions | Protected Attributes
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

  rail | Rail 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  polling | true 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

  voltage | Rail 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

  pmbus | SMBus for communication. Use the PEC or non-PEC version.
  railAddress | The 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:

- LT_PMBusRail.h
- LT_PMBusRail.cpp