锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

Android:光感自动调节亮度

时间:2022-10-31 11:00:01 光感传感器zp一12g

其实其他平台就像MTK,高通也差不多,大同小异,主要搜索关键词:config_autoBrightnessLevels、config_screenBrightnessBacklight,只是文件路径不同。

通过修改sensorhub上报下光感原始数据,或根据实际情况进行调整brightness level根据个人喜好,可以自动调节亮度功能的灵敏度。

展锐的代码路径如下:

device\sprd\roc1\common\overlay\frameworks\base\core\res\res\values\config.xml

                  16         32         50         100         140         180         240         300         600         800         1000         2000         3000         4000         5000         6000         8000         10000   20000   30000                        10.45935            29.25559            29.25559            34.240692           37.514347           40.018696           46.885098           51.626434           58.610405           66.890915           77.61644            90.221886           105.80314           126.073845          154.16931           191.83717           240.74442           294.84857           348.05453           394.98703     405.2315     410.3658                           0         5         10         15         20         25         30         35         40         45         60         75         90         105         120
        135
        150
        165
        180
        195
        210
        225
        240
        255
    

查看光感数据上报原始值节点:

cat /sys/devices/virtual/sprd_sensorhub/sensor_hub/raw_data_als

可以跟一下代码就会发现在kernel下:

kernel4.14\drivers\iio\sprd_hub\shub_core.c

static ssize_t raw_data_als_show(struct device *dev,
				struct device_attribute *attr, char *buf)
{
	struct shub_data *sensor = dev_get_drvdata(dev);
	u8 data[2];
	u16 *ptr;
	int err;

	ptr = (u16 *)data;
	if (sensor->mcu_mode <= SHUB_OPDOWNLOAD) {
		dev_err(dev, "mcu_mode == SHUB_BOOT!\n");
		return -EINVAL;
	}

	err = shub_sipc_read(sensor,
			     SHUB_GET_LIGHT_RAWDATA_SUBTYPE, data, sizeof(data));
	if (err < 0) {
		dev_err(dev, "read RegMapR_GetLightRawData failed!\n");
		return err;
	}
	return sprintf(buf, "%d\n", ptr[0]);
}
static DEVICE_ATTR_RO(raw_data_als);

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章