- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MTK平台ALS上报数据流程
针对ALS上报数据的流程,我这边大概的讲一下:
MTK平台ALS使用轮询模式(polling mode)的话,系统会轮询调用这个函数
int stk3x1x_als_operate(void* self, uint32_t command, void* buff_in, int size_in,void* buff_out, int size_out, int* actualout)
传进来的参数cammand会以下对应的case:
switch (command)
{
case SENSOR_DELAY: //设置sensor 延时
if((buff_in == NULL) || (size_in sizeof(int)))
{
APS_ERR(Set delay parameter error!\n);
err = -EINVAL;
}
// Do nothing
break;
case SENSOR_ENABLE: //打开sensor ,就是打开ALS,
if((buff_in == NULL) || (size_in sizeof(int)))
{
APS_ERR(Enable sensor parameter error!\n);
err = -EINVAL;
}
else
{
value = *(int *)buff_in;
if(value) /如果value的值为1的话,就会调用stk3x1x_enable_als函数
{
if((err = stk3x1x_enable_als(obj-client, 1))) //打开als
{
APS_ERR(enable als fail: %d\n, err);
return -1;
}
set_bit(STK_BIT_ALS, obj-enable);
}
Else //否则就关闭als
{
if((err = stk3x1x_enable_als(obj-client, 0))) //关闭als
{
APS_ERR(disable als fail: %d\n, err);
return -1;
}
clear_bit(STK_BIT_ALS, obj-enable);
}
}
break;
case SENSOR_GET_DATA: //获取ALS的数据
if((buff_out == NULL) || (size_out sizeof(hwm_sensor_data)))
{
APS_ERR(get sensor data parameter error!\n);
err = -EINVAL;
}
else
{
sensor_data = (hwm_sensor_data *)buff_out;
#ifdef STK_GES
if(obj-ges_enabled)
{
sensor_data-values[0] = stk3x1x_get_als_value(obj, obj-als_last);
sensor_data-value_divide = 1;
sensor_data-status = SENSOR_STATUS_ACCURACY_MEDIUM;
break;
}
#endif
err = stk3x1x_read_flag(obj-client, flag); //读取als的数据reading标志位
if(err)
return err;
if(!(flag STK_FLG_ALSDR_MASK)) //如果als数据 reading就继续return -1; //往下执行否则直接return -1
if((err = stk3x1x_read_als(obj-client, obj-als)))//从IC读取ALS数据保存到obj-als中
{
err = -1;
}
else
{
if(obj-als 3) //当底层获取到的读值在3以下的时候,我们会直接忽略,上报0
{
obj-als_
文档评论(0)