基于+ Android +系统的手机键盘驱动程序的设计与实现。 1070110701学习型920121263生成1070110701学习型学习09201XXXXXXXXXX21263手机系统基于Android的手机Android系统手机键盘驱动程序的设计与实现键盘驱动程序的设计与实现键盘驱动程序的设计与实现键盘驱动程序的设计与实现设计KeyboardDriver KeyboardDriver AndroidDesign KeyboardDriver KeyboardDriver AndroidBased Smart PhoneBased Smart基于电话的智能手机智能电话讲师姓名讲师姓名和职务崔江涛教授崔江涛教授讲师姓名崔江涛教授崔江涛教授计算机系统结构计算机系统结构2012年1月提交论文的日期提交论文的日期西安电子科技大学的原创性或创新性声明秉承学校严谨的学风和出色的科学道德,论文的作者Ming的研究是我的个人研究工作,也是在我的主管的指导下获得的研究结果。据我所知,除了正文中的特别说明和表示感谢。如果论文和信息的申请中有任何错误,我将承担一切。法律责任日期西安电子科技大学发表论文的授权声明我完全理解西安电子科技大学关于学位论文保留和使用的规定,即,在校学习期间从事论文工作的知识产权部门属于到西安电子科技大学学校。可以通过影印或其他复印方法保存论文,并且保证与毕业论文结合研究的主题撰写的所有文章均由西安电子科技大学签名。 Android智能手机操作系统已成为最受欢迎的智能手机操作系统。当前智能手机市场占有最大的市场份额,这带动了Android智能手机的发展。在Android的开发过程中,Android智能手机的键盘驱动程序的开发是非常重要的模块。本文参与了Android智能手机。智能手机键盘驱动程序的设计和实现的开发过程该程序首先介绍了Android智能系统的原理以及Android智能系统中驱动程序开发的相关方法。然后,它研究Linux输入子系统,因为我们的关键驱动程序使用Linux输入子系统将数据报告给上层。然后我们研究了Pxa920键盘控制器的原理和驱动方式,并设计了键盘驱动器。总体规划最终通过项目的软件和硬件环境验证了设计方案的可行性和有效性。子系统矩阵键盘矩阵键盘驱动程序驱动程序关键字输入子系统输入子系统矩阵键盘键盘驱动程序驱动程序摘要到目前为止,Android一直是最受欢迎的智能手机操作系统,如今,Androidsmart手机已占据智能手机市场份额的最大份额,这带动了Androidsmart手机的发展,Android智能手机键盘驱动程序的开发非常重要论文设计了Android智能手机键盘的整体开发过程Android智能手机首先论文介绍了Android智能手机的开发驱动程序Android操作系统我们引入了Linux输入子系统we键盘驱动程序使用了子系统报告数据高级程序我们引入了配置方法Pxa920键盘控制器最后我们设计了Android智能手机,其中包括了通过键盘测试来进行哈里森设计键值映射的硬件。我们的硬件软件环境关键字输入子系统矩阵键盘驱动程序过程第1章简介第1章简介1 Cha pter 1简介11主题背景1 12主题来源和我的主要工作1 13 Android系统及其优点和缺点comAndroid系统comAndroid系统的优点和缺点comAndroid系统的优点和缺点的摘要14本文的章节安排6第2章第2章Android系统原理系统原理9第2章第2章系统原理系统原理21 Android系统架构com软件结构9 com Android工具12 22 Android源代码开发环境13 com Android源代码获取和提交13 com Android源代码结构14 23 Android Linux内核和驱动程序15 com Linux内核和驱动程序15 com Android专用驱动程序15 com使用的Android设备驱动程序16 24本章摘要21第3章第3章Linux输入子系统输入子系统23第3章第3章输入子系统输入子系统31 linux输入子系统分析23 com输入子系统架构师ure 23 com主数据结构23 32输入链接的创建过程24 com硬件设备注册24 com事件处理程序层26 33设备打开和读取和写入28 com打开功能28 com读取功能28 com写入功能28 34第29章第4章第4章基于PXA920键盘控制器的配置方法键盘控制器配置方法31第4章第四章基于键盘控制器的配置方法键盘控制器配置方法41 Pxa920键盘控制器概述31 com Pxa920键盘控制器31 com的功能Pxa920键盘控制器的功能结构32 com Pxa920键盘控制器接口信号33 com Pxa920键盘控制器功能配置33 42 Pxa920键盘控制器对矩阵键盘的支持36 com矩阵键盘扫描模式选择36 com矩阵键盘接口38 com矩阵键盘扫描38 43章摘要39第5章设计和象征键盘驱动程序设计和实现的概念41第5章第5章键盘驱动程序的设计和实现51硬件连接设计41 com GPIO的使用和配置41 com矩阵键盘硬件连接设计43 52键值映射和键值报告43 com键值映射43 com使用Linux输入子系统报告键值44 53键盘驱动程序主要结构和中断处理45 com键盘驱动程序主要结构45 com键盘中断处理47 53测试结果48 54本章摘要49第VI章摘要和Outlook摘要和Outlook 51第VI章摘要和Outlook摘要和Outlook致谢53致谢致谢参考文献参考文献55参考文献参考文献第1章简介第1章绪论11主题背景2007年,全球掀起了一股Apple热潮。但是,没人想到Google会在苹果旋风半年后正式于2007年11月正式成立。宣布了Android智能操作系统,不久之后,这个小小的绿色机器人开始在世界范围内流行。它比苹果更受欢迎,但Android引发了移动领域的一场革命。它正在重塑世界主要科技公司的未来财富。美国根据市场研究公司Gartner过去四年的数据,自2008年以来,Android的终端市场销量在2011年上半年达到834.37万,其市场份额达到397,超过前智能手机冠军Symbian的近40%。苹果公司的iOS,也正处于上升阶段。对于Android智能手机,触摸屏是主要输入媒体。键是次要的。相同按键的数量少于传统手机的数量。但是,Android智能手机中的按键序列可以为Android智能手机提供良好的按键输入效果。使Android智能手机的性能更好。本文使用的芯片是Android智能手机芯片Marvell Pxa920,这是Marvell的第一个TD-SCDMA单芯片解决方案。它带有键盘控制器。键盘控制器使用Linux输入。系统报告的数据使Android智能手机的键盘模块能够正常工作。同时,我们设计和开发了矩阵键盘的扫描和键值映射方法,以使Android智能手机的键盘能够快速响应。 12主题来源和我的主要工作该主题来自作者。我在期间参加的Android智能手机研发项目主要从事基于Pxa920芯片的键盘控制器驱动程序软件的研究[ 2]具体工作是在Android智能系统的软件和硬件环境中驱动Pxa920键盘控制器,并且研究了控制方法以完成键盘控制器的底层硬件控制相关的寄存器层的配置实现了键盘控制驱动器,它可以在Android系统中发挥良好的作用,并与项目团队中的其他部门合作,从而使整个开发的Android智能手机都具有良好的性能。基于Android系统的手机键盘驱动程序的设计与实现。其核心工作主要包括以下几个方面。 Linux下的设备驱动程序设计方法。 Android系统原理。 Linux输入子系统的原理。使用Pxa920键盘控制器的原理和配置方法。键值映射方法。 13 Android系统及其优缺点。谷歌收购com Android系统公司Rubin之后,谷歌加快了进入移动通信市场的步伐,并推出了自己的品牌的移动终端产品。在外界的猜测下,制造商于2007年联合成立了手机开发联盟。OpenHandset AllianceOHA还发布了基于Linux内核的开源手机开发平台Android Android不仅是手机操作系统的用户界面和应用程序组成,并且一旦启动,开源代码就吸引了全世界开源爱好者的关注。同时,Google与主要制造商的大力合作也极大地促进了Android新手机业务的持续推出。同时,它也使Android更加标准化。所谓的应用程序生命周期无非就是从创建到死亡的整个应用程序过程。这一点被删除了。当然,它有其特殊性。确实,Android应用程序生命周期的结束不是由应用程序进程本身执行,而是取决于Android系统,也就是说,Android应用程序的生死无法不受天空的控制。与我们传统的编程思想不同,可能会有程序。例如,学习到的第一个语言程序是最后一个接收内部或外部退出请求的程序,正在运行的进程通过返回从主函数退出,而不是直接被系统杀死。这种情况很少发生。那么Android为什么设计师喜欢这种设计?这种设计有什么好处?实际上,大多数主流智能手机都是多任务处理。我经常在听音乐的同时使用手机游泳。同时,我仍然可以打开UCWeb,但不能忽略它。问题在于手机的内存只有这么多。随着我们打开的应用程序数量的增加,可能是应用程序响应时间过长或系统死机严重,因此如果将Android应用程序生命周期移交给系统,则系统内存不足时,Android系统会选择停止一些次等应用程序,以便在系统内存不足时为更重要的应用程序回收内存。那么系统是根据重要标准终止Android应用程序的吗?实际上,根据应用程序的组件以及Android中组件的当前运行状态,所有进程都会被重新按下。顾名思义,前台进程是显示在屏幕前端并与用户交互的活动。该进程或该进程的BroadcastReceiver正在运行。这个过程的重要性是最重要的。除非万不得已,除非系统内存非常低,否则只有少数这样的进程将被终止。否则,系统将不会选择终止前台进程。例如,当您运行诸如浏览器之类的程序时。当浏览器界面显示在前台时,浏览器属于前台进程,但是一旦您按home返回主界面,浏览器便成为后台程序的后台。我们不想终止的可见进程是可见进程。用户可见但未显示在屏幕前端的那些过程是可维修的过程。服务过程是拥有服务的过程。由Service方法启动的进程通常在后台运行,并且对用户不可见,但是这些进程所做的工作也很重要。更重要的是在后台播放音乐,因此除非前两个高级进程是在保证正常工作的情况下,系统通常不会停止服务过程。例如,Google Enterprise Suite Gmail内部存储器与内部存储器联系,尽管该服务的这一部分是辅助服务,但许多系统功能仍然密切相关。我们经常需要使用它们,因此我们也希望它们将被终止。后台进程正在运行用户不可见的活动。已调用onStop方法。某些过程没有用户体验。当上述过程需要内存资源时,直接影响可能来自后台过程。通常,系统运行中有许多不可见的进程。这些将保存在LRU上次使用最少的列表中,这样,当内存不足时,这将是第一次。回收当需要中止该进程时,系统将确保中止用户看到的最后一个进程,例如浏览器阅读器等。当程序显示在屏幕上时,他正在运行的进程是前台进程。一旦回到主界面,请注意,按主屏幕并不意味着按回去。该程序停留在后台,成为基于Android系统的手机键盘驱动程序的设计和实现。后台过程管理策略具有多种更活跃的方法。一旦程序到达后台,它将立即终止。这将提高程序的运行速度,但不能加快程序的重启速度。还有更多负面的方法来保留尽可能多的后台程序。尽管它可能会影响单个程序的运行速度,但是重新启动已启动的程序时,速度会提高。用户需要根据自己的使用习惯找到一个平衡点。空进程空进程中没有应用程序组件,而存在这种进程的唯一原因是提供一种缓存机制,以缩短下次启动应用程序所需的时间。系统通常会停止清空进程来调整程序缓存和系统缓存。 com的平衡com1安卓系统手机的五个优势和劣势开放性就优势而言,Android平台首先是其开发性开发平台,允许任何移动终端制造商加入Android联盟。显着的开放性可以使它拥有更多的功能。许多开发人员关注他们的家园,并且应用程序越来越丰富。一个全新的平台即将成熟。开发有利于Android开发的普及积累。这里的受欢迎程度包括消费者和制造商,但对消费者而言。好处是丰富的软件资源,开放的平台也将带来更大的竞争。结果,消费者将能够以较低的价格购买自己喜欢的手机,并摆脱运营商的束缚。过去很长一段时间,尤其是在欧美。区域性移动电话应用通常受运营商系统的约束。哪些功能用于访问什么网络几乎是在运营商的控制之下。从去年开始,iPhone用户可以更轻松地连接到网络运营商。随着EDGE HSDPA的逐步过渡,这些2G 3G移动网络改善运营商对网络的访问不再是运营商的笑话。当您可以通过手机IM软件轻松进行即时聊天时,回想一下不久前铃声下载业务的高价是否像一场噩梦,互联网巨头Google推出的Android终端就此诞生。具有网络功能将使用户更接近Internet。丰富的硬件选项。这仍然与Android平台的开放性有关。由于Android的开放性,商会推出了具有各种功能的各种产品。功能和特性上的差异和功能不会影响数据同步甚至软件兼容性。这就像从诺基亚Symbian风格的电话转换为iPhone,您也可以将Symbian中出色的软件引入iPhone。使用联系人和其他数据可以轻松地进行传输。这不是很方便吗?任何受限制的开发人员的Android平台都为第三方开发人员提供了一个非常广泛和免费的环境,不会受到各种规则的阻碍。可以想象会有多少新的独特软件诞生,但是还有两个方面,即暴力和。如何控制程序和游戏是Android面临的问题之一。五个无缝集成的Google应用程序。现在,被互联网震惊的Google已经走了10年的历史。从搜索巨头到广泛的Internet渗透,诸如地图邮件搜索之类的Google服务已变得紧密相连。对于用户和Internet而言,重要的Android平台手机将无缝集成这些出色的Google服务com2。Android的安全性和隐私性由于手机和Internet之间的紧密联系,个人隐私很难得到保护。除了在冲浪过程中意外或意外留下的个人足迹外,巨人Google始终站在您身后并渗透。运营商仍然可以影响Android手机。国内市场上的许多用户对定制手机的购买不满意。他们觉得自己的手机上涂着广告。通常是这种情况。在国外市场上,也有Android手机。另一家销售运营商Sprint将在其模型中内置其手机。商店程序中使用类似模型的用户较少。在许多移动论坛中,都会有某些模型的子论坛,以与手机交流经验并共享软件资源。对于Android平台手机,由于制造商的产品种类丰富,因此使用相同的型号。缺乏针对统一模型的程序增强功能的用户越来越少。例如,稍有不当之处。既然模仿者充斥着不同的品种,针对特定模仿者模型的讨论和小组就很少了,除了它们的功能异常抢眼并且非常流行。过度依赖抢手的模型,开发人员缺乏标准配置。在PC端使用Windows Xp系统时,Microsoft Windows Media Player是内置的。用户可以选择更多类型的播放器,例如Realplay或Baofengying,然后开始使用它。默认程序还可以满足各种需求。在Android平台中,开放软件更多地依赖于第三方供应商。例如,Android系统的SDK中没有内置音乐。基于Android系统的手机键盘驱动程序的设计和实现均取决于第三方开发。缺乏产品统一性。很难管理程序存储。开发人员很难赚钱。尽管有很多应用程序,但没有任何需要审查的内容。该程序通常很杂乱,并且手机型号太多。硬件规格不同。很难适应应用商店。实际价值不高,并且由于付款方式和许多其他原因,开发人员很难赚钱。 Android开发人员的数量暂时处于不利地位。 com Android系统优缺点概述Android通过此开放平台吸引了越来越多的手机制造商。不完善的业务管理平台尚未形成自己的标准版本兼容性。 UI界面不统一。懒惰的软件商店。不平衡的软件质量影响了用户体验。但是,可以通过逐步管理来改善这些问题。通过将来改善软硬件的兼容性和友好性以及Google的独特优势,Android必将成为越来越优秀的平台系统。 14本文的章节安排本文主要基于对Android系统结构和PXA920键盘控制器的分析。设计并实现了手机键盘驱动程序,并在实际的手机测试中成功演示了结果。讨论的内容本文分为六章。每章的主要内容安排如下。第一章绪论主要介绍了本主题的背景,来源以及本文的内容。第2章Android系统的原理Android不仅是智能电话系统,还是学习嵌入式Linux系统的相对完整的软件平台,也是一个庞大的系统,包括Linux操作系统,各种本地程序虚拟机和运行环境Java框架和Java。第3章Linux输入子系统Linux输入子系统由输入子系统的核心层,输入核心驱动程序层和事件处理层(事件处理程序)组成。这三个部分通过Driver用户空间序列形成一个输入事件,例如鼠标移动,键盘按钮按下,操纵杆移动等,以到达用户空间并将其传递给应用程序。输入核心InputLayer Driverinputinputc和相关头文件提供设备驱动程序接口和EventHandler层编程接口。第4章PXA920键盘控制器的原理和配置。我们开发的Android智能手机的处理器芯片是Marvell的第一个TD-SCDMA单芯片解决方案Marvell Pxa920。该芯片具有键盘控制器。它最多可以支持带一个按钮的矩阵键盘和最多八个直接按钮。键盘控制器可以直接连接到六个外部。向旋转编码器添加旋转编码器的成本是删除两个外部直接按钮或连接到四个外部直接按钮和两个旋转编码器。添加这两个旋转编码器的成本是通过外部直接按钮,我们添加的旋转编码器可以是滚动键,滚轮键或指轮。在本章中,我们将详细介绍Pxa920芯片的键盘控制器的功能原理及其相关寄存器的功能和配置方法。第5章键盘驱动程序设计和实现主要讨论键盘驱动程序的设计和实现。根据对Pxa920键盘控制器的先前研究和分析,设计了键盘功能模块的硬件连接方式和功能配置方式,设计并实现了键值映射方法和键盘扫描方法。这是整个键盘驱动程序的核心和关键。最后,我们使用以前对Linux输入子系统的研究来报告键值。第六章摘要和展望总结全文,并指出工作中的缺点以及需要更改的工作。鸣谢基于Android系统的手机键盘驱动器的参考参考设计与实现。第2章Android系统原理随着主要的移动终端制造商大力开发和生产基于Android的移动智能设备,Android已迅速为业界和社会所认可,并已成为整个行业的热点。基于Android平台的各种人才已逐渐成为各大公司之间竞争的焦点。 Android系统是一个开放系统。任何公司,个人开发爱好者均可参加。对于技术人员来说,Android不仅是智能电话系统,还是学习嵌入式Linux系统的更完整的软件平台。 Android系统也是一个巨大的系统,包括Linux操作系统,各种本地程序虚拟机和运行环境Java框架,以及Java应用程序的很多方面。 Android平台不仅是操作系统,而且还包含许多应用程序,例如SMS,短信客户端程序,电话拨号程序,图片浏览器,Web浏览器以及其他应用程序。这些应用程序都是用Java语言编写的,用于其他手机。操作系统在系统中固化,系统软件更加灵活和个性化。 21 Android系统架构com软件结构从宏观上看,Android是一个开放的软件系统。它包含大量的源代码。 Android系统从下层划分为上层。级别Linux操作系统和驱动本机代码CC框架Java框架和Java应用程序Android第一级由C语言实现,第二级由CC实现,第三级和第四级主要由Java代码实现。在第一级和第二级之间从Linux操作系统的角度来看,内核空间和用户空间之间的边界是在内核空间中运行的第一级,在用户空间中运行的第二,第三和第四级。第二和第三层是本机代码层和Java代码层之间的接口。在第三级和第四级之间是Android系统API的接口。对于Android应用程序的开发,低于第三级的内容是不可见的。只需考虑系统API。对于技术人员来说,Android不仅是智能手机系统。它也可以用作学习Linux中嵌入式系统的更完整的软件平台。 Android系统再次出现

本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/bofangqi/article-368037-1.html
“你这样不行