Linduino  1.3.0
Linear Technology Arduino-Compatible Demonstration Board
LT_PMBusDevice Class Referenceabstract

Detailed Description

Definition at line 75 of file LT_PMBusDevice.h.

Inheritance diagram for LT_PMBusDevice:
LT_PMBusDeviceController LT_PMBusDeviceManager LT_PMBusDeviceLTC3880 LT_PMBusDeviceLTC3882 LT_PMBusDeviceLTC3883 LT_PMBusDeviceLTC3886 LT_PMBusDeviceLTC3887 LT_PMBusDeviceLTM4675 LT_PMBusDeviceLTM4676 LT_PMBusDeviceLTM4677 LT_PMBusDeviceLTC2974 LT_PMBusDeviceLTC2975 LT_PMBusDeviceLTC2977 LT_PMBusDeviceLTC2978 LT_PMBusDeviceLTC2980 LT_PMBusDeviceLTM2987

Public Member Functions

virtual ~LT_PMBusDevice ()
 
LT_PMBuspmbus ()
 
LT_SMBussmbus ()
 
void changePMBus (LT_PMBus *pmbus)
 Change the pmbus. More...
 
uint8_t getAddress ()
 Get the address. More...
 
virtual char * getType (void)
 
virtual uint8_t getNumPages (void)=0
 
void setPage (uint8_t page)
 
uint32_t getMaxSpeed (void)
 Get the maximum speed the device can communicate with. More...
 
virtual void setSpeed (uint32_t speed)
 Set the speed. If > 100000, enable clock stretching. More...
 
virtual uint32_t getCapabilities ()=0
 Get the supported capabilities. More...
 
virtual bool hasCapability (uint32_t capability)=0
 Is/are these capability(s) supported? More...
 
virtual LT_PMBusRail ** getRails ()=0
 Return a list of rails if any page is part of a rail. More...
 
virtual void enableFaultLog ()
 Enable the Fault Log. More...
 
virtual void disableFaultLog ()
 Disable the Fault Log. More...
 
virtual bool hasFaultLog ()
 Is there a fault log? More...
 
virtual char * getFaultLog ()
 Get the fault log text (call must free) More...
 
virtual void clearFaultLog ()
 Clear the Fault Log. More...
 
void setVout (float voltage)
 
float readVin (bool polling)
 
float readVout (bool polling)
 
float readIin (bool polling)
 
float readIout (bool polling)
 
float readPin (bool polling)
 
float readPout (bool polling)
 
float readExternalTemperature (bool polling)
 
float readInternalTemperature (bool polling)
 
float readDutyCycle (bool polling)
 
uint16_t readStatusWord ()
 
uint16_t readMfrSpecialId ()
 
void clearFaults ()
 
void marginHigh ()
 
void marginLow ()
 
void marginOff ()
 

Protected Member Functions

 LT_PMBusDevice (LT_PMBus *pmbus, uint8_t address)
 
void probeSpeed ()
 

Protected Attributes

LT_PMBuspmbus_
 
uint8_t address_
 
uint32_t maxSpeed_
 
uint8_t model_ [9]
 

Member Function Documentation

◆ changePMBus()

void LT_PMBusDevice::changePMBus ( LT_PMBus pmbus)

Change the pmbus.

Definition at line 80 of file LT_PMBusDevice.cpp.

◆ clearFaultLog()

◆ clearFaults()

void LT_PMBusDevice::clearFaults ( )

Definition at line 253 of file LT_PMBusDevice.cpp.

◆ disableFaultLog()

◆ enableFaultLog()

◆ getAddress()

uint8_t LT_PMBusDevice::getAddress ( )

Get the address.

Returns
address

Definition at line 87 of file LT_PMBusDevice.cpp.

◆ getCapabilities()

◆ getFaultLog()

char * LT_PMBusDevice::getFaultLog ( )
virtual

◆ getMaxSpeed()

uint32_t LT_PMBusDevice::getMaxSpeed ( void  )

Get the maximum speed the device can communicate with.

Returns
speed

Definition at line 104 of file LT_PMBusDevice.cpp.

◆ getNumPages()

◆ getRails()

LT_PMBusRail ** LT_PMBusDevice::getRails ( )
pure virtual

Return a list of rails if any page is part of a rail.

Returns
A rail, but partially built, and may need merging with other devices. Caller must free memory.

Implemented in LT_PMBusDeviceManager, and LT_PMBusDeviceController.

Definition at line 129 of file LT_PMBusDevice.cpp.

