LCOV - code coverage report
Current view: top level - zephyr/drivers/sensor - tsl2591.h Hit Total Coverage
Test: new.info Lines: 1 3 33.3 %
Date: 2024-12-22 00:14:23

          Line data    Source code
       1           1 : /*
       2             :  * Copyright (c) 2023 Kurtis Dinelle
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : 
       7             : /**
       8             :  * @file
       9             :  * @brief Extended public API for AMS's TSL2591 ambient light sensor
      10             :  *
      11             :  * This exposes attributes for the TSL2591 which can be used for
      12             :  * setting the on-chip gain, integration time, and persist filter parameters.
      13             :  */
      14             : 
      15             : #ifndef ZEPHYR_INCLUDE_DRIVERS_SENSOR_TSL2591_H_
      16             : #define ZEPHYR_INCLUDE_DRIVERS_SENSOR_TSL2591_H_
      17             : 
      18             : #include <zephyr/drivers/sensor.h>
      19             : 
      20             : #ifdef __cplusplus
      21             : extern "C" {
      22             : #endif
      23             : 
      24           0 : enum sensor_attribute_tsl2591 {
      25             :         /* Sensor ADC Gain Mode
      26             :          * Rather than set this value directly, can only be set to operate in one of four modes:
      27             :          *
      28             :          * TSL2591_SENSOR_GAIN_LOW
      29             :          * TSL2591_SENSOR_GAIN_MED
      30             :          * TSL2591_SENSOR_GAIN_HIGH
      31             :          * TSL2591_SENSOR_GAIN_MAX
      32             :          *
      33             :          * See datasheet for actual typical gain scales these modes correspond to.
      34             :          */
      35             :         SENSOR_ATTR_GAIN_MODE = SENSOR_ATTR_PRIV_START + 1,
      36             : 
      37             :         /* Sensor ADC Integration Time (in ms)
      38             :          * Can only be set to one of six values:
      39             :          *
      40             :          * 100, 200, 300, 400, 500, or 600
      41             :          */
      42             :         SENSOR_ATTR_INTEGRATION_TIME,
      43             : 
      44             :         /* Sensor ALS Interrupt Persist Filter
      45             :          * Represents the number of consecutive sensor readings outside of a set threshold
      46             :          * before triggering an interrupt. Can only be set to one of sixteen values:
      47             :          *
      48             :          * 0, 1, 2, 3, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, or 60
      49             :          *
      50             :          * Setting this to 0 causes an interrupt to generate every ALS cycle,
      51             :          * regardless of threshold.
      52             :          * Setting this to 1 is equivalent to the no-persist interrupt mode.
      53             :          */
      54             :         SENSOR_ATTR_INT_PERSIST
      55             : };
      56             : 
      57           0 : enum sensor_gain_tsl2591 {
      58             :         TSL2591_SENSOR_GAIN_LOW,
      59             :         TSL2591_SENSOR_GAIN_MED,
      60             :         TSL2591_SENSOR_GAIN_HIGH,
      61             :         TSL2591_SENSOR_GAIN_MAX
      62             : };
      63             : 
      64             : #ifdef __cplusplus
      65             : }
      66             : #endif
      67             : 
      68             : #endif /* ZEPHYR_INCLUDE_DRIVERS_SENSOR_TSL2591_H_ */

Generated by: LCOV version 1.14