平板电脑 Android BSP 底层驱动开发
平板电脑 Android BSP 底层驱动开发
摘要
Dynabook 是艾伦·凯于 1968 年所提出的电子书的概念,他想像这是一台可以
带着跑的电脑。但这款平板在市场并没有什么人气。
1984 年首款在消费者平板市场获得成功的产品 KoalaPad,允许小孩利用触笔
或者手尖在家庭电脑的屏幕上画画,售价比较合理为 195 美元(约合目前 425 美元)。
第 一 台 商业 化 的 平 板 电 脑 是 1989 年 9 月 上 市 ,由 GRiD Systems 制 造 的
GRiDPad,它采用了与当时个人电脑相同的 MS-DOS 操作系统。
2001 年,微软公司 CEO 比尔?盖茨第 2 次提出平板电脑概念,并推出了 Windows
XP Tablet PC 版,使得一度消失多年的平板电脑产品线再次走入人们视线。
2010 年 1 月 27 日,苹果公司发布旗下平板电脑产品——iPad。同一时期,其
他品牌厂商也已经着手准备进入这一全新市场,甚至更早展示了设计原型,但最终产品
发布和正式销售均落后苹果公司较长时间。与其争锋的便是谷歌的 Android 系统,谷歌
的模式和当年的微软比较相似,虽然其并不生产硬件的平板产品,但其系统开源性和免
费性聚拢了一大批的厂商。戴尔、惠普、苹果为代表的欧美 PC 厂商以及智能手机厂商
代表摩托罗拉、黑莓,联想、汉王为代表的国内厂商都发布了多款平板电脑。可以看出
这个时代是平板电脑的井喷时代,各种产品层出不穷,因此看出这是平板电脑的黄金年
代。
近两三年内,谷歌安卓系统平板电脑阵营不断壮大,国内平板自主开发已是热潮;
平板电脑开发流程越是熟练,android 系统框架实现的研究更透彻;使得强大的 linux
操作系统快速进军消费电子领域的具体实现;ARM 架构的 CPU 平台应用最广范。现在追
逐的是硬件及配置,Android 系统升级, linux BSP 底层驱动的稳定;导致是 Android
上层的 Applications 品质不断提高;linux BSP 底层驱动开发技术更有水准;熟练的平
板电脑开发正进入白热化阶段。
第 1 页 共 53 页
平板电脑 Android BSP 底层驱动开发
关键词:
平板电脑的发展与开发流程;
ARM 架构的 CPU 平台
硬件配置
android 系统框架实现;
linux 操作系统;
linux BSP 底层驱动开发;
第 2 页 共 53 页
平板电脑 Android BSP 底层驱动开发
TABLET PC ANDROID BSP UNDELYING DRIVER DEVELOPMENT
ABSTRACT:
According Tablet PC (English: Tablet Personal Computer, referred to as a Tablet PC Flat
PC, Tablet, Slates Only), is a small, portable personal computer, touch screen as the basic
input device. It has a touch screen that allows the user through a stylus or digital pen to the
job rather
than the traditional keyboard or mouse. Through the built-in handwriting
recognition, on-screen soft keyboard, voice recognition or a real keyboard (if the models so
equipped). Tablet PC by Bill Gates, should support chips from Intel, AMD and ARM
architecture, from Microsoft's Tablet PC concept product point of view, the Tablet PC is a not
a flip, no keyboard, small enough to put ordinary people handbags but fully functional PC
devices.
In 1964, the RAND tablet, no keyboard design, equipped with a digital stylus. Use the
the Zhezhi stylus users can make menu selections, charting, and even to write software and
other operations.
Dynabook proposed by Alan Kay in 1968 by the concept of e-books, and he imagined
that this is a computer with a run. But the tablet in the market and no popular.
1984's first successful product in the consumer tablet market KoalaPad, allow children to
use the stylus or fingertips to draw on the computer screen in the family, the more reasonable
price of $ 195 (about $ 425).
The first commercialization of the Tablet PC is listed in September 1989, manufactured
by GRiD Systems GRiDPad, it uses the same MS-DOS operating system with the PC.
2001, Microsoft CEO Bill? Gates 2nd Tablet PC concept, and the launch of Windows XP
Tablet PC Edition, making it once disappeared years Tablet PC product line into sight again.
January 27, 2010, Apple released its Tablet PC product - the iPad. During the same
period, the other brand manufacturers have also been preparing to enter this new market, or
even earlier demonstrated prototype, but the release of the final product and the official sales
behind Apple long time. Its Commander is Google's Android system, Google is quite similar
第 3 页 共 53 页
平板电脑 Android BSP 底层驱动开发
to the model that Microsoft, although its not flat products production hardware, but its system
open source and free to gather a large number of vendors. Dell, HP, Apple, represented by the
PC manufacturers in Europe and America as well as representative of the smart phone
manufacturer Motorola, BlackBerry, Lenovo, HW, domestic manufacturers have released a
variety of Tablet PC. It can be seen that this era is the era of Tablet PC's blowout, the endless
variety of products, so to see that this is the golden age of the Tablet PC.
The past two or three years, the Google Android system Tablet PC camp growing
domestic flat-panel self-development is the craze; Tablet PC development process more
skilled, more thorough the android system framework to achieve the research; powerful Linux
operating system to quickly enter the consumer electronicsthe concrete realization of the field;
chase the hardware configuration of the Android system upgrade,
the the linux BSP
underlying driver stable; the lead continuously improve the quality of the Android upper
Applications; skilled Tablet PC development is entering linux BSP underlying drive to
develop more technical level;The white-hot stage.
Key words:
Tablet PC development and the development process;
ARM architecture CPU platform;
Hardware configuration;
framework of the android system implementation;
linux operating system;
the linux BSP underlying Driven Development;
第 4 页 共 53 页
平板电脑 Android BSP 底层驱动开发
目录
1 绪论.............................................................................................................................................................7
1.1 平板电脑发展..................................................................................................................................7
1.1.1 平板电脑用户应用特征.....................................................................................................7
1.1.2 慧聪邓白氏预测平板电脑发展趋势.............................................................................8
1.2 平板电脑开发流..............................................................................................................................8
1.2.1 平板电脑产品定义及评估................................................................................................9
1.2.2 平板电脑 ID 设计.................................................................................................................9
1.2.3 平板电脑 MD 设计...............................................................................................................10
1.2.4 平板电脑硬件设计............................................................................................................ 10
1.2.5 平板电脑物料采购............................................................................................................ 11
1.2.6 平板电脑软件开发............................................................................................................ 11
1.2.7 平板电脑产品测试............................................................................................................ 11
1.3 平板电脑 ARM 架构的 CPU 平台...............................................................................................11
1.3.1 cpu 架构.................................................................................................................................11
1.3.2 平板电脑 ARM 架构处理器...............................................................................................12
1.4 平板电脑配置.................................................................................................................................14
1.4.1 平板电脑硬件明细............................................................................................................. 14
1.4.2 平板电脑配置参数............................................................................................................. 18
2 ANDROID 系统框架实现...................................................................................................................... 19
2.1 ANDROID 系统............................................................................................................................. 19
2.1.1 Android 的概述...................................................................................................................19
2.2 ANDROID 的层次划分...............................................................................................................20
2.3 ANDROID 开发级别及层次..................................................................................................... 23
第 5 页 共 53 页
平板电脑 Android BSP 底层驱动开发
3 LINUX 操作系统.....................................................................................................................................23
3.1 LINUX 操作系统...........................................................................................................................23
3.1.1 linux 的概述........................................................................................................................ 23
3.1.2 linux 开发环境构建............................................................................................................24
3.3 LINUX 设备驱动开发....................................................................................................................26
3.3.1 linux 内核模块.................................................................................................................. 26
3.3.2 字符设备驱动程序............................................................................................................ 27
3.3.2 linux 设备驱动中的机制...............................................................................................31
4
ANDROID BSP 底层驱动开发.........................................................................................................35
4.1 ANDROID 驱动与 LINUX 驱动的区别...................................................................................35
4.2 ANDROID BSP 之 LCD 驱动模块开发....................................................................................35
4.2.1 Framebuffer 显示驱动...................................................................................................... 35
4.2.2 LCD 驱动 (FrameBuffer)实例开发.......................................................................... 36
4.2.3 帧缓冲(FrameBuffer)设备驱动结构:......................................................................41
5 结论.........................................................................................................................................................51
参考文献.....................................................................................................................................................52
致谢.................................................................................................................................................................1
第 6 页 共 53 页
平板电脑 Android BSP 底层驱动开发
1 绪论
1.1 平板电脑发展
2010 年,苹果 iPad 引爆了平板电脑的热潮。根据 IDC 的预计,2011 年全球平板电
脑销量将达到 4460 万台,2012 年这一数字将达到 7080 万台。这对平板电脑厂商而言是
一个绝好的市场机会,但同时随着越来越多的厂商进入这一领域,更激烈的市场竞争也
随之而至。如何在众多品牌中脱颖而出,是否能够抓住消费者需求特征,把握平板电脑
发展趋势,应是各厂商在这一较量中能否立足的关键。
1.1.1 平板电脑用户应用特征
(1)娱乐功能是平板电脑用户的主要应用。根据相关调查,玩游戏是平板电脑用户最
主要的应用内容,其后依次为信息搜索、电子邮件、阅读新闻、SNS 应用等等。大部分
用户每天都会用到的功能有:上网、收发邮件、看新闻、SNS、电子书、游戏等等。偶
尔用到的功能有:地图、视频、听音乐、电视、购物、听音乐等等。
图 1.1 数据来源:慧聪邓白氏研究
(2)平板电脑用户主要在家使用,主要的使用地点是起居室,其次为客厅。根据相关
研究,超过一半的平板电脑用户每天使用超过一小时,并且整个星期都在使用。
(3)网络连接、扩展性是用户最为关注的平板电脑功能。WiFi 具有覆盖范围广、传
输速度快、接入方便、收费低廉等等特性,是目前平板电脑用户最经常使用的网络接入
方式,也是其最关注的平板电脑功能。同时平板电脑用户也较为注重设备的扩展性,希
望配备 USB 接口、存储卡扩展插槽、视频输出接口等等。
第 7 页 共 53 页
平板电脑 Android BSP 底层驱动开发
图1.2 数据来源:慧聪邓白氏研究
1.1.2 慧聪邓白氏预测平板电脑发展趋势
(1)目前的平板电脑主要面向娱乐应用,而其商务应用并没有得到各厂家的重视。预
计未来商务型平板将取得长足发展,最终形成娱乐型平板和商务型平板两种主要的平板
电脑类型。
(2)手机、平板、笔记本将高度融合、界限将越来越模糊。华硕在刚刚过去的台北电
脑展上展出了一款手机电脑组合设备——Padfone。用户可以在一台设备上根据需要自由
转换手机和平板电脑的功能。同时,越来越多的厂商开始为平板电脑设计可拆卸的底座。
只需将平板电脑插入移动键盘底座,即可实现从平板到笔记本的转换。
(3) 7-10 寸屏幕的平板电脑将是主流的屏幕尺寸。由于苹果 9.8 寸屏的 iPad 受到消费
者的追捧,目前市场上主流的平板电脑屏幕尺寸是 9-10 寸。但 7 寸的平板因具有更高
的便携性,预计在未来会受到消费者的认可。
(4)Android 将成为主流的平板电脑操作系统。虽然目前 iOS 系统占据平板电脑一半
以上的市场份额,但 Android 系统以其免费与开放性,受到众多厂商的追捧,并且也吸
引了越来越多的用户。
1.2 平板电脑开发流
第 8 页 共 53 页