Low voltage digital temperature sensor

Dependencies:   X_NUCLEO_COMMON ST_INTERFACES

Dependents:   X_NUCLEO_IKS01A3 X_NUCLEO_IKS01A3 X_NUCLEO_IKS01A3

Revision:
1:5859badee052
Parent:
0:128dae13c732
diff -r 128dae13c732 -r 5859badee052 stts751_reg.h
--- a/stts751_reg.h	Wed Mar 06 10:18:41 2019 +0000
+++ b/stts751_reg.h	Wed Jul 24 14:20:10 2019 +0000
@@ -40,7 +40,7 @@
 #define STTS751_REGS_H
 
 #ifdef __cplusplus
-  extern "C" {
+extern "C" {
 #endif
 
 /* Includes ------------------------------------------------------------------*/
@@ -72,24 +72,24 @@
   *
   */
 
-typedef union{
-  int16_t i16bit[3];
-  uint8_t u8bit[6];
+typedef union {
+    int16_t i16bit[3];
+    uint8_t u8bit[6];
 } axis3bit16_t;
 
-typedef union{
-  int16_t i16bit;
-  uint8_t u8bit[2];
+typedef union {
+    int16_t i16bit;
+    uint8_t u8bit[2];
 } axis1bit16_t;
 
-typedef union{
-  int32_t i32bit[3];
-  uint8_t u8bit[12];
+typedef union {
+    int32_t i32bit[3];
+    uint8_t u8bit[12];
 } axis3bit32_t;
 
-typedef union{
-  int32_t i32bit;
-  uint8_t u8bit[4];
+typedef union {
+    int32_t i32bit;
+    uint8_t u8bit[4];
 } axis1bit32_t;
 
 /**
@@ -97,15 +97,15 @@
   *
   */
 
-typedef struct{
-  uint8_t bit0       : 1;
-  uint8_t bit1       : 1;
-  uint8_t bit2       : 1;
-  uint8_t bit3       : 1;
-  uint8_t bit4       : 1;
-  uint8_t bit5       : 1;
-  uint8_t bit6       : 1;
-  uint8_t bit7       : 1;
+typedef struct {
+    uint8_t bit0       : 1;
+    uint8_t bit1       : 1;
+    uint8_t bit2       : 1;
+    uint8_t bit3       : 1;
+    uint8_t bit4       : 1;
+    uint8_t bit5       : 1;
+    uint8_t bit6       : 1;
+    uint8_t bit7       : 1;
 } bitwise_t;
 
 #define PROPERTY_DISABLE                (0U)
@@ -126,15 +126,15 @@
   *
   */
 
-typedef int32_t (*stts751_write_ptr)(void *, uint8_t, uint8_t*, uint16_t);
-typedef int32_t (*stts751_read_ptr) (void *, uint8_t, uint8_t*, uint16_t);
+typedef int32_t (*stts751_write_ptr)(void *, uint8_t, uint8_t *, uint16_t);
+typedef int32_t (*stts751_read_ptr)(void *, uint8_t, uint8_t *, uint16_t);
 
 typedef struct {
-  /** Component mandatory fields **/
-  stts751_write_ptr  write_reg;
-  stts751_read_ptr   read_reg;
-  /** Customizable optional pointer **/
-  void *handle;
+    /** Component mandatory fields **/
+    stts751_write_ptr  write_reg;
+    stts751_read_ptr   read_reg;
+    /** Customizable optional pointer **/
+    void *handle;
 } stts751_ctx_t;
 
 /**
@@ -175,27 +175,27 @@
 #define STTS751_TEMPERATURE_HIGH            0x00U
 #define STTS751_STATUS                      0x01U
 typedef struct {
-  uint8_t thrm                       : 1;
-  uint8_t not_used_01                : 4;
-  uint8_t t_low                      : 1;
-  uint8_t t_high                     : 1;
-  uint8_t busy                       : 1;
+    uint8_t thrm                       : 1;
+    uint8_t not_used_01                : 4;
+    uint8_t t_low                      : 1;
+    uint8_t t_high                     : 1;
+    uint8_t busy                       : 1;
 } stts751_status_t;
 
 #define STTS751_TEMPERATURE_LOW             0x02U
 #define STTS751_CONFIGURATION               0x03U
 typedef struct {
-  uint8_t not_used_01                : 2;
-  uint8_t tres                       : 2;
-  uint8_t not_used_02                : 2;
-  uint8_t stop                       : 1;
-  uint8_t mask1                      : 1;
+    uint8_t not_used_01                : 2;
+    uint8_t tres                       : 2;
+    uint8_t not_used_02                : 2;
+    uint8_t stop                       : 1;
+    uint8_t mask1                      : 1;
 } stts751_configuration_t;
 
 #define STTS751_CONVERSION_RATE             0x04U
 typedef struct {
-  uint8_t conv                       : 4;
-  uint8_t not_used_01                : 4;
+    uint8_t conv                       : 4;
+    uint8_t not_used_01                : 4;
 } stts751_conversion_rate_t;
 
 #define STTS751_TEMPERATURE_HIGH_LIMIT_HIGH 0x05U
@@ -207,8 +207,8 @@
 #define STTS751_THERM_HYSTERESIS            0x21U
 #define STTS751_SMBUS_TIMEOUT               0x22U
 typedef struct {
-  uint8_t not_used_01                : 7;
-  uint8_t timeout                    : 1;
+    uint8_t not_used_01                : 7;
+    uint8_t timeout                    : 1;
 } stts751_smbus_timeout_t;
 
 #define STTS751_PRODUCT_ID                  0xFDU
@@ -227,13 +227,13 @@
   * @{
   *
   */
-typedef union{
-  stts751_status_t                       status;
-  stts751_configuration_t                configuration;
-  stts751_conversion_rate_t              conversion_rate;
-  stts751_smbus_timeout_t                smbus_timeout;
-  bitwise_t                              bitwise;
-  uint8_t                                byte;
+typedef union {
+    stts751_status_t                       status;
+    stts751_configuration_t                configuration;
+    stts751_conversion_rate_t              conversion_rate;
+    stts751_smbus_timeout_t                smbus_timeout;
+    bitwise_t                              bitwise;
+    uint8_t                                byte;
 } stts751_reg_t;
 
 /**
@@ -241,36 +241,36 @@
   *
   */
 
-int32_t stts751_read_reg(stts751_ctx_t *ctx, uint8_t reg, uint8_t* data,
+int32_t stts751_read_reg(stts751_ctx_t *ctx, uint8_t reg, uint8_t *data,
+                         uint16_t len);
+int32_t stts751_write_reg(stts751_ctx_t *ctx, uint8_t reg, uint8_t *data,
                           uint16_t len);
-int32_t stts751_write_reg(stts751_ctx_t *ctx, uint8_t reg, uint8_t* data,
-                           uint16_t len);
 
 extern float stts751_from_lsb_to_celsius(int16_t lsb);
 extern int16_t stts751_from_celsius_to_lsb(float celsius);
 
 typedef enum {
-  STTS751_TEMP_ODR_OFF        = 0x80,
-  STTS751_TEMP_ODR_ONE_SHOT   = 0x90,
-  STTS751_TEMP_ODR_62mHz5     = 0x00,
-  STTS751_TEMP_ODR_125mHz     = 0x01,
-  STTS751_TEMP_ODR_250mHz     = 0x02,
-  STTS751_TEMP_ODR_500mHz     = 0x03,
-  STTS751_TEMP_ODR_1Hz        = 0x04,
-  STTS751_TEMP_ODR_2Hz        = 0x05,
-  STTS751_TEMP_ODR_4Hz        = 0x06,
-  STTS751_TEMP_ODR_8Hz        = 0x07,
-  STTS751_TEMP_ODR_16Hz       = 0x08, /* 9, 10, or 11-bit resolutions only */
-  STTS751_TEMP_ODR_32Hz       = 0x09, /* 9 or 10-bit resolutions only */
+    STTS751_TEMP_ODR_OFF        = 0x80,
+    STTS751_TEMP_ODR_ONE_SHOT   = 0x90,
+    STTS751_TEMP_ODR_62mHz5     = 0x00,
+    STTS751_TEMP_ODR_125mHz     = 0x01,
+    STTS751_TEMP_ODR_250mHz     = 0x02,
+    STTS751_TEMP_ODR_500mHz     = 0x03,
+    STTS751_TEMP_ODR_1Hz        = 0x04,
+    STTS751_TEMP_ODR_2Hz        = 0x05,
+    STTS751_TEMP_ODR_4Hz        = 0x06,
+    STTS751_TEMP_ODR_8Hz        = 0x07,
+    STTS751_TEMP_ODR_16Hz       = 0x08, /* 9, 10, or 11-bit resolutions only */
+    STTS751_TEMP_ODR_32Hz       = 0x09, /* 9 or 10-bit resolutions only */
 } stts751_odr_t;
 int32_t stts751_temp_data_rate_set(stts751_ctx_t *ctx, stts751_odr_t val);
 int32_t stts751_temp_data_rate_get(stts751_ctx_t *ctx, stts751_odr_t *val);
 
 typedef enum {
-  STTS751_9bit      = 2,
-  STTS751_10bit     = 0,
-  STTS751_11bit     = 1,
-  STTS751_12bit     = 3,
+    STTS751_9bit      = 2,
+    STTS751_10bit     = 0,
+    STTS751_11bit     = 1,
+    STTS751_12bit     = 3,
 } stts751_tres_t;
 int32_t stts751_resolution_set(stts751_ctx_t *ctx, stts751_tres_t val);
 int32_t stts751_resolution_get(stts751_ctx_t *ctx, stts751_tres_t *val);
@@ -305,9 +305,9 @@
 int32_t stts751_smbus_timeout_get(stts751_ctx_t *ctx, uint8_t *val);
 
 typedef struct {
-  uint8_t product_id;
-  uint8_t manufacturer_id;
-  uint8_t revision_id;
+    uint8_t product_id;
+    uint8_t manufacturer_id;
+    uint8_t revision_id;
 } stts751_id_t;
 int32_t stts751_device_id_get(stts751_ctx_t *ctx, stts751_id_t *buff);