|
|
| UnitMLX90614 (const uint8_t addr=DEFAULT_ADDRESS) |
| |
|
virtual bool | begin () override |
| |
|
virtual void | update (const bool force=false) override |
| |
|
const mlx90614::EEPROM & | eeprom () const |
| | Gets the EEPROM structure.
|
| |
| bool | sleep () |
| | Sleep.
|
| |
| bool | wakeup () |
| | Wakeup.
|
| |
| bool | applySettings () |
| | Apply EEPROM settings.
|
| |
|
|
config_t | config () |
| | Gets the configuration.
|
| |
|
void | config (const config_t &cfg) |
| | Sets the configuration.
|
| |
|
|
float | ambientKelvin () const |
| | Oldest ambient kelvin.
|
| |
|
float | ambientTemperature () const |
| | Oldest ambient temperature (Celsius)
|
| |
|
float | ambientCelsius () const |
| | Oldest ambient temperature (Celsius)
|
| |
|
float | ambientFahrenheit () const |
| | Oldest ambient temperature (Fahrenheit)
|
| |
|
float | objectKelvin1 () const |
| | Oldest object 1 kelvin.
|
| |
|
float | objectTemperature1 () const |
| | Oldest object 1 temperature (Celsius)
|
| |
|
float | objectCelsius1 () const |
| | Oldest object 1 temperature (Celsius)
|
| |
|
float | objectFahrenheit1 () const |
| | Oldest object 1 temperature (Fahrenheit)
|
| |
|
float | objectKelvin2 () const |
| | Oldest object 2 kelvin.
|
| |
|
float | objectTemperature2 () const |
| | Oldest object 2 temperature (Celsius)
|
| |
|
float | objectCelsius2 () const |
| | Oldest object 2 temperature (Celsius)
|
| |
|
float | objectFahrenheit2 () const |
| | Oldest object 2 temperature (Fahrenheit)
|
| |
|
| bool | startPeriodicMeasurement (const mlx90614::IIR iir, const mlx90614::FIR fir, const mlx90614::Gain gain, const mlx90614::IRSensor irs) |
| | Start periodic measurement.
|
| |
| bool | startPeriodicMeasurement () |
| | Start periodic measurement in the current settings.
|
| |
| bool | stopPeriodicMeasurement () |
| | Stop periodic measurement.
|
| |
|
- Note
- If apply is false, a POR or call applySettings() is required to enable the setting
- Warning
- Some settings are writable in SMBus mode, but not reflected in operation
-
When apply is true, the I2C bus is temporarily released and reinitializes (see applySettings())
|
| bool | readConfig (uint16_t &v) |
| | Read the configuration.
|
| |
| bool | writeConfig (const uint16_t v, const bool apply=true) |
| | Write the configuration.
|
| |
| bool | readOutput (mlx90614::Output &o) |
| | Read the Output.
|
| |
| bool | writeOutput (const mlx90614::Output o, const bool apply=true) |
| | Write the Output.
|
| |
| bool | readIIR (mlx90614::IIR &iir) |
| | Read the IIR.
|
| |
| bool | writeIIR (const mlx90614::IIR iir, const bool apply=true) |
| | Write the IIR.
|
| |
| bool | readFIR (mlx90614::FIR &fir) |
| | Read the FIR.
|
| |
| bool | writeFIR (const mlx90614::FIR fir, const bool apply=true) |
| | Write the FIR.
|
| |
| bool | readGain (mlx90614::Gain &gain) |
| | Read the Gain.
|
| |
| bool | writeGain (const mlx90614::Gain gain, const bool apply=true) |
| | Write the Gain.
|
| |
| bool | readIRSensor (mlx90614::IRSensor &irs) |
| | Read the IRSensor mode.
|
| |
| bool | writeIRSensor (const mlx90614::IRSensor irs, const bool apply=true) |
| | Write the IRSensor mode.
|
| |
| bool | readPositiveKs (bool &pos) |
| | Read the sign of Ks (Config Register1 bit7)
|
| |
| bool | writePositiveKs (const bool pos, const bool apply=true) |
| | Write the sign of Ks (Config Register1 bit7)
|
| |
| bool | readPositiveKt2 (bool &pos) |
| | Read the sign of Kt2 (Config Register1 bit14)
|
| |
| bool | writePositiveKt2 (const bool pos, const bool apply=true) |
| | Write the sign of Kt2 (Config Register1 bit14)
|
| |
| bool | readPositiveKf2 (bool &pos) |
| |
| bool | writePositiveKf2 (const bool pos, const bool apply=true) |
| |
|
- Note
- If apply is false, a POR or call applySettings() is required to enable the setting
- Warning
- Some settings are writable in SMBus mode, but not reflected in operation
-
When apply is true, the I2C bus is temporarily released and reinitializes (see applySettings())
|
| bool | readObjectMinMax (uint16_t &toMin, uint16_t &toMax) |
| | Read the minimum and maximum temperatures of the measurement for the object.
|
| |
| bool | readObjectMinMax (float &toMin, float &toMax) |
| | Read the minimum and maximum temperatures of the measurement for the object.
|
| |
| template<typename T , typename std::enable_if< std::is_integral< T >::value, std::nullptr_t >::type = nullptr> |
| bool | writeObjectMinMax (const T toMin, const T toMax, const bool apply=true) |
| | Write the minimum and maximum temperatures of the measurement for the object.
|
| |
| bool | writeObjectMinMax (const float toMin, const float toMax, const bool apply=true) |
| | Write the minimum and maximum temperatures of the measurement for the object.
|
| |
| bool | readAmbientMinMax (uint8_t &taMin, uint8_t &taMax) |
| | Read the minimum and maximum temperatures of the measurement for the ambient.
|
| |
| bool | readAmbientMinMax (float &taMin, float &taMax) |
| | Read the minimum and maximum temperatures of the measurement for the ambient.
|
| |
| template<typename T , typename std::enable_if< std::is_integral< T >::value, std::nullptr_t >::type = nullptr> |
| bool | writeAmbientMinMax (const T taMin, const T taMax, const bool apply=true) |
| | Write the minimum and maximum temperatures of the measurement for the ambient.
|
| |
| bool | writeAmbientMinMax (const float taMin, const float taMax, const bool apply=true) |
| | Write the minimum and maximum temperatures of the measurement for the ambient.
|
| |
|
- Note
- If apply is false, a POR or call applySettings() is required to enable the setting
- Warning
- When apply is true, the I2C bus is temporarily released and reinitializes (see applySettings())
|
| bool | readEmissivity (uint16_t &emiss) |
| | Read the emissivity.
|
| |
| bool | readEmissivity (float &emiss) |
| | Read the emissivity.
|
| |
| template<typename T , typename std::enable_if< std::is_integral< T >::value, std::nullptr_t >::type = nullptr> |
| bool | writeEmissivity (const T emiss, const bool apply=true) |
| | Write the emissivity.
|
| |
| bool | writeEmissivity (const float emiss, const bool apply=true) |
| | Write the emissivity.
|
| |
|
| bool | changeI2CAddress (const uint8_t i2c_address) |
| | Change device I2C address.
|
| |
| bool | readI2CAddress (uint8_t &i2c_address) |
| | Read device I2C address.
|
| |
|
|
bool | read_eeprom (mlx90614::EEPROM &e) |
| |
|
bool | read_register16 (const uint8_t reg, uint16_t &v, const bool stopbit=false) |
| |
|
bool | write_register16 (const uint8_t reg, const uint16_t val) |
| |
|
bool | write_eeprom (const uint8_t reg, const uint16_t val, const bool apply=true) |
| |
|
bool | write_object_minmax (const uint16_t toMin, const uint16_t toMax, const bool apply=true) |
| |
|
bool | write_ambient_minmax (const uint8_t taMin, const uint8_t taMax, const bool apply=true) |
| |
|
bool | write_emissivity (const uint16_t emiss, const bool apply=true) |
| |
|
bool | read_measurement (mlx90614::Data &d) |
| |
|
bool | start_periodic_measurement (const mlx90614::IIR iir, const mlx90614::FIR fir, const mlx90614::Gain gain, const mlx90614::IRSensor irs) |
| |
|
bool | start_periodic_measurement () |
| |
|
bool | stop_periodic_measurement () |
| |
|
| M5_UNIT_COMPONENT_PERIODIC_MEASUREMENT_ADAPTER_HPP_BUILDER (UnitMLX90614, mlx90614::Data) |
| |
|
virtual uint32_t | get_interval (const mlx90614::IIR iir, const mlx90614::FIR fir) |
| |
|
virtual bool | has_dual_sensors () const |
| |
Base class of the UnitMLX90614 series.
It can be used to measure the surface temperature of a human body or other object. Only SMBus mode is supported, so the settings that only affect the PWM output (writeOutput(), writeObjectMinMax(), writeAmbientMinMax() and the PWMCTRL register) do not change the SMBus readings
- Todo
- In the future, PWM mode will be supported to allow various configurations