Forked Changes to Pressure sensor
Dependents: WiFiDipCortexSensor
Fork of MPL3115A2 by
Diff: Temperature.h
- Revision:
- 3:7c7c1ea6fc33
- Parent:
- 0:beb43bc3d6d4
- Child:
- 5:1c3bf7d001a3
--- a/Temperature.h Wed Apr 02 12:22:45 2014 +0000 +++ b/Temperature.h Wed Apr 02 12:59:44 2014 +0000 @@ -14,11 +14,17 @@ #include "mbed.h" +//! Temperature provides a wrapper around temperature data coming from the sensor. The class handles +//! working with compressed data from the sensor and provides convenient functions for retreiving +//! the data in various units (with room to add more if needed). class Temperature { public: + //! The size of the compressed data buffer from the sensor. Used in an I2C read. static const int size = 2; + + //! The units we support converting the sensor data to. enum unitsType { CELSIUS, FAHRENHEIT, KELVIN }; Temperature(); @@ -26,15 +32,19 @@ Temperature(const char* compressed); Temperature(const char msb, const char lsb); + //! Allows using the object directly in an I2C read operation. operator char*(void) { return _compressed; } + //! Same as calling temperature with FAHRENHEIT as the parameter. operator float(void) { return _temperature; } float temperature(unitsType units = FAHRENHEIT); + //! Call to decompress the sensor data after an I2C read. void setTemperature(); void setTemperature(const char* compressed); void setTemperature(const char msb, const char lsb); void setTemperature(float a, unitsType units = FAHRENHEIT); + //! Returns the temperature as a string in the units specified, defaulting to FAHRENHEIT if none specified. const char* print(unitsType units = FAHRENHEIT); private: