基于ARM的平板电脑的底层硬件驱动设计29866.docx
《基于ARM的平板电脑的底层硬件驱动设计29866.docx》由会员分享,可在线阅读,更多相关《基于ARM的平板电脑的底层硬件驱动设计29866.docx(89页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、摘 要推出平板的目的是为了弥补手机和笔记本电脑之间的这块空白区域,就是为人们提供一款和手机一样携带方便、操作简单,但比手机视觉效果更好,并能像笔记本电脑一样可以快速流畅的上网、观看视频和玩游戏的产品。软件方面,除苹果自己有自己的IOS外,不管是国内还是国外厂商,由于google的开源,基本都选择了 andriod操作系统作为开发平台。Android是一个基于linux内核的操作系统,在一款产品的开发过程中,硬件驱动程序的开发和调试是一项艰巨的任务,驱动程序的质量直接影响产品的性能和稳定性,所以对平板上驱动程序的研究和设计具有实际工程意义。此次设计针对平板电脑中常用的几个硬件驱动进行了研究和设计
2、,如LCD驱动,PWM背光驱动,按键驱动等。旨在熟悉驱动设计流程,掌握驱动设计的一般方法。关键字:平板电脑,Android,linux,硬件驱动ABSTRACCTThe purrpose of thhe lauunch oof thee tabllet iss in oorder to make up the piecee of blankk areaa betweeen mobille phoones aand laaptop compuuters for ppeoplee to offerr a devicce as easy as moobile phonee to caarry, si
3、mplle to operaate, but betteer than the mobille phonee visuaal efffects, and the same as thhe lapptop can qquicklly acccess to the Interrnet, watchhing vvideoss and playiing gaames. On tthe sooftwarre sidde, inn addiition to Apppless own IOS, wwhetheer dommesticc or foreiign maanufaccturerrs, becaau
4、se oof gooogle openedd the androoid soource code, basiicallyy choosse the andriiod operaating systeem as thhe devellopmennt plaatformm. Andrroid iis a Linuxx kerneel-basedd operratingg systtem, in tthe prrocesss of a pproducct devellopmennt, deveelopinng andd debuuggingg hardwware ddriverrs is an ar
5、duoous taask, the qualiity of the driveer direcctly imppact oon prooduct perfoormancce andd stabbilityy, So thee reseaarch aand deesign of the driveer on the Tableet PC has a practtical enginneerinng signiificannce. Thiss papeer willl ressearchh and desiggn a ffew hardwware ddriverrs that commoonly
6、uused iin thee Tableet PC, suchh as LCD ddriverrs, PWM backllight driveer, keey driivers and sso on. The purpoose of this desiggn is too familliar to thee drivver designn proccess aand grrasp the generral appproacch to driveer desiggn.Keywordds: taablet pc, androiid, linuux, harddware driveers目 录第一章
7、 引言51.1 ARRM处理器介介绍51.2 anndroidd 操作系统统介绍61.3 平板板电脑驱动开开发概述7第二章软硬件件平台介绍和和启动过程分分析92.1 硬件平平台介绍92.2 软件平平台介绍92.3 启动过过程分析10第三章 LCDD驱动设计及及实现133.1 显示控控制器及显示示器硬件配置置133.1.1 SS5PV2110 显示控控制器133.1.2 三三星9.7寸IPS屏LTN0997XL022133.1.3 显显示模块硬件件连接方式143.2 anddroid下下的LCD驱动153.2.1 LLCD 硬件件时序参数设设置153.2.2 LLCD硬件设设备注册163.2.3
8、 fframbuuffer驱驱动注册18第四章 PWMM背光驱动设设计及实现194.1 PWMM背光控制器硬硬件连接194.2 linnux内核PWM驱动194.2.1 PPWM背光设设备注册194.2.2 PPWM背光驱驱动注册204.3 PWMM 背光在anddroid HAL 层层移植224.3.1 什什么是硬件抽抽象层224.3.2 HHAL的实现现机制234.3.3 ppwm背光的的HAL层实现现24第五章 接键驱驱动设计及实实现275.1 接键硬硬件链接以及及功能要求275.2内核空间间按键驱动设设计和实现275.2 anddroid对对按键的重映映射32第六章 振动电电机驱动设计
9、计及实现356.1功能要求求以及硬件连连接356.2内核空间间振动电机驱驱动设计及实实现356.2.1 什什么是timmed GPPIO356.2.2 振振动电机的TTimed GPIO驱驱动实现366.3振动电机机驱动HALL层的实现40第七章 WM88976声道道自动切换设设计及实现437.1功能要求求以及硬件链链接437.2内核空间间声道自动切切换设计及实实现447.2.1什么么是swittch IOO447.2.1 sswitchh IO 耳耳机插拔检测测驱动设计及及实现447.2.2 wwm89766声道切换控控制实现48总结51参考文献522致谢53外文资料原文54译文57第一章
10、引言2010年1月月份苹果公司司发布了iPPad平板电电脑,从此为为IT行业带带来了一个全全新的产业。iiPad定位位是介于智能能手机和笔记记本电脑之间间的产品,提提供浏览互联联网、收发电电子邮件、观观看电子书、播播放音频或视视频等功能。从从产品定位我我们可以看出出,苹果公司司推出iPaad的目的是是为了弥补手手机和笔记本本电脑之间的的这块空白区区域,就是为为人们提供一一款和手机一一样携带方便便、操作简单单,但比手机机视觉效果更更好,并能像像笔记本电脑脑一样可以快快速流畅的上上网、观看视视频和玩游戏戏的产品。iiPad的推推出,可以说说开启了后PPC时代,其其火爆的销量量让以前其他他众多处于观
11、观望的厂商也也迅速杀入的的这块市场。得益于集成电路路的高速发展展,以前需要要很多电路才才可以完成的的功能现在都都被高度整合合到了SOCC之中(片上上系统)。所所以和PC相相比,平板电电脑可以把体体积做得更小小。功耗做得得更底。从硬硬件和软件的的角度来讲,最最关键的分别别是SOC和和操作系统。在在SOC这一一块,国外主主要被高通、三三星、TI、NVIDIA这些厂商所占据。这些厂商做出来的SOC集成度高,功能强劲,CPU主频现一般在1G-1.5G左右。基本已经过渡到双核时代。终端制造厂商做出来的平板终端主要面向高端消费市场。在国内,几家面向移动多媒体终端的IC设计公司也推出了性能优异的SOC芯片。
12、如:珠海全志,福州瑞芯微,北京君正,晶晨半导体等。这些厂商的推出的SOC集成度也较高。主频从800MHZ-1.2GHZ,均为单核处理器。整体上比国外大厂要低一个档次。但是,用这些厂商做出来的平板方案成本很低,更复合中国消费者的消费习惯。所以市场也非常的广阔。在软件方面。除苹果自己有自己的IOS外,不管是国内还是国外厂商,由于google的开源,基本都选择了 andriod操作系统作为开发平台。所以在这个平台上的软件资源非常丰富。对于方案设计商和终端制造商,只要具备一定的开发实力,都可以以这个平台做出差异化地方案。1.1 ARRM处理器介介绍ARM是Advvancedd RISCC Machhi
13、nes的的缩写,即可可以认为是一一个公司的名名字,也可以以认为是对一一类微处理器器的通称,还还可以认为是是种技术的名名字。目前,ARMM公司专门从从事基于RIISC技术芯芯片的设计开开发,作为知知识产权供应应商,ARMM 的商业模模式主要涉及及 IP 的的设计和许可可,而非生产产和销售实际际的半导体芯芯片。他们向合作伙伴伴(包括世界界领先的半导导体公司和系系统公司)授授予 IP 许可证。这这些合作伙伴伴可利用 AARM 的 IP 设计计创造和生产产片上系统设设计,但需要要向 ARMM 支付原始始 IP 的的许可费用并并为每块生产产的芯片或晶晶片交纳版税税。除了处理理器 IP 外,他们还提供了了
14、一系列工具具、物理和系系统 IP 来优化片上上系统设计.图1-1 AARM 产品品线:提供领领先的设计、实实现和应用正因为 ARMM 的 IPP 多种多样样以及支持基基于 ARMM 的解决方方案的芯片和和软件体系十十分庞大,全全球领先的原原始设备制造造商 (OEEM) 都在在广泛使用 ARM 技技术,应用领领域涉及手机机、数字机顶顶盒以及汽车车制动系统和和网络路由器器。当今,全全球 95% 以上的手手机以及超过过四分之一的的电子设备都都在使用 AARM 技术术。在平板领领域,国外厂厂商基本青一一色的使用了了ARM的内内核或者具有有ARM IISA的处理理器。在国内内,除北京群群正自主研发发基于
15、MIPPS ISAA的xburrst架构CCPU以外。其其他厂商都采采用了ARMM corttex A88或corttex A99内核,在此此基础上再加加入厂商自己己的外设如UUSB,LCCDC,HDDMI,auudio ccodec,videoo codeec等,形成成具有自主特特色的SOCC。1.2 anndroidd 操作系统统介绍Androidd最早是由ggooglee在20077年发布的一一款操作系统统,Andrroid是一一种以Linnux为基础础的开放源代代码操作系统统,主要使用用于便携设备备。Andrroid操作作系统最初由由Andy Rubinn开发,最初初主要支持手手机。2
16、0005年由Gooogle收收购注资,并并组建开放手手机联盟开发发改良,逐渐渐扩展到平板板电脑及其他他领域上。自自2007年年发布以来,AAndroiid已经经历历了数个版本本的更新,市市面上采用该该系统的移动动设备数量也也在飞速增长长。目前市面面上实用的比比较多的版本本为andrroid2.3, 代号号为姜饼。GGooglee最新的版本本为4.0,代号为冰欺欺凌三明治。根据google的官方统计,就目前的市场占有率来看,2.3版本为市场占有市场份额最多的anroid版本。约占了整个android 的63.9%。在该平台上软件资源也是最丰富的。图1-2 Annroid设设备中各版本本占有率 1
17、.3 平平板电脑驱动动开发概述驱动程序是一种种实现硬件具具体功能的软软件。做驱动动程序开发不不仅仅要明白白操作系统为为我们提供的的驱动模型,常常用的数据结结构。而且要要理解我们所所操作的硬件件。明白硬件件的工作原理理。所以驱动动程序的开发发工作非常具具有挑战性。在在现在市长上上销售的平板板中,大多数数在硬件平台台上,选用AARM处理器器,软件平台台上选用 androoid(苹果果有自家的IIOS),所所以,平板电电脑上的驱动动开发可以说说是在ARMM平台上的aandroiid驱动开发发,由于anndroidd是linuux内核,所所以andrroid下有有很多为标准准的linuux 驱动,如如
18、串口驱动, frameebuffeer驱动,ttouch panell驱动等。但但androoid 也有有自己的专有有驱动。具体体如下:1.Androoid Biinder: 基于OppenBinnder框架架的一个驱动动,用于提供供Androoid平台的的进程间通信信功能。2.Androoid电源管管理(PM): 一个基于于标准liuunx电源管管理系统的轻轻量级Anddroid电电源管理驱动动,针对嵌入入式设备做了了很多优化。3.低内存管理理器(Loww Memoory Kiiller): 根据系统统运行的需要要杀死进程以以释放需要的的内存。4.匿名共享内内存(Ashheme): 为进程间
19、间提供大量共享内内存,同时为为内核提供回回收和管理这这个内存的机机制。5.Androoid PMMEM(phhysicaal): PMEMME用于向用用户空间提供供连续的物理理内存区域。6.Androoid Loogger: 一个轻量量级的日志设设备,用于抓抓取Andrroid系统统的各种日志志。7.Androoid Allarm: 提供了一个个定时器,用用于把设备从从睡眠状态唤唤醒,同时它它还提供了一一个即使在设设备睡眠时也也会运行的时时钟基准。8.USB GGadgett: 驱动 一一个基于标准准liunxx usb gadgeet 驱动框框架的设备驱驱动,Anddroid的的USB驱动动
20、是基于gaadget框框架。9.Androoid raam Connsole: 为了提供供调试功能,AAndroiid允许将调调试日志信息息写入一个被被称为RAMM Conssole的设设备里,它是是一个基于RRAM的Buuffer.10.Andrroid ttimed deivcce: 提供了对对设备进行定定时控制功能能,目前支持持vibraator 和和LED设备备.11.Yafffs2文件系系统: Andrroid采用用Yaffss2作为MTTD nannd flaash文件系系统。同时,同标准的的linuxx相比,anndroidd驱动开发中中,为我们提提出了一个新新的概念HAAL(H
21、arrdwaree Absttract Layerr硬件抽象层层). 是Gooogle因应应厂商希望不不公开源码的的要求下,所所推出的新观观念。HAL运行行在用户空间间,这样,驱驱动程序就可可以不受GPPL的限制,不不用公开源代代码。他们的的硬件规格和和驱动代码就就可以很好的的保护驱动。这这对很多设备备制造商来说说,是一种良良好的自我保保护。在anndroidd移植中,HHAL也是需需要驱动人员员去开发的一一部分。针对我们的自己己搭建的硬件件平台,在本本文中将重点点阐述如下驱驱动的移植和和开发:1.三星9.77英寸IPSS显示面板显显示驱动设计计。2.显示面板PPWM背光驱驱动程序设计计。3.
22、平板电脑上上按键驱动设设计。4.振动电机驱驱动设计。5.WM89776 coddec研究,配配合硬件实现现耳机插入检检测,着重解解决外放喇叭叭和耳机声道道自动切换问问题。第二章软硬件件平台介绍和和启动过程分分析2.1 硬件平平台介绍在硬件平台上选选用三星蜂鸟鸟ARM处理理器s5pvv210.其其具有如下特特性:l CorteexTM-AA8架构 l 32KB I/D缓存存,512KKB二级缓存存 l 64位多总总线架构 l 支持MPEG44,H.2633,H.2644 10800P30ffps编解码码以及MPEEG4 l 1080P330fps解解码 l JPEG解解码高达800Mpixeel
23、s/s l 2D,3DD高性能加速速 l HDMI,TV OUUT 根据应用需求,我我们板载如下下硬件:1. 三星K4T1GG084QEE 512MMB DDRR2.2. 9.7寸IPSS显示屏,分分辨率为10024*7668.3. 9.7寸10点点电容触摸屏屏。采用深圳圳goodiix GT88105芯片片组.4. HDMI高清输输出接口.5. OV2655 200W像像素前置摄像像头.6. WM8976 audioo codeec,自带AAB类功放.7. Kionix KXTF99-20500 加速度传传感器.8. Atheross AR61102 WIIFI.9. 7400MA 锂电池,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM 平板 电脑 底层 硬件 驱动 设计 29866
限制150内