Sensor分类专栏 总览
Sensor的作用
Sensor是指将收集到的信息转换成设备能处理的信号的元件或装置。
传感器收集转换的信号(物理量)有温度、光、颜色、气压、磁力、速度、加速度等。
大多数 Android 设备都有内置传感器,用来测量运动、屏幕方向和各种环境条件。这些传感器能够提供高度精确的原始数据,非常适合用来监测设备的三维移动或定位,或监测设备周围环境的变化。
例如: 陀螺仪的数据可以辅助camera进行 防抖算法的实现,运动传感器可以记录运动的步数,游戏设备可以根据传感器数据识别动作;磁传感器可以识别磁场方向实现罗盘功能等;
Android系统中Sensor
在Android系统中,Google为Sensor提供了统一的HAL接口, AOSP中封装了统一的sensor的访问接口,应用开发人员不用实现底层操作,使用固定的接口(SensorManager)即可完成sensor的操作;硬件抽象层(HAL)以及sensor 设备驱动层,AOSP中并不提供标准,由平台厂商提供框架及代码逻辑,设备驱动由sensor厂商根据框架环境,进行实现;
高通平台Sensor子系统实现方式
上面提到,HAL层及设备驱动层均需平台厂商提供框架及代码逻辑,在高通不同的设备平台上,有多种实现方式,可简单归为3种类别;
基于Linux kernel input driver实现设备驱动,通过event上报和nativer Sensor HAL 通信;
基于DDF框架sensor设备驱动,通过SSC框架处理,完成Sensor底层数据的处理与上报; Sensor HAL sensor1 libapi + sensor daemon; 两者基于QMI 相互通信;
基于SEE 结构的实现方式
后面对各种平台做较详细些的描述:
Sensor 专栏Blog 链接:
基于Google为Sensor提供的Framework框架规范,在AOSP中的主要内容:
AOSP sensor applicattion数据读取
AOSP Sensor Servervice
AOSP sensor Manage
高通平台 input kernel driver 通过event 与 Sensor HAL的框架相关内容:
Android Sensor Input类型 (一) 总览
Android Sensor Input类型 (二) Device Driver
Android Sensor Input类型 (三) Sensor Class