drivers/sensors/hdc1008: fix formatting after decimal point

Modulo operation used to calculate digits after decimal point,
but if that result is <10, a leading zero wasn't added, giving a
wrong value.
This commit is contained in:
Diego Herranz 2021-12-17 19:08:43 +01:00 committed by Xiang Xiao
parent 1fe41381d5
commit 34c7bec0dc

View File

@ -632,7 +632,7 @@ static ssize_t hdc1008_read(FAR struct file *filep, FAR char *buffer,
if (priv->mode == HDC1008_MEAS_TEMPERATURE)
{
len = snprintf(buffer, buflen, "%d.%d", data.temperature / 100,
len = snprintf(buffer, buflen, "%d.%02d", data.temperature / 100,
data.temperature % 100);
}
else if (priv->mode == HDC1008_MEAS_HUMIDITY)
@ -642,7 +642,7 @@ static ssize_t hdc1008_read(FAR struct file *filep, FAR char *buffer,
}
else if (priv->mode == HDC1008_MEAS_T_AND_RH)
{
len = snprintf(buffer, buflen, "%d.%d %d.%d",
len = snprintf(buffer, buflen, "%d.%02d %d.%d",
data.temperature / 100, data.temperature % 100,
data.humidity / 10, data.humidity % 10);
}