Maxim Integrated MAX30205 C, C++ source code driver software: MAX30205 is accurate to +-0.1°C over the range of 37.0°C to 39.0°C. One-shot, shutdown modes are available for reduced power usage. Thermostat thresholds allow for temperature hysteresis or for alarm settings. The MAX30205 is available in a compact 3x3 mm, 8-pin TDFN package. Operating supply voltage range is 2.7V to 3.3V. Typical applications are for clinical digital thermometers, thermostats with hysteresis, and temperature alarms.
Dependents: MAX30205_Human_Body_Temperature_Sensor
Diff: max30205_cpp.h
- Revision:
- 10:9c5dc1393570
- Parent:
- 9:d98e4a80a866
--- a/max30205_cpp.h Mon Apr 15 21:18:33 2019 +0000 +++ b/max30205_cpp.h Wed Apr 17 21:13:54 2019 +0000 @@ -41,36 +41,53 @@ * @brief Digital thermometer, thermostat, temperature sensor. * @version 1.0001.0000 * - * @details The MAX30205, MAX31726 temperature sensors - * provides accurate temperature measurements. - * Extended format allows for high temperature readings up to 150°C. + * @details The MAX30205 temperature sensors + * provides accurate temperature measurements of +-0.1°C + * over the range of 37°C to 39°C (98.6°F to 102.2°F) * The MAX30205 can operate in a low powered mode by utilizing * the shutdown and one-shot mode. * 8-pin TQDFN 3x3 mm package - * Accuracy is +-0.5°C from -40°C to +105°C (-40°F to +221°). - * Operating temperature: -55°C to +150°C (-67°F to +302°). - * VDD: 2.5V to 3.7V. + * Operating temperature: 0°C to 50°C (+32°F to +122°). + * VDD: 2.7V to 3.7V. * * @code * #include "mbed.h" * #include "max32630fthr.h" * #include "max30205.h" + * #include "max30205_cpp.h" + * #include "max30205_c.h" * #include "USBSerial.h" + * Serial pc(USBTX, USBRX); // Use USB debug probe for serial link + * Serial uart(P2_1, P2_0); + * void wait_sec_prompt(uint8_t time) + * { + * // Ports and serial connections + * uint32_t i; + * for (i = 0; i < time; i++) { + * pc.printf("."); + * wait(1); + * } + * pc.printf("\r\n"); + * } * MAX32630FTHR pegasus(MAX32630FTHR::VIO_3V3); - * I2C i2cBus(P3_4, P3_5); + * DigitalOut rLED(LED1); + * DigitalOut gLED(LED2); + * DigitalOut bLED(LED3); + * I2C i2cBus(P3_4, P3_5) * int main() * { + * uint8_t i2c_addr = MAX30205_I2C_SLAVE_ADR_00; * float temperature; * DigitalOut rLED(LED1, LED_OFF); * DigitalOut gLED(LED2, LED_OFF); * DigitalOut bLED(LED3, LED_OFF); * gLED = LED_ON; - * MAX30205 temp_sensor(i2cBus, MAX30205_I2C_SLAVE_ADR_00); + * MAX30205 temp_sensor(i2cBus, i2c_addr); * i2cBus.frequency(400000); - * temperature = - * temp_sensor.read_reg_as_temperature(MAX30205_REG_TEMPERATURE); - * printf("Temperature = %3.4f Celsius, %3.4f Fahrenheit\r\n", - * temperature, temp_sensor.celsius_to_fahrenheit(temperature)); + * temperature = + * temp_sensor.read_reg_as_temperature(MAX30205_REG_TEMPERATURE); + * pc.printf("Temperature = %3.4f Celsius, %3.4f Fahrenheit\r\n", + * temperature, temp_sensor.celsius_to_fahrenheit(temperature)); * } * @endcode */ @@ -182,4 +199,4 @@ }; -#endif/* DS1775_CPP_H */ \ No newline at end of file +#endif/* MAX30205_CPP */ \ No newline at end of file