staticint hdc2010_read_raw(struct iio_dev *indio_dev, struct iio_chan_spec const *chan, int *val, int *val2, long mask)
{ struct hdc2010_data *data = iio_priv(indio_dev);
switch (mask) { case IIO_CHAN_INFO_RAW: { int ret;
if (chan->type == IIO_CURRENT) {
*val = hdc2010_get_heater_status(data); return IIO_VAL_INT;
} if (!iio_device_claim_direct(indio_dev)) return -EBUSY;
mutex_lock(&data->lock);
ret = hdc2010_get_prim_measurement_word(data, chan);
mutex_unlock(&data->lock);
iio_device_release_direct(indio_dev); if (ret < 0) return ret;
*val = ret; return IIO_VAL_INT;
} case IIO_CHAN_INFO_PEAK: { int ret;
if (!iio_device_claim_direct(indio_dev)) return -EBUSY;
mutex_lock(&data->lock);
ret = hdc2010_get_peak_measurement_byte(data, chan);
mutex_unlock(&data->lock);
iio_device_release_direct(indio_dev); if (ret < 0) return ret; /* Scaling up the value so we can use same offset as RAW */
*val = ret * 256; return IIO_VAL_INT;
} case IIO_CHAN_INFO_SCALE:
*val2 = 65536; if (chan->type == IIO_TEMP)
*val = 165000; else
*val = 100000; return IIO_VAL_FRACTIONAL; case IIO_CHAN_INFO_OFFSET:
*val = -15887;
*val2 = 515151; return IIO_VAL_INT_PLUS_MICRO; default: return -EINVAL;
}
}
staticint hdc2010_write_raw(struct iio_dev *indio_dev, struct iio_chan_spec const *chan, int val, int val2, long mask)
{ struct hdc2010_data *data = iio_priv(indio_dev); intnew, ret;
switch (mask) { case IIO_CHAN_INFO_RAW: if (chan->type != IIO_CURRENT || val2 != 0) return -EINVAL;
switch (val) { case1: new = HDC2010_HEATER_EN; break; case0: new = 0; break; default: return -EINVAL;
}
ret = i2c_smbus_write_byte_data(client, HDC2010_REG_MEASUREMENT_CONF, tmp); if (ret) {
dev_warn(&client->dev, "Unable to set up measurement\n"); if (hdc2010_update_drdy_config(data, HDC2010_AMM, 0))
dev_warn(&client->dev, "Unable to restore default AMM\n"); return ret;
}
MODULE_AUTHOR("Eugene Zaikonnikov <ez@norphonic.com>");
MODULE_DESCRIPTION("TI HDC2010 humidity and temperature sensor driver");
MODULE_LICENSE("GPL");
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.11Bemerkung:
(vorverarbeitet am 2026-10-01)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.