1、仲恺农业工程学院毕 业 设 计基于安卓控制的智能无线开关姓 名 黄桂文院(系) 自动化学院专业班级 自动化 101 班学 号 201010344132指导教师 罗松江职 称 讲师论文答辩日期 2014 年 5 月 25 日仲恺农业工程学院教务处I学生毕业论文(设计)承诺书本人郑重承诺:所呈交的毕业论文(设计)是在指导老师的指导下进行的研究工作及取得的研究成果,论文中参考他人的文献资料均已明确标注出,论文中的结论和结果为本人独立完成,没有抄袭、剽窃他人研究成果。毕业论文作者:签字日期: II摘 要本课题研究的是基于安卓手机控制的智能无线开关设计。基于 android手机平台和ARM核心板,借助于
2、蓝牙技术,设计和实现了一种无线控制开关系统。实现通过手机端无线控制 ARM开发板端的 LED灯的亮灭功能。Android手机作为客户端发送蓝牙信号,蓝牙模块 HC-06作为服务器端接收信号,并向服务器端的控制器 ARM核心板传递信号。双方通过串口进行通信。ARM 控制器通过判断是否接收到信号从而控制核心板上的 LED灯的亮灭。本文详细介绍了基于安卓智能手机的无线开关控制系统的设计以及实现。从课题的背景开始讨论,接着到开发平台的搭建,再到系统整体方案的设计,最后对整个设计进行总结,分析出本系统的优势以及出现的不足。关键词:android 蓝牙 无线通信 ARMIII目 录1 绪论 .1前 言 .
3、11.1 近距离无线通信技术概述 .21.3 课题的来源背景 .51.4国内外研究状况 .61.5系统总体方案 .61.5.1 设计要求 .61.5.2 硬件的选取: .61.5.3软件的设计: .72 开发环境的搭建 .82.1 Linux开发环境搭建 .82.1.1 关于 Linux系统 .82.1.2 关于 GNU .82.1.3 利用 Vmware虚拟机搭建 Linux开发环境 .82.2 安卓应用开发环境搭建 .102.2.1 关于 Eclipse软件 .102.2.2 android SDK开发环境搭建 .102.2.3 android NDK 开发环境搭建 .113系统硬件的选取
4、 .133.1 关于 ARM处理器 .133.2 GEC210开发板简介 .153.3 蓝牙 HC-06模块的简介 .173.3.1 HC-06模块特征 .173.3.2 AT 指令集 (对蓝牙模块进行测试) .194 系统软件的设计 .224.1 相关软件编程技术 .224.1.1 嵌入式 C编程 .224.2 系统底层软件的设计 .22IV4.2.1 LED灯驱动程序设计 .224.2.2 LED灯测试程序设计 .264.2.3 UART串口配置 .284.3 系统上层软件的设计 .304.3.1 android应用程序工程分析 .304.3.2 智能手机端的应用程序设计 .314.3.3
5、 GEC210开发板端的应用程序设计 .375 系统整体的调试 .425.1 系统软硬件的测试 .425.2 结论与总结 .45参 考 文 献 .46Abstract.47附录: .48附录一:led_drv.c .48附录二:led_test.c .50附录三:AndroidApp 工程源文件: .523.1 主界面源代码 MainActivity.java .523.2 控制界面源代码 SearchBlueTooth.java .553.3 “关闭 APP”类源代码 SysApplication.java.603.5 主界面布局文件:activity_main.xml .613.6 控制界
6、面布局文件 searchbluetooth.xml .63附录四:ArmApp 工程源代码: .634.1 主界面源文件 MainActivity.java .634.2 主界面布局文件 activity_main.xml .654.3 Jni源代码文件: .654.3.1 C库源文件 ArmApp.cpp.654.3.2 头文件 com_jhhu-armapp_MainActivity.h .694.3.3 Android.mk.704.3.4 Application.mk.70致 谢 .71V仲恺农业工程学院毕业论文(设计)成绩评定表 .7211 绪论前 言随着移动互联网平台的发展,搭载着
7、免费、开源的 android操作系统的 android智能手机在移动平台以其市场占有率第一的优势而大放异彩。然而在现实生活中存在着许多这样的应用情况,系统需要实时传输小量的、近距离的突发信号,这就需要近距离无线通信技术。因此,基于安卓智能手机控制的无线开关系统亦是一个值得关注的领域。安卓智能手机随处可见,开关更是司空见惯,无线开关也是不再新鲜,然而基于安卓智能手机控制的无线开关确实一个较为新鲜的事物。本系统是一个基于安卓手机的智能无线开关系统,其涉及的硬件设备由处理单元(基于 contex-A8内核的 S5PV210处理器) 、发射模块(三星智能手机) 、接收模块(蓝牙接收器) 、ARM 核心
8、板以及其外接电路构成。软件系统则需要用 JAVA语言写两个安卓 APP,一个是安装到手机端作为蓝牙信号发送的发送端,另一个则是安装到 ARM核心板上作为蓝牙信号的接收端。除此之外,还需要用 C语言写关于 ARM板上的 LED灯的硬件驱动程序以及 uart串口的初始化程序。当发射模块发出信号时,接收模块会接收到无线信号,ARM 处理器就会作出分析使对应的 LED灯执行相应的亮灭操作,以 LED灯的亮灭来模拟开关的状态。此设计需要用到 C语言,JAVA 语言,数字电路,模拟电路,嵌入式系统设计以及安卓编程等相关知识。21.1 近距离无线通信技术概述目前使用较广泛的近距无线通信技术是蓝牙(Bluet
9、ooth),无线局域网 802.11(Wi-Fi)和红外数据传输(IrDA)。同时还有一些具有发展潜力的近距无线技术标准,它们分别是:ZigBee、超宽频(Ultra WideBand)、短距通信(NFC)、WiMedia、GPS、DECT、无线 1394和专用无线系统等。它们都有其立足的特点,或基于传输速度、距离、耗电量的特殊要求;或着眼于功能的扩充性;或符合某些单一应用的特别要求;或建立竞争技术的差异化等。但是没有一种技术可以完美到足以满足所有的需求。蓝牙技术有其性价比高,普遍性(一般的智能手机都有搭载蓝牙模块)的特点,较为适合用作短距离无线通信,因此此处主要对蓝牙技术进行介绍。蓝牙技术(
10、bluetooth)技术是近几年出现的,广受业界关注的近距无线连接技术。它是一种无线数据与语音通信的开放性全球规范,它以低成本的短距离无线连接为基础,可为固定的或移动的终端设备提供廉价的接入服务。蓝牙技术是一种无线数据与语音通信的开放性全球规范,其实质内容是为固定设备或移动设备之间的通信环境建立通用的近距无线接口,将通信技术与计算机技术进一步结合起来,使各种设备在没有电线或电缆相互连接的情况下,能在近距离范围内实现相互通信或操作。其传输频段为全球公众通用的 2.4GHzISM频段,提供 1Mbps的传输速率和 10m的传输距离。蓝牙技术诞生于1994年,Ericsson 当时决定开发一种低功耗
11、、低成本的无线接口,以建立手机及其附件间的通信。该技术还陆续获得 PC行业业界巨头的支持。1998 年,蓝牙技术协议由 Ericsson、IBM、Intel、NOKIA、Toshiba 等 5家公司达成一致。蓝牙协议的标准版本为802.15.1,由蓝牙小组(SIG)负责开发。802.15.1 的最初标准基于蓝牙 1.1实现,后者已构建到现行很多蓝牙设备中。新版 802.15.1a基本等同于蓝牙 1.2标准,具备一定的 QoS 特性,并完整保持后向兼容性。蓝牙行业是个突飞猛进的行业,2004 年到 2011年,蓝牙设备的综合年增长率为 40。07 年蓝牙设备的出货量达 5 亿件,市场份额增加了
12、71。预计到 2009,出货量将达到亿件。中国是世界最大的蓝牙生产研发基地,全球 80%的蓝牙企业在中国,中国 80%的蓝牙企业在深圳。国内最大的蓝牙方案公司深圳市吉联通数码科技有限公司、国内最大的蓝牙电池邦凯电子有限公司、全球著名的蓝牙键盘制造商中易腾达,国内最著名的蓝牙车载创美佳等公司都深圳,但蓝牙技术遭遇了最大的障碍是过于昂贵,这就使得许多用户不愿意花大价钱来购买这种无线设备。因此,首要解决的就是蓝牙附属地位的问题和蓝牙芯片国产化的问题。随着蓝牙芯片国产化,中国确定自己的技术标准,很快就可以解决目前中国蓝牙企业“山寨化”的问题,3让所有中国蓝牙企业生产合乎中国技术标准的产品。二是进入了蓝
13、牙产业链的上游,形成完整的产业链条。第三,可以借此解决目前蓝牙使用上由于“配对”复杂,而妨碍用户使用,造成市场推广的障碍。以上优势的形成,必将改变中国蓝牙行业的现有局面,并在深圳形成以高新技术为龙头的一体化蓝牙产业基地,更好的为全中国,全世界服务。业内专家认为,蓝牙的市场前景取决于蓝牙价格和基于蓝牙的应用是否能达到一定的规模。有了蓝牙,我们可以不再为数字家庭的布线而烦恼,移动电话、计算机、数码相机、摄像机、打印机、传真机和掌上电脑等能随心所欲无线连通。有了蓝牙,这些设备即会实现自动同步。即使用户的个人电脑放在手提箱内,用户也可以通过电话收电子邮件,通过移动电话屏幕阅读邮件标题,而不会有到处找连
14、接线、开机、关机等待等等诸如此类的一系列烦恼。蓝牙技术拥有广阔的潜力市场。1.2 android 操作系统简介Android操作系统是一款由 Google公司于 2007年 11月 5日宣布的基于 Linux平台的开源手机操作系统。2008 年 9月 22日,美国运营商 T-Mobile USA在纽约正式发布第一款 Google手机T-Mobile G1。该款手机为台湾宏达电代工制造,是世界上第一部使用 Android操作系统的手机。至最新的数据显示,搭载着安卓系统的智能手机在世界市场的占有率已达到 78.9%,远远抛开排名第二的 ios系统的 15.5%。成为目前市场占有率最高,发展最为快速
15、的一种手机操作系统。Android系统是基于 Linux和 Java技术,它在底层采用 Linux内核和本地库,在上层提供 Java支持框架和开发接口。它借助于 Linux强 大的稳定性、开放性和可移植性,Java语言开发的广泛性、简单性和可移植性,一经推出就受动广泛关注和欢迎,在嵌入式开发中产生比较深远的影响。Android的系统架构采用了分层架构的思想,如下图所示。从上层到底层共包括四层,分别是应用程序程序层、应用框架层、系统库和 Android运行时和 Linux内核。4图 1 Android 系统架构图每层功能简要介绍如下:一 应用程序层该层提供一些核心应用程序包,例如电子邮件、短信、
16、日历、地图、浏览器和联系人管理等。同时,开发者可以利用 Java语言设计和编写属于自己的应用程序,而这些程序与那些核心应用程序彼此平等、友好共处。二 应用程序框架层该层是 Android应用开发的基础,开发人员大部分情况是在和她打交道。应用程序框架层包括活动管理器、窗口管理器、内容提供者、视图系统、包管理器、 电话管理器、资源管理器、位置管理器、通知管理器和 XMPP服务十个部分。在 Android平台上,开发人员可以完全访问核心应用程序所使用的 API框 架。并且,任何一个应用程序都可以发布自身的功能模块,而其他应用程序则可以使用这些已发布的功能模块。基于这样的重用机制,用户就可以方便地替换平台本 身的各种应用程序组件。