您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 基于Android手机的手电筒程序的实现
课程设计报告课程设计名称:嵌入式系统综合课程设计课程设计题目:基于Android手机的手电筒程序的实现院(系):计算机学院专业:班级:学号:姓名:指导教师:完成日期:-I-目录第1章系统分析..........................................................................................................11.1需求分析..............................................................................................................11.2硬件分析..............................................................................................................11.2.1实验环境.......................................................................................................21.2.2相关硬件简介...............................................................................................21.3软件分析..............................................................................................................21.3.1嵌入式操作系统简介...................................................................................31.3.2开发技术简介...............................................................................................4第2章系统设计..........................................................................................................52.1操作系统移植......................................................................................................52.2系统模块设计......................................................................................................52.3关键流程..............................................................................................................62.3.1系统主流程图...............................................................................................62.3.2开灯流程图...................................................................................................72.3.3屏幕背光流程图...........................................................................................82.3.4SOS流程图...................................................................................................9第3章系统调试及运行............................................................................................103.1调试分析............................................................................................................103.2结果分析.............................................................................................................11参考文献........................................................................................................................13附录..........................................................................................................................14第1章系统分析-1-第1章系统分析1.1需求分析在现代社会中,手机的功能越来越丰富,给生活带来了极大的趣味性和便捷性。手电筒是生活中最普通的生活必需品,它在我们身处黑暗时给予我们光亮。传统的手电筒体积较大,需要电池,不方便携带。手机与手电筒的结合恰恰可以解决传统手机带来的不便,同时还可以节约资源,保护环境。既可以让用户及时获得手电筒带来的益处,也可以让生活更加便捷,高效。1.2硬件分析Android是一个以Linux为基础的半开源操作系统,主要用于移动设备,由Google和开放手持设备联盟开发与领导。Android的HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL的目的是为了把Androidframework与Linuxkernel隔开,让Android不至过度依赖Linuxkernel,以达成kernelindependent的概念,也让Androidframework的开发能在不考量驱动程序实现的前提下进行发展。HALstub是一种代理人(proxy)的概念,stub是以*.so档的形式存在。Stub向HAL“提供”操作函数(operations),并由Androidruntime向HAL取得stub的operations,再callback这些操作函数。HAL里包含了许多的stub(代理人)。Runtime只要说明“类型”,即moduleID,就可以取得操作函数。Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。在Android开发中,我们就是通过ID来调用或更改组件的。Android平台提供给第三方开发者一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰。在本次课程设计中用到的是Android4.4.2,型号为SM-N9002的三星手机。第1章系统分析-2-1.2.1实验环境1)JDK(JavaDevelopmentKit)JDK是Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。2)EclipseEclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。3)SDK(softwaredevelopmentkit)SDK是软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。4)ADT(AbstractDataType)抽象数据类型(ADT)是一个实现包括储存数据元素的存储结构以及实现基本操作的算法。其中包括数据对象,数据关系和基本操作。1.2.2相关硬件简介在安卓手机上绝大多数的处理器都是ARM处理器,ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和合作伙伴众多。其具体体现是:1)体积小、低功耗、低成本、高性能;2)支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;3)大量使用寄存器,指令执行速度更快;4)大多数数据操作都在寄存器中完成;5)寻址方式灵活简单,执行效率高;6)指令长度固定。1.3软件分析本次课程设计用到的软件是Eclipse,此软件是一个开放源代码的软件开发项第1章系统分析-3-目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成。具体包括四个部分组成——EclipsePlatform、JDT、CDT和PDE。JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,EclipsePlatform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。EclipsePlatform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。1.3.1嵌入式操作系统简介从嵌入式系统的应用来分类,可以分为面向低端设备的嵌入式操作系统和面向高端设备的嵌入式操作系统。(低端:微波炉,洗衣机,冰箱;高端:信息化家电,掌上电脑,机顶盒,路由器)嵌入式操作系统(EmbeddedOperationSystem,EOS)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。EOS从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。EOS是相对于一般操作系统而言的,它除具有了一般操作系统最基本的功能,还有以下功能:如任务调度、同步机制、中断处理、文件处理等。嵌入式操作系统特点:1)良好的移植性、开放性、可伸缩性的体系结构,提供各种设备驱动接口。EOS实时性一般较强,可用于各种设备控制当中。操作方便、简单、提供友好的图形GUI,图形界面,追求易学易用。提供强大的网络功能,支持TCP/IP等协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。2)强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这就要负责系统管理的EOS具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统调用命令向用户程序提供服务。第1章系统分析-4-3)固化代码。在嵌入系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统。1.3.2开发技术简介And
本文标题:基于Android手机的手电筒程序的实现
链接地址:https://www.777doc.com/doc-2533377 .html