26 lines
670 B
C
26 lines
670 B
C
#include "hygrometer.h"
|
|
|
|
static const struct device* dev = DEVICE_DT_GET_ONE(st_hts221);
|
|
|
|
enum error_code hygro_init(){
|
|
enum error_code ret = init_failed;
|
|
if(device_is_ready(dev)){
|
|
ret = success;
|
|
}else{}
|
|
return ret;
|
|
}
|
|
|
|
enum error_code hygro_get_value(int* holder){
|
|
enum error_code ret = read_failed;
|
|
struct sensor_value humidity;
|
|
if(
|
|
// fetch is required to update sensor read data
|
|
(sensor_sample_fetch(dev) >= 0) &&
|
|
(sensor_channel_get(dev, SENSOR_CHAN_HUMIDITY, &humidity) >= 0)
|
|
){
|
|
*holder = humidity.val1; //taking only the integer part
|
|
ret = success;
|
|
}else{}
|
|
return ret;
|
|
}
|