C code and C++ library, driver software for the low-power small WLP package MAX31875 temperature sensor. Code supports one-shot, shut-down/standby, hysteresis, alarm limits.
Dependents: MAX31875_Temperature_Sensor_Small_WLP Click-Sensor-MAX31875 NuMaker-mbed-Sensor-MAX31875
Diff: max31875.h
- Revision:
- 4:a27a0ee318bd
- Parent:
- 3:3528e660168c
--- a/max31875.h Mon Feb 04 23:32:38 2019 +0000 +++ b/max31875.h Wed Feb 13 05:01:35 2019 +0000 @@ -39,11 +39,11 @@ #define MAX31875_NO_ERROR 0 #define MAX31875_ERROR -1 -#define MAX31875_REG_TEMPERATURE 0X00 -#define MAX31875_REG_CONFIGURATION 0X01 -#define MAX31875_REG_THYST 0X02 -#define MAX31875_REG_TOS 0X03 -#define MAX31875_REG_MAX 0X03 +#define MAX31875_REG_TEMPERATURE 0X00 +#define MAX31875_REG_CONFIGURATION 0X01 +#define MAX31875_REG_THYST_LOW_TRIP 0X02 +#define MAX31875_REG_TOS_HIGH_TRIP 0X03 +#define MAX31875_REG_MAX 0X03 #define MAX31875_CFG_ONE_SHOT_START (1) /* Start one-shot measurement */ @@ -51,7 +51,7 @@ #define MAX31875_CFG_CONV_RATE_1 (0x01 << 1) /* 1.0 conversions/sec */ #define MAX31875_CFG_CONV_RATE_4 (0x02 << 1) /* 4.0 conversions/sec */ #define MAX31875_CFG_CONV_RATE_8 (0x03 << 1) /* 8.0 conversions/sec */ -#define MAX31875_WAIT_CONV_RATE_0_25 (4.0) +#define MAX31875_WAIT_CONV_RATE_0_25 (4.002) #define MAX31875_WAIT_CONV_RATE_1 (1.0) #define MAX31875_WAIT_CONV_RATE_4 (0.25) #define MAX31875_WAIT_CONV_RATE_8 (0.125) @@ -99,9 +99,15 @@ uint8_t lsb; uint8_t msb; }; + struct { + uint16_t magnitude_bits:15; + uint16_t sign_bit:1; + }; uint16_t uwrd; int16_t swrd; }; +#define MAX31875_U16_MAX ((uint16_t)~0U) +#define MAX31875_S16_MAX ((int16_t)(MAX31875_U16_MAX>>1)) +#define MAX31875_S16_MIN ((int16_t)(-MAX31875_S16_MAX - 1)) - #endif/* MAX31875_H */ \ No newline at end of file