![cppcheck](https://github.com/endail/SI7021/actions/workflows/cppcheck.yml/badge.svg)
#include "SI7021.h"
#include <iostream>
int main() {
SI7021::SI7021 sensor;
//connect to and initialise the sensor
sensor.connect();
//obtain new temperature and humidity readings
sensor.refresh();
std::cout
<< "Temperature: "
<< sensor.getTemperature() << " C, "
<< "Humidity: "
<< sensor.getHumidity() << " %RH"
<< std::endl;
//prints eg.
//Temperature: 16.0205 C, Humidity: 62.8667 %RH
return 0;
}
-
SI7021( int dev, int addr )
. Constructor taking dev
identifying which I2C device to use (default is device 1), and addr
identifying which I2C
address to use (default is 0x40).
-
void connect( )
. Setup and connect to the device.
-
void disconnect( )
. Disconnect from the device.
-
void refresh( )
. Get a humidity and temperature sample from the sensor.
-
double getTemperature( )
. Returns the last read temperature in degrees celsius.
-
double getHumidity( )
. Returns the last read relative humidity as a percentage.
-
void reset( )
. Reset the device.
-
void resetSettings( )
. Reset UserRegister1 register (ie. measurement resolution and heater status) and HeaterControlRegister register (ie. heater power).
-
std::uint8_t getMeasurementResolution( )
. Returns the measurement resolution from the device, between 0 and 3.
-
void setMeasurementResolution( std::uint8_t res )
. Sets the measurement resolution, between 0 and 3.
-
VddStatus getVddStatus( )
. Returns VddStatus::OK
if voltage level is sufficient, otherwise VddStatus::LOW
.
-
HeaterStatus getHeaterStatus( )
. Returns HeaterStatus::ENABLED
if the heater is enabled, or HeaterStatus::DISABLED
if disabled.
-
void setHeaterStatus( HeaterStatus status )
. Enable or disable the heater.
-
std::uint8_t getHeaterPower( )
. Returns the heater power, between 0 and 15.
-
void setHeaterPower( std::uint8_t power )
. Set the heater power, between 0 and 15.
-
SerialNumber getSerialNumber( )
. Gets the serial number of the device. SerialNumber
is a typedef for a std::uint64_t
.
-
DeviceId getDeviceId( )
. Gets the device id.
identifier |
description |
devIdToString |
DeviceId::ENG_SAMPLE_1 |
engineering sample |
engineering sample |
DeviceId::ENG_SAMPLE_2 |
engineering sample |
engineering sample |
DeviceId::SI7013 |
SI7013 |
Si7013 |
DeviceId::SI7020 |
SI7020 |
Si7020 |
DeviceId::SI7021 |
SI7021 |
Si7021 |
DeviceId::UNKNOWN |
unknown device |
unknown |
FirmwareRevision getFirmwareRevision( )
. Gets the device firmware revision.
identifier |
description |
fwRevToString |
FirmwareRevision::REV_1_0 |
revision 1.0 |
1.0 |
FirmwareRevision::REV_2_0 |
revision 2.0 |
2.0 |
FirmwareRevision::UNKNOWN |
unknown firmware |
unknown |
-
const char* const devIdToString( DeviceId id )
. Returns a C string representing the device id.
-
const char* const fwRevToString( FirmwareRevision rev )
. Returns a C string representing the firmware revision.