LibDriver SHT2X
Loading...
Searching...
No Matches
driver_sht2x_basic.c
Go to the documentation of this file.
1
36
37#include "driver_sht2x_basic.h"
38
39static sht2x_handle_t gs_handle;
40
48uint8_t sht2x_basic_init(void)
49{
50 uint8_t res;
51
52 /* link functions */
64
65 /* sht2x init */
66 res = sht2x_init(&gs_handle);
67 if (res != 0)
68 {
69 sht2x_interface_debug_print("sht2x: init failed.\n");
70
71 return 1;
72 }
73
74 /* set default heater */
76 if (res != 0)
77 {
78 sht2x_interface_debug_print("sht2x: set heater failed.\n");
79 (void)sht2x_deinit(&gs_handle);
80
81 return 1;
82 }
83
84 /* set default disable otp reload */
86 if (res != 0)
87 {
88 sht2x_interface_debug_print("sht2x: set disable otp reload failed.\n");
89 (void)sht2x_deinit(&gs_handle);
90
91 return 1;
92 }
93
94 /* set default mode */
96 if (res != 0)
97 {
98 sht2x_interface_debug_print("sht2x: set mode failed.\n");
99 (void)sht2x_deinit(&gs_handle);
100
101 return 1;
102 }
103
104 /* set default resolution */
106 if (res != 0)
107 {
108 sht2x_interface_debug_print("sht2x: set resolution failed.\n");
109 (void)sht2x_deinit(&gs_handle);
110
111 return 1;
112 }
113
114 return 0;
115}
116
126uint8_t sht2x_basic_read(float *temperature, float *humidity)
127{
128 uint16_t temperature_raw;
129 uint16_t humidity_raw;
130
131 /* read data */
132 if (sht2x_read(&gs_handle, (uint16_t *)&temperature_raw, temperature, (uint16_t *)&humidity_raw, humidity) != 0)
133 {
134 return 1;
135 }
136
137 return 0;
138}
139
148{
149 /* close sht2x */
150 if (sht2x_deinit(&gs_handle) != 0)
151 {
152 return 1;
153 }
154
155 return 0;
156}
157
166uint8_t sht2x_basic_get_serial_number(uint8_t sn[8])
167{
168 /* get serial number */
169 if (sht2x_get_serial_number(&gs_handle, sn) != 0)
170 {
171 return 1;
172 }
173
174 return 0;
175}
driver sht2x basic header file
uint8_t sht2x_set_heater(sht2x_handle_t *handle, sht2x_bool_t enable)
enable or disable heater
uint8_t sht2x_read(sht2x_handle_t *handle, uint16_t *temperature_raw, float *temperature_s, uint16_t *humidity_raw, float *humidity_s)
read data
uint8_t sht2x_init(sht2x_handle_t *handle)
initialize the chip
uint8_t sht2x_set_resolution(sht2x_handle_t *handle, sht2x_resolution_t resolution)
set resolution
struct sht2x_handle_s sht2x_handle_t
sht2x handle structure definition
uint8_t sht2x_set_disable_otp_reload(sht2x_handle_t *handle, sht2x_bool_t enable)
enable or disable disable otp reload
uint8_t sht2x_get_serial_number(sht2x_handle_t *handle, uint8_t sn[8])
get serial number
uint8_t sht2x_deinit(sht2x_handle_t *handle)
close the chip
uint8_t sht2x_set_mode(sht2x_handle_t *handle, sht2x_mode_t mode)
set chip mode
#define SHT2X_BASIC_DEFAULT_DISABLE_OTP_RELOAD
#define SHT2X_BASIC_DEFAULT_HEATER
#define SHT2X_BASIC_DEFAULT_RESOLUTION
#define SHT2X_BASIC_DEFAULT_MODE
sht2x basic example default definition
uint8_t sht2x_basic_init(void)
basic example init
uint8_t sht2x_basic_deinit(void)
basic example deinit
uint8_t sht2x_basic_get_serial_number(uint8_t sn[8])
basic example get serial number
uint8_t sht2x_basic_read(float *temperature, float *humidity)
basic example read
uint8_t sht2x_interface_iic_read_command(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus read command
void sht2x_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t sht2x_interface_iic_init(void)
interface iic bus init
uint8_t sht2x_interface_iic_deinit(void)
interface iic bus deinit
void sht2x_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t sht2x_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write
uint8_t sht2x_interface_iic_write_command(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus write command
uint8_t sht2x_interface_iic_read_with_wait(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read with wait
uint8_t sht2x_interface_iic_read_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus read with 16 bits register address
uint8_t sht2x_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read