本文转载自:https://blog.csdn.net/u013983194/article/details/53244686
最近在学习有关如何porting sensor的东西,仅借此机会写博客来督促自己进步,当然如果,有人对博客提出不同的理解,我觉得这是极好的,大家可以共同进步。在这一期的博客中,将详细分析sensor的东西。从底层到上层,从fw到上层。至于<漫谈android系统>这系列的文章,我将会持续更新.
Android Sensor框架
由上图就可以看到现在的android系统的sensor很多都是走的adsp。底层的sensor集成在adsp中sensor manager将数据进行打包后,放在共享的内存中,由上层去共享内存解析数据包,最后拿到数据给上层做各种操作。
而在Android Sensor 架构深入剖析 该文中,指出了内核,HAL层是用户实现,其实这一块基本上是由BSP与厂商一起co-work完成。
手机sensor类别
陀螺仪\加速度传感器 (g sensor)、磁力传感器(hall sensor)、方向传感器(ecompass sensor)、环境光照传感器(light sensor)、距离传感器(proximity sensor)
当然还有关于温度的sensor现在基本上都是用热敏电阻工作。高通有这一整套关于thermal系统去检测机台的温度。当然在这里,我们主攻是sensor,就先不考虑这个了。
有人就说了,手机中那么多的sensor,你咋么才指出那么一点东西。其实有很多就是通过算法将几个sensor合在一起工作,就变成了其他的sensor。
如何查看手机中的sensor
android sensor box可谓是android中查看sensor工作状态的神器,用该apk能够详细地看到sensor的东西。