基于Android的数字温湿度传感器驱动开发及应用
2016-03-25梁永恩万世明
梁永恩,万世明
基于Android的数字温湿度传感器驱动开发及应用
梁永恩,万世明
摘 要:研究了Android的架构及硬件驱动的实现原理,以数字式温湿度传感器DHT11为例,结合Android的硬件抽象层模式,设计了DHT11在Android平台下的驱动实现方法并编写了用户测试程序,测试结果表明,系统能正确获取传感器的温湿度数据,驱动程序运行正常。
关键词:嵌入式;DHT11;温湿度检测;Android;硬件抽象层
0 引言
Android是Google公司推出的完全开放的移动设备软件开发平台[1],目前的版本是5.0。Android最早是专门用于手机开发的,由于其开源、扩展性好、开发方便、界面美观等优点使其得到在手机、平板电脑、智能电视、车载设备及其它移动设备领域中广泛的应用。本文以DHT11数字温湿度传感器为例,介绍Andriod系统硬件底层驱动设计及应用的方法。
1 Android驱动原理
Android由下而上分为五个层次,其结构图如图1所示:

图 1 Android 系统架构
最底层是Linux内核层,Android4.0使用Linux Kernel 3.0.1;内核层之上是硬件抽象层(Hardware Abstractor Layer,HAL),该层是对Linux内核程序的封装,向上提供接口,屏蔽底层的实现细节;硬件抽象层之上是函数库和运行时环境,包括标准C系统函数库、Open GL /ES等,通过Android应用程序框架为开发者提供服务;函数库之上是应用程序框架层,包括一系列的系统服务,如视图系统、资源管理器、活动管理器、通知管理器等,用户可以使用这些API开发应用程序;最上层是应用层,用户开发的Android应用程序和Android内核应用程序(如Email、联系人等)均位于这一层。
2 DHT11温湿度传感器
DHT11数字温湿度传感器是一款价格低廉的温湿度传感器模块[2]。……
