LibDriver SHTC3
Loading...
Searching...
No Matches
driver_shtc3_basic.c
Go to the documentation of this file.
1
36
37#include "driver_shtc3_basic.h"
38
39static shtc3_handle_t gs_handle;
40
48uint8_t shtc3_basic_init(void)
49{
50 uint8_t res;
51
52 /* link functions */
56#if (SHTC3_BASIC_DEFAULT_CLOCK_STRETCHING != 1)
58#else
60#endif
64
65 /* shtc3 init */
66 res = shtc3_init(&gs_handle);
67 if (res != 0)
68 {
69 shtc3_interface_debug_print("shtc3: init failed.\n");
70
71 return 1;
72 }
73
74 return 0;
75}
76
86uint8_t shtc3_basic_read(float *temperature, float *humidity)
87{
88 uint16_t temperature_raw;
89 uint16_t humidity_raw;
90
91 /* read data */
92#if (SHTC3_BASIC_DEFAULT_CLOCK_STRETCHING != 1)
93 if (shtc3_read(&gs_handle, SHTC3_BOOL_FALSE, (uint16_t *)&temperature_raw, temperature, (uint16_t *)&humidity_raw, humidity) != 0)
94 {
95 return 1;
96 }
97#else
98 if (shtc3_read(&gs_handle, SHTC3_BOOL_TRUE, (uint16_t *)&temperature_raw, temperature, (uint16_t *)&humidity_raw, humidity) != 0)
99 {
100 return 1;
101 }
102#endif
103
104 return 0;
105}
106
116uint8_t shtc3_basic_read_low_power(float *temperature, float *humidity)
117{
118 uint16_t temperature_raw;
119 uint16_t humidity_raw;
120
121 /* read data */
122#if (SHTC3_BASIC_DEFAULT_CLOCK_STRETCHING != 1)
123 if (shtc3_read_low_power(&gs_handle, SHTC3_BOOL_FALSE, (uint16_t *)&temperature_raw, temperature,
124 (uint16_t *)&humidity_raw, humidity) != 0)
125 {
126 return 1;
127 }
128#else
129 if (shtc3_read_low_power(&gs_handle, SHTC3_BOOL_TRUE, (uint16_t *)&temperature_raw, temperature,
130 (uint16_t *)&humidity_raw, humidity) != 0)
131 {
132 return 1;
133 }
134#endif
135
136 return 0;
137}
138
147{
148 /* close shtc3 */
149 if (shtc3_deinit(&gs_handle) != 0)
150 {
151 return 1;
152 }
153
154 return 0;
155}
156
165{
166 /* soft reset */
167 if (shtc3_soft_reset(&gs_handle) != 0)
168 {
169 return 1;
170 }
171
172 return 0;
173}
174
182uint8_t shtc3_basic_sleep(void)
183{
184 /* sleep */
185 if (shtc3_sleep(&gs_handle) != 0)
186 {
187 return 1;
188 }
189
190 return 0;
191}
192
201{
202 /* wakeup */
203 if (shtc3_wakeup(&gs_handle) != 0)
204 {
205 return 1;
206 }
207
208 return 0;
209}
driver shtc3 basic header file
uint8_t shtc3_init(shtc3_handle_t *handle)
initialize the chip
uint8_t shtc3_wakeup(shtc3_handle_t *handle)
wakeup
uint8_t shtc3_read(shtc3_handle_t *handle, shtc3_bool_t clock_stretching_enable, uint16_t *temperature_raw, float *temperature_s, uint16_t *humidity_raw, float *humidity_s)
normal read
uint8_t shtc3_deinit(shtc3_handle_t *handle)
close the chip
uint8_t shtc3_soft_reset(shtc3_handle_t *handle)
soft reset the chip
struct shtc3_handle_s shtc3_handle_t
shtc3 handle structure definition
uint8_t shtc3_sleep(shtc3_handle_t *handle)
sleep
uint8_t shtc3_read_low_power(shtc3_handle_t *handle, shtc3_bool_t clock_stretching_enable, uint16_t *temperature_raw, float *temperature_s, uint16_t *humidity_raw, float *humidity_s)
read in low power mode
@ SHTC3_BOOL_FALSE
@ SHTC3_BOOL_TRUE
uint8_t shtc3_basic_sleep(void)
basic example sleep
uint8_t shtc3_basic_read_low_power(float *temperature, float *humidity)
basic example read low power
uint8_t shtc3_basic_wakeup(void)
basic example wakeup
uint8_t shtc3_basic_read(float *temperature, float *humidity)
basic example read
uint8_t shtc3_basic_soft_reset(void)
basic example soft reset
uint8_t shtc3_basic_deinit(void)
basic example deinit
uint8_t shtc3_basic_init(void)
basic example init
uint8_t shtc3_interface_iic_write_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus write with 16 bits register address
uint8_t shtc3_interface_iic_deinit(void)
interface iic bus deinit
uint8_t shtc3_interface_iic_init(void)
interface iic bus init
uint8_t shtc3_interface_iic_scl_read_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus read with 16 bits register address
void shtc3_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t shtc3_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
void shtc3_interface_debug_print(const char *const fmt,...)
interface print format data