OpenCode I2C interface to a ipbus node.
More...
#include <I2CMasterNode.hpp>
OpenCode I2C interface to a ipbus node.
- Author
- Kristian Harder, Alessandro Thea
- Date
- August 2013
The class is non-copyable on purpose as the inheriting object must properly set the node pointer in the copy i2c access through an IPbus interface
◆ I2CBaseNode()
I2CBaseNode |
( |
const uhal::Node& |
aNode | ) |
|
◆ ~I2CBaseNode()
◆ constructor()
◆ getI2CClockPrescale()
virtual uint8_t getI2CClockPrescale |
( |
| ) |
const |
|
inlinevirtual |
◆ getSlaveAddress()
uint8_t getSlaveAddress |
( |
const std::string& |
name | ) |
const |
|
virtual |
◆ getSlaves()
std::vector<std::string> getSlaves |
( |
| ) |
const |
|
virtual |
◆ readBlockI2C()
std::vector<uint8_t> readBlockI2C |
( |
uint8_t |
aSlaveAddress, |
|
|
uint32_t |
numBytes |
|
) |
| const |
|
protectedvirtual |
◆ readI2C()
uint8_t readI2C |
( |
uint8_t |
aSlaveAddress, |
|
|
uint32_t |
i2cAddress |
|
) |
| const |
|
virtual |
◆ reset()
◆ UHAL_DERIVEDNODE()
◆ waitUntilFinished()
void waitUntilFinished |
( |
bool |
requireAcknowledgement = true , |
|
|
bool |
requireBusIdleAtEnd = false |
|
) |
| const |
|
private |
◆ writeBlockI2C()
void writeBlockI2C |
( |
uint8_t |
aSlaveAddress, |
|
|
const std::vector<uint8_t>& |
data |
|
) |
| const |
|
protectedvirtual |
◆ writeI2C()
void writeI2C |
( |
uint8_t |
aSlaveAddress, |
|
|
uint32_t |
i2cAddress, |
|
|
uint32_t |
data |
|
) |
| const |
|
virtual |
◆ I2CSlave
◆ mClockPrescale
◆ mCmd
const std::string mCmd = "cmd_stat" |
|
staticprivate |
◆ mCtrl
const std::string mCtrl = "ctrl" |
|
staticprivate |
◆ mPreHi
const std::string mPreHi = "ps_hi" |
|
staticprivate |
IPBus register names for i2c bus.
◆ mPreLo
const std::string mPreLo = "ps_lo" |
|
staticprivate |
◆ mRx
const std::string mRx = "data" |
|
staticprivate |
◆ mSlavesAddresses
boost::unordered_map<std::string,uint8_t> mSlavesAddresses |
|
protected |
◆ mStatus
const std::string mStatus = "cmd_stat" |
|
staticprivate |
◆ mTx
const std::string mTx = "data" |
|
staticprivate |
The documentation for this class was generated from the following files: