Diff: TMP006.h
- Revision:
- 3:f632c66b30df
- Parent:
- 1:e8e0ef45b115
- Child:
- 4:56398c14bf1f
--- a/TMP006.h Mon Dec 10 14:51:03 2018 +0000 +++ b/TMP006.h Mon Dec 10 16:29:14 2018 +0000 @@ -150,16 +150,16 @@ * @brief CONSTANS TO BE USED IN THE FORMULAS * NOTE: User Guide ( sbou107.pdf ) 5.1 Equations for Calculating Target Object Temperatures, p10. */ -#define A1 0.00175 /*!< A1 */ -#define A2 -0.00001678 /*!< A2 */ -#define T_REF 298.15 /*!< T_REF, Kelvin */ -#define B0 -0.0000294 /*!< B0 */ -#define B1 -0.00000057 /*!< B1 */ -#define B2 -0.00000000463 /*!< B2 */ -#define C2 13.4 /*!< C2 */ -#define S0 ( 0.00000000000005 + 0.00000000000007 ) / 2.0 /*!< Primary calibration sensitivity factor ( mean of typical values ) */ -#define TEMP_1LSB 0.03125 /*!< Temperature: 1 LSB = 1 / 32°C = 0.03125 */ - +#define A1 0.00175 /*!< A1 */ +#define A2 -0.00001678 /*!< A2 */ +#define T_REF 298.15 /*!< T_REF, Kelvin */ +#define B0 -0.0000294 /*!< B0 */ +#define B1 -0.00000057 /*!< B1 */ +#define B2 -0.00000000463 /*!< B2 */ +#define C2 13.4 /*!< C2 */ +#define S0 ( ( 0.00000000000005 + 0.00000000000007 ) / 2.0 ) /*!< Primary calibration sensitivity factor ( mean of typical values ) */ +#define TEMP_1LSB 0.03125 /*!< Temperature: 1 LSB = 1 / 32°C = 0.03125 */ +#define SVOL_1LSB 156.25 /*!< Sensor voltage: 1 LSB = 156.25 nV */ #ifndef TMP006_VECTOR_STRUCT_H @@ -169,16 +169,17 @@ float ObjectTemperatureC; /*!< Temperature of the target object in Celsius degrees */ float ObjectTemperatureK; /*!< Temperature of the target object in Kelvins degrees */ - float TemperatureK; /*!< T_DIE in Kelvins degrees */ - float TemperatureC; /*!< T_DIE in Celsius degrees */ - float s0; /*!< Primary calibration sensitivity factor ( typical values: 5×10^–14 and 7×10^–14 ) */ + float TemperatureK; /*!< T_DIE in Kelvins degrees */ + float TemperatureC; /*!< T_DIE in Celsius degrees */ + float V_Sensor; /*!< Sensor voltage result */ + float s0; /*!< Primary calibration sensitivity factor ( typical values: 5×10^–14 and 7×10^–14 ) */ - uint16_t SensorVoltageResultRegister; /*!< V_sensor */ - uint16_t TemperatureRegister; /*!< T_DIE */ - uint16_t ConfigurationRegister; /*!< Configuration register */ + uint16_t SensorVoltageResultRegister; /*!< V_sensor */ + uint16_t TemperatureRegister; /*!< T_DIE */ + uint16_t ConfigurationRegister; /*!< Configuration register */ - uint16_t ManufacturerID; /*!< Manufacturer ID */ - uint16_t DeviceID; /*!< Device ID */ + uint16_t ManufacturerID; /*!< Manufacturer ID */ + uint16_t DeviceID; /*!< Device ID */ } TMP006_data_t; #endif @@ -248,6 +249,10 @@ */ TMP006_status_t TMP006_CalculateTemperature ( TMP006_data_t* myTemperature ); + /** It calculates the real sensor voltage ( V_SENSOR ) value. + */ + TMP006_status_t TMP006_CalculateSensorVoltage ( TMP006_data_t* myV_sensor ); + /** It calculates the object temperature ( T_OBJ ) value. */ TMP006_status_t TMP006_CalculateObjectTemperature( TMP006_data_t* myObjTemperature );