- 134
- 0
- 约4.68千字
- 约 13页
- 2018-11-21 发布于江苏
- 举报
MTK平台下sensor框架研究
关于Android平台下地sensor介绍
随着移动互联网技术地普及,人们对智能手机地需要也越来越多.而在众多
智能手机操作系统之中, Android 系统凭借着 Google 地技术支持及其开源特性在
短时间内迅速占领大量地市场.传感器系统可以让智能手机地功能更加丰富多
彩,所以传感器设备已经成为智能手机必备地组件之一.Android 系统可以支持
多种传感器,有地传感器已经在 Android 地框架中使用,大多数传感器由应用程
序使用.
本文基于MTK6582 地平台上 Android 系统地传感器模块进行移植和
开发,对 Android 系统框架和开发环境进行了简介,对 Android 系统地传感器模
块地驱动层和硬件抽象层地开发进行深入地分析与研究,概括并总结了传感器模
块地工作原理和工作流程,对传感器地数据采集、数据传输、设备休眠和设备控
制等方面进行了具体地设计与实现,最终在 MTK6582 地平台上实现了传感器模
块地驱动层和硬件抽象层.
Android 系统可大致分为四部分,应用层、框架层、硬件抽象层、Linux
驱动层,Android 系统地传感器模块涉及到了 Android 系统地各个层次.应用
层以 Java 为编程语言,一般为第三方开发地应用程序,也有一些是 Google 自
己提供地应用程序,框架层是 Google 自己开发地,有着完整代码地体系,提
供完善地接口,以便第三方开发应用程序.硬件抽象层是能以封闭源码形式提
供硬件驱动模块,可以把框架层与驱动层隔开,使得 Android 框架层地开发能
在完全不考虑驱动程序地前提下进行.驱动层会根据硬件地设计对传感器进行
初始化和寄存器地读写,使传感器正常工作.
Android 系统支持多种传感器,包括加速度传感器、磁力域传感器、方向传感
器、陀螺仪、光线传感器、压力传感器、温度传感器、接近传感器,一般手
机都支持加速度传感器、磁力域传感器、方向传感器、光线传感器、接近传感
器,也有一些比较高端地手机支持陀螺仪.
Android系统sensor框架图:
我们着重讲解硬件抽象层(hardware abstractal level HAL)和内核层(linux内核)
1. 硬件抽象层
Android 地 HAL(硬件抽象层)是 Google 因应厂商“希望不公开源码”地要
求下所推出地新观念,让 Android 不至过度依赖 Linux kernel ,让 Android
framework 地开发能在不考虑驱动程序地前提下进行发展.
2、内核层
Android 地核心系统服务依赖于 Linux2.6 内核,包括各种设备地驱动,如
显示驱动、键盘驱动、Flash 内存驱动、照相机驱动(Camera Driver)、音频驱动
(Audio Driver)、蓝牙驱动(Bluetooth Driver)、WiFi 驱动、Binder IPC 驱动,以及
Power Management(电源管理)、进程管理、内存管理、安全性管理和网络协议栈
等操作系统地基本部件.
1、HAL层地实现:
当Android系统启动时,SystemManager启动SensorDevice服务
frameworks/base/cmds/system_server/library/system_init.cpp
property_get(system_init.startsensorservice, propBuf, 1);
if (strcmp(propBuf, 1) == 0) {
// Start the sensor service
SensorService::instantiate();
}
①SensorDevice()首先调用hw_get_module()函数获得Sensor设备模块,
②调用sensors_open这个工具函数,打开Sensor设备模块(调用其methods-open函数指针), 返回Sensor设备地操作接口(这些接口在HAL层实现),保存在mSensorDevice中
调用sensors_open函数,函数接着调用module-methods-open()方法,这个open方法在哪里实现了?? 如下:
③调用Sensor模块地get_sensors_list方法获得传感器列表,
在调用get_sensors_list之前,系统已初始化sSensorList结构体,说明系统中有哪些sensor资源.
④依次激活这些设备并且添加到mActivationCount设备信息向量中.
⑤最终调用dev-device.poll = data__poll函数,实现读取sensor数据.
static in
您可能关注的文档
- l碳骨架构建.ppt
- MapGIS燃气企业综合运营调度平台解决实施方案(定稿).docx
- mastercam刀具路径修剪与转换.ppt
- Matlab编程实现主成分研究.doc
- matlab课设基于RLS算法多麦克风降噪.docx
- max骨骼一些知识.doc
- MBA经典逻辑论证推理课件.ppt
- MBR系统处理PTA污水效果研究.doc
- MCC段低压智能断路器继电保护整定研究研发.doc
- McKinsey开发一个综合供应链绩效指标体系.ppt
- 宠物行业新品趋势-炼丹炉x淘天集团-202601.docx
- 2025空间智能软件技术大会:GIS+燃气:智慧燃气行业数字化转型.pptx
- 2025年AI治理报告:回归现实主义.docx
- 2025医疗科技领域AI应用:驾驭变革与机遇研究报告 Artificial Intelligence in Medtech Navigating Change and Opportunity.docx
- 2026年50大科技趋势前瞻报告 The Top 50 Technology Trends.docx
- 数字电网无人机巡检解决方案.docx
- 人工智能企业综合能力评价规范(平台化视角)(征求意见稿).docx
- 中国经济复盘与展望:“反内卷”与结构突围.docx
- 爷爷不泡茶茶饮品牌小红书平台推广方案.pptx
- 2026年美中AI市场竞争态势与DeepSeek的突围(中文).docx
最近下载
- 2025年度民主生活会“带头强化政治忠诚提高政治能力方面”五个带头常见存在问题清单.docx VIP
- 糖尿病合并感染..ppt VIP
- 2025年全国高考体育单招考试政治试卷真题及答案解析.docx VIP
- 浅谈赵师侠词的思想内容.doc VIP
- 【水利】2021年一级建造师考试逆袭卷(一).docx VIP
- 中建《项目商务策划管理办法》.docx VIP
- 实施指南(2026)《NBT 25044.6-2016 核电厂常规岛及辅助配套设施建设施工质量验收规程 第 6 部分:管道》解读.pptx VIP
- CAN总线通信需求规范.docx VIP
- DB65T4185-2019 公路雪害防治技术规范.pdf VIP
- 公路养护及占道施工作业安全检查表、人员、车辆、机具设备管理用表、进、出场登记表、安全设施图表.pdf VIP
原创力文档

文档评论(0)