最近工作上有碰到sensor的相关问题,正好分析下其流程作个笔记。
这个笔记分三个部分:
sensor硬件和驱动的工作机制
sensor 上层app如何使用
从驱动到上层app这中间的流程是如何
Sensor硬件和驱动的工作机制
先看看Accerometer +Gyro Sensor的原理图:

总结起来分四个部分(电源,地,通信接口,中断脚)。电源和地与平台和芯片本身有关系,与我们分析的没有多少关系,根据sensor的特性保证sensor正常工作的上电时序。关于通信接口,sensor与ap之间通信一般有两种接口(I2C/SPI)。因sensor数据量不大,I2C的速度足矣,目前使用I2C的居多。SDA是I2C的数据线,SCL是I2C的clock线。关于中断脚就是INT。Sensor有两个工作模式。一种是主动上报数据(每时每刻将获取到的数据上报给系统),另个一种是中断模式(当数据的变化大于了之前设置的触发条件),比如手机翻转大于45度,就会将当前的变化及当前数据上报给系统。