◆ getType()

char * LT_PMBusDevice::getType ( void  )
virtual

◆ hasCapability()

virtual bool LT_PMBusDevice::hasCapability ( uint32_t  capability)
pure virtual

◆ hasFaultLog()

◆ marginHigh()

void LT_PMBusDevice::marginHigh ( )

Definition at line 258 of file LT_PMBusDevice.cpp.

◆ marginLow()

void LT_PMBusDevice::marginLow ( )

Definition at line 263 of file LT_PMBusDevice.cpp.

◆ marginOff()

void LT_PMBusDevice::marginOff ( )

Definition at line 268 of file LT_PMBusDevice.cpp.

◆ pmbus()

LT_PMBus * LT_PMBusDevice::pmbus ( )

Definition at line 70 of file LT_PMBusDevice.cpp.

◆ probeSpeed()

void LT_PMBusDevice::probeSpeed ( )
protected

Definition at line 57 of file LT_PMBusDevice.cpp.

◆ readDutyCycle()

float LT_PMBusDevice::readDutyCycle ( bool  polling)

Definition at line 224 of file LT_PMBusDevice.cpp.

◆ readExternalTemperature()

float LT_PMBusDevice::readExternalTemperature ( bool  polling)

Definition at line 204 of file LT_PMBusDevice.cpp.

◆ readIin()

float LT_PMBusDevice::readIin ( bool  polling)

Definition at line 164 of file LT_PMBusDevice.cpp.

◆ readInternalTemperature()

float LT_PMBusDevice::readInternalTemperature ( bool  polling)

Definition at line 214 of file LT_PMBusDevice.cpp.

◆ readIout()

float LT_PMBusDevice::readIout ( bool  polling)

Definition at line 174 of file LT_PMBusDevice.cpp.

◆ readMfrSpecialId()

uint16_t LT_PMBusDevice::readMfrSpecialId ( )

Definition at line 244 of file LT_PMBusDevice.cpp.

◆ readPin()

float LT_PMBusDevice::readPin ( bool  polling)

Definition at line 184 of file LT_PMBusDevice.cpp.

◆ readPout()

float LT_PMBusDevice::readPout ( bool  polling)

Definition at line 194 of file LT_PMBusDevice.cpp.

◆ readStatusWord()

uint16_t LT_PMBusDevice::readStatusWord ( )

Definition at line 234 of file LT_PMBusDevice.cpp.

◆ readVin()

float LT_PMBusDevice::readVin ( bool  polling)

Definition at line 150 of file LT_PMBusDevice.cpp.

◆ readVout()

float LT_PMBusDevice::readVout ( bool  polling)

Definition at line 157 of file LT_PMBusDevice.cpp.

◆ setPage()

void LT_PMBusDevice::setPage ( uint8_t  page)

Definition at line 99 of file LT_PMBusDevice.cpp.

◆ setSpeed()

void LT_PMBusDevice::setSpeed ( uint32_t  speed)
virtual

Set the speed. If > 100000, enable clock stretching.

Speed

Parameters
speedSpeed

Reimplemented in LT_PMBusDeviceManager.

Definition at line 109 of file LT_PMBusDevice.cpp.

◆ setVout()

void LT_PMBusDevice::setVout ( float  voltage)

Definition at line 144 of file LT_PMBusDevice.cpp.

◆ smbus()

LT_SMBus * LT_PMBusDevice::smbus ( )

Definition at line 74 of file LT_PMBusDevice.cpp.

Constructor & Destructor Documentation

◆ LT_PMBusDevice()

LT_PMBusDevice::LT_PMBusDevice ( LT_PMBus pmbus,
uint8_t  address 
)
protected

Definition at line 83 of file LT_PMBusDevice.h.

◆ ~LT_PMBusDevice()

virtual LT_PMBusDevice::~LT_PMBusDevice ( )
virtual

Definition at line 93 of file LT_PMBusDevice.h.

Field Documentation

◆ address_

uint8_t LT_PMBusDevice::address_
protected

Definition at line 79 of file LT_PMBusDevice.h.

◆ maxSpeed_

uint32_t LT_PMBusDevice::maxSpeed_
protected

Definition at line 80 of file LT_PMBusDevice.h.

◆ model_

uint8_t LT_PMBusDevice::model_[9]
protected

Definition at line 81 of file LT_PMBusDevice.h.

◆ pmbus_

LT_PMBus* LT_PMBusDevice::pmbus_
protected

Definition at line 78 of file LT_PMBusDevice.h.


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