DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
timing
include
timing
LTC2945Node.hpp
Go to the documentation of this file.
1
10
11
#ifndef TIMING_INCLUDE_TIMING_LTC2945NODE_HPP_
12
#define TIMING_INCLUDE_TIMING_LTC2945NODE_HPP_
13
14
#include "
timing/I2CMasterNode.hpp
"
15
#include "
timing/I2CSlave.hpp
"
16
17
#include "
logging/Logging.hpp
"
// NOTE: if ISSUES ARE DECLARED BEFORE include logging/Logging.hpp, TLOG_DEBUG<<issue wont work.
18
19
#include <map>
20
#include <string>
21
#include <vector>
22
23
namespace
dunedaq
{
24
namespace
timing
{
25
26
class
LTC2945Node
:
public
I2CSlave
27
{
28
public
:
29
LTC2945Node
(
const
I2CMasterNode
* i2c_master, uint8_t i2c_device_address,
double
sense_resistance);
// NOLINT(build/unsigned)
30
virtual
~LTC2945Node
();
31
36
double
read_v_in
()
const
;
37
42
double
read_delta_sense_v
()
const
;
43
48
double
read_power
()
const
;
49
50
protected
:
51
double
m_sense_resistance
;
52
private
:
53
static
uint16_t
combine_adc_data
(uint8_t msb_byte, uint8_t lsb_byte);
54
static
uint32_t
combine_power_data
(uint8_t msb_byte_2, uint8_t msb_byte_1, uint8_t lsb_byte);
55
56
constexpr
static
float
v_in_resolution
= 0.025;
57
constexpr
static
float
delta_sense_v_resolution
= 0.000025;
58
};
59
60
}
// namespace timing
61
}
// namespace dunedaq
62
63
#endif
// TIMING_INCLUDE_TIMING_LTC2945NODE_HPP_
I2CMasterNode.hpp
I2CSlave.hpp
dunedaq::timing::I2CSlave::I2CMasterNode
friend class I2CMasterNode
Definition
I2CSlave.hpp:97
dunedaq::timing::I2CSlave::I2CSlave
I2CSlave(const I2CMasterNode *i2c_master, uint8_t i2c_device_address)
Definition
I2CSlave.cpp:33
dunedaq::timing::LTC2945Node::delta_sense_v_resolution
static constexpr float delta_sense_v_resolution
Definition
LTC2945Node.hpp:57
dunedaq::timing::LTC2945Node::combine_power_data
static uint32_t combine_power_data(uint8_t msb_byte_2, uint8_t msb_byte_1, uint8_t lsb_byte)
Definition
LTC2945Node.cpp:126
dunedaq::timing::LTC2945Node::LTC2945Node
LTC2945Node(const I2CMasterNode *i2c_master, uint8_t i2c_device_address, double sense_resistance)
Definition
LTC2945Node.cpp:23
dunedaq::timing::LTC2945Node::read_power
double read_power() const
Read power [W].
Definition
LTC2945Node.cpp:100
dunedaq::timing::LTC2945Node::read_v_in
double read_v_in() const
Read V in [V].
Definition
LTC2945Node.cpp:68
dunedaq::timing::LTC2945Node::~LTC2945Node
virtual ~LTC2945Node()
Definition
LTC2945Node.cpp:30
dunedaq::timing::LTC2945Node::combine_adc_data
static uint16_t combine_adc_data(uint8_t msb_byte, uint8_t lsb_byte)
Definition
LTC2945Node.cpp:116
dunedaq::timing::LTC2945Node::m_sense_resistance
double m_sense_resistance
Definition
LTC2945Node.hpp:51
dunedaq::timing::LTC2945Node::v_in_resolution
static constexpr float v_in_resolution
Definition
LTC2945Node.hpp:56
dunedaq::timing::LTC2945Node::read_delta_sense_v
double read_delta_sense_v() const
Read delta sense voltage [V].
Definition
LTC2945Node.cpp:84
Logging.hpp
dunedaq::timing
< Message parameters
Definition
BoreasDesign.hpp:29
dunedaq
Including Qt Headers.
Definition
module.cpp:16
Generated on
for DUNE-DAQ by
1.17.0