Changes
This commit is contained in:
@@ -23,6 +23,33 @@ uint16_t get_word(uint8_t address, uint8_t reg) {
|
||||
return (data[1] << 8) | data[0];
|
||||
}
|
||||
|
||||
char* INA233::print_device_number() {
|
||||
char data[6];
|
||||
int16_t rawVoltage;
|
||||
|
||||
// Request data from the PMBus device
|
||||
Wire.beginTransmission(INA233::_address);
|
||||
Wire.write(0x9A);
|
||||
Wire.endTransmission();
|
||||
Wire.requestFrom(INA233::_address, 6);
|
||||
|
||||
if (Wire.available() == 6) {
|
||||
data[0] = Wire.read();
|
||||
data[1] = Wire.read();
|
||||
data[2] = Wire.read();
|
||||
data[3] = Wire.read();
|
||||
data[4] = Wire.read();
|
||||
data[5] = Wire.read();
|
||||
} else {
|
||||
// return 0 on error
|
||||
data[0] = '\0';
|
||||
return data;
|
||||
}
|
||||
|
||||
// Combine the two bytes into a single 16-bit value
|
||||
return data;
|
||||
}
|
||||
|
||||
|
||||
void sendWord(uint8_t deviceAddress, uint8_t registerAddress, uint16_t value) {
|
||||
Wire.beginTransmission(deviceAddress);
|
||||
|
||||
@@ -32,20 +32,21 @@ enum ConversionTime {
|
||||
|
||||
class INA233{
|
||||
public:
|
||||
INA233(uint8_t addr, TwoWire *wire = &Wire);
|
||||
bool begin(const uint8_t sda, const uint8_t scl);
|
||||
char* print_device_number();
|
||||
INA233(uint8_t addr, TwoWire* wire = &Wire);
|
||||
bool begin(const uint8_t sda, const uint8_t scl);
|
||||
|
||||
float getBusVoltage(void);
|
||||
float getShuntVoltage_mV(void);
|
||||
float getShuntVoltage(void);
|
||||
float getBusVoltage(void);
|
||||
float getShuntVoltage_mV(void);
|
||||
float getShuntVoltage(void);
|
||||
|
||||
void setAveragingMode(AveragingMode);
|
||||
void setBusVoltageConversionTime(ConversionTime);
|
||||
void setShuntVoltageConversionTime(ConversionTime);
|
||||
|
||||
uint16_t getConfigRegister();
|
||||
void setAveragingMode(AveragingMode);
|
||||
void setBusVoltageConversionTime(ConversionTime);
|
||||
void setShuntVoltageConversionTime(ConversionTime);
|
||||
|
||||
bool isConnected(void);
|
||||
uint16_t getConfigRegister();
|
||||
|
||||
bool isConnected(void);
|
||||
|
||||
private:
|
||||
float _current_LSB;
|
||||
|
||||
@@ -40,6 +40,9 @@ void read_sensor_task(void* parameter)
|
||||
while (true) {
|
||||
// Get Values from sensor
|
||||
|
||||
char* chip_id = ina_sensor.print_device_number(0x40);
|
||||
logger.log(MYLOG, ERROR, "Chip Model: %s", chip_id);
|
||||
|
||||
float bus_voltage = ina_sensor.getBusVoltage();
|
||||
float shunt_voltage = ina_sensor.getShuntVoltage_mV() - zero_value;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user