enum scd30_cmd { /* start continuous measurement with pressure compensation */
CMD_START_MEAS, /* stop continuous measurement */
CMD_STOP_MEAS, /* set/get measurement interval */
CMD_MEAS_INTERVAL, /* check whether new measurement is ready */
CMD_MEAS_READY, /* get measurement */
CMD_READ_MEAS, /* turn on/off automatic self calibration */
CMD_ASC, /* set/get forced recalibration value */
CMD_FRC, /* set/get temperature offset */
CMD_TEMP_OFFSET, /* get firmware version */
CMD_FW_VERSION, /* reset sensor */
CMD_RESET, /* * Command for altitude compensation was omitted intentionally because * the same can be achieved by means of CMD_START_MEAS which takes * pressure above the sea level as an argument.
*/
};
struct scd30_state { /* serialize access to the device */ struct mutex lock; struct device *dev; struct regulator *vdd; struct completion meas_ready; /* * priv pointer is solely for serdev driver private data. We keep it * here because driver_data inside dev has been already used for iio and * struct serdev_device doesn't have one.
*/ void *priv; int irq; /* * no way to retrieve current ambient pressure compensation value from * the sensor so keep one around
*/
u16 pressure_comp;
u16 meas_interval; int meas[SCD30_MEAS_COUNT];
scd30_command_t command;
};
externconststruct dev_pm_ops scd30_pm_ops;
int scd30_probe(struct device *dev, int irq, constchar *name, void *priv, scd30_command_t command);
#endif
Messung V0.5
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet)
¤
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.