| 摘要 | 第1-4页 |
| Abstract | 第4-7页 |
| 第一章 绪论 | 第7-9页 |
| ·课题背景及国内外研究现状 | 第7-8页 |
| ·课题来源及本人主要工作 | 第8页 |
| ·论文主要内容及章节安排 | 第8-9页 |
| 第二章 传感器底层软件总体设计 | 第9-19页 |
| ·Android 系统概述 | 第9-12页 |
| ·Android 系统的层次划分 | 第9-10页 |
| ·Android 开发工作类型划分 | 第10-12页 |
| ·Android 传感器系统概述 | 第12-14页 |
| ·传感器底层软件总体设计 | 第14-18页 |
| ·传感器驱动程序总体设计 | 第14-16页 |
| ·传感器硬件抽象层总体设计 | 第16-18页 |
| ·本章小结 | 第18-19页 |
| 第三章 三种传感器的原理及配置方法 | 第19-41页 |
| ·AL3003 距离和光线二合一传感器原理及设置 | 第19-30页 |
| ·AL3003 的功能模块组成 | 第19页 |
| ·AL3003 传感器的特性 | 第19-20页 |
| ·AL3003 感应物体接近的原理 | 第20-22页 |
| ·AL3003 感应环境光线原理 | 第22-23页 |
| ·距离传感器功能参数配置 | 第23-26页 |
| ·AL3003 感应环境光线功能的配置 | 第26-28页 |
| ·AL3003 的不同功能模式间的切换 | 第28-30页 |
| ·BMA220 加速度传感器原理及设置 | 第30-39页 |
| ·BMA220 感应加速度的原理及功能模块组成 | 第30-31页 |
| ·BMA220 加速度传感器的特性 | 第31-32页 |
| ·BMA220 的电源模式的转换与控制 | 第32-33页 |
| ·BMA220 的几种不同的检测和识别方式及其配置方法 | 第33-38页 |
| ·任意动作检测的原理与配置方法 | 第33-35页 |
| ·点击检测的原理与配置方法 | 第35-36页 |
| ·方向检测的原理与配置方法 | 第36-38页 |
| ·水平检测的原理与配置方法 | 第38页 |
| ·其它一些重要参数的设置及加速度数据的获取 | 第38-39页 |
| ·加速度值范围设置 | 第38-39页 |
| ·Bandwidth 设置 | 第39页 |
| ·加速度数据获取 | 第39页 |
| ·本章小结 | 第39-41页 |
| 第四章 三种传感器的 I2C 驱动程序设计与实现 | 第41-51页 |
| ·I2C 总线协议 | 第41-44页 |
| ·I2C 串行总线概述 | 第41-42页 |
| ·I2C 总线的数据传输 | 第42-44页 |
| ·Linux I2C 驱动体系结构 | 第44-45页 |
| ·三种传感器的 I2C 驱动程序的实现 | 第45-49页 |
| ·本章小结 | 第49-51页 |
| 第五章 传感器底层软件详细设计与实现 | 第51-67页 |
| ·驱动程序的详细设计和实现 | 第51-58页 |
| ·传感器配置核心功能的实现 | 第51-52页 |
| ·字符设备驱动程序的实现 | 第52-54页 |
| ·利用 Sysfs 文件系统管理传感器设备的实现 | 第54-56页 |
| ·利用 Linux 输入子系统向 HAL 层上报数据机制的实现 | 第56-58页 |
| ·硬件抽象层的实现 | 第58-62页 |
| ·传感器系统硬件抽象层接口定义 | 第58-60页 |
| ·硬件抽象层数据读取和数据转换 | 第60-62页 |
| ·传感器系统底层软件工作效果测试 | 第62-65页 |
| ·通过 Android 传感器监视软件查看传感器系统工作状况 | 第63-64页 |
| ·通过 Android 框架查看传感器系统的功能性 | 第64-65页 |
| ·本章小结 | 第65-67页 |
| 第六章 总结与展望 | 第67-69页 |
| ·本文主要完成的工作 | 第67页 |
| ·尚需完善和进行的工作 | 第67-69页 |
| 致谢 | 第69-71页 |
| 参考文献 | 第71-73页 |