读书人

走出山寨:MTK芯片开发指南

发布时间: 2010-08-16 03:00:27 作者: kind887

 走出山寨:MTK芯片开发指南


基本信息出版社:人民邮电出版社
页码:322 页
出版日期:2010年01月
ISBN:9787115216687
条形码:9787115216687
版本:第1版
装帧:平装
开本:16
正文语种:中文
丛书名:移动开发系列

内容简介 《走出山寨:MTK芯片开发指南》内容简介:MTK平台是联发科公司推出的一种新型的手机设计解决方案,到目前为止,它已经成为了国产手机生成厂商首选的平台,其高度的模块集成特性、快捷的出货速度和低廉的价格优势催生了中国大陆数量庞大的手机研发公司,它创造了这个时代最响亮的名词:“山寨”,并引领了从2006年以来山寨机的潮流。
MTK平台的特殊性使得初次接触的开发人员上手困难,而相关资料的缺乏让广大MTK爱好者也无法完整和准确地研究该平台。《走出山寨:MTK芯片开发指南》全面地介绍了MTK应用开发的基础知识,它不仅向读者阐述了MTK上层应用开发的方方面面,而且还阐述了底层的驱动原理和具体设计。《走出山寨:MTK芯片开发指南》旨在帮助读者在较短的时间里对MTK平台开发获得全面深刻的理解与认识,从而使读者更好地把握MTK平台开发的特点和重点,为读者以后的手机设计生涯打下坚实的基础。另外,《走出山寨:MTK芯片开发指南》的所有实例都经过实际的测试,跟随《走出山寨:MTK芯片开发指南》完成所有的实例能帮助读者在掌握理论的同时,获得更多的实际经验。
《走出山寨:MTK芯片开发指南》适合作为广大专科、本科院校,编程培训中心等的学习教材和辅导教材,也适合作为广大移动开发编程爱好者的自学参考资料。
媒体推荐 山寨机为我们指明了未来的三种创新策略:一是坚定地站在用户的一边;二是将非技术的创新系统化;三是捕捉本地的机会,但在全球整合创意与资源。从某种意义上说,这是有中国特色的创新之道,能够在花费较少的情况下取得最大成效。山寨机的成功,告诉我们一个重要的道理:企业的发展并不完全在于核心技术的掌握,更重要的在于对市场的感应和这种感应之后的反应速度。
  ——《中国企业家》
山寨是否能像“沙盒创新”一样,成为新兴市场为商业世界贡献的另一颗明星,取决子山寨的低成本到底来源子创造性的低成本能力,冗余功能,还是只不过是功能多样的廉价方案。
  ——《21世纪商业评论》
“山寨产品”是市场处于无序状态时才会盛行的,它们只能寄生于正常生产和销售所照顾不到的环节,在不影响大局的前提下,它是对市场的一种补充。现在它却大有颠覆所有制造业的发展趋势,而在讲究创意价值、重视创造力的时代,“山寨产品”的大行其道,完全不可思议。
  ——《中国青年报》
是时候摘掉有色眼镜,重新审视“山寨”问题了,巴掌大小的手机背后隐藏着一条极有可能代表中国制造业希望的产业链。这股野蛮生长的力量,以目前引人注目的生产能力和市场占有率,已经从产业的谷底爬升到了半坡之上。山寨精神,正在为中国制造注入新的活力。
  ——《中外管理》
保卫山寨,是在保卫某种我们失落的精神,保卫这种精神是在反抗现代社会固有的势利。当然保卫山寨,并不是要认可某种侵犯知识产权的高模仿行为,也不是要赞同企业愉税漏税的做法。保卫山寨,保卫的是一种日渐丧失的自由精神。
  ——《南都周刊》
编辑推荐 《走出山寨:MTK芯片开发指南》是第一本MTK芯片中文开发指南,以创意、架构、设计、实用为主线,图文结合,配合实例说明,真实案例,为您揭示MTK平台开发的核心技术。
巴掌大小的手机背后隐藏着一条极有可能代表中国制造业希望的产业链。
MEDNTEK使用联发科芯片任意品牌手机适用,爱莫塔库论坛出品。
Revolution of Mobile Production手机制造业的革命
走出山寨。重拾某种我们日渐丧失的精神:创新精神!
目录
第1章 MTK的横空出世
1.1 引子
1.2 MTK简介
1.3 MTK平台的生命力
1.4 山寨来了
1.5 走出山寨的强者
1.6 来自3G的机遇和挑战

第2章 MTK软件方案
2.1 MTK软件方案组成
2.2 MTK总体软件方案架构
2.2.1 Nucleus实时操作系统
2.2.2 L1协议栈
2.2.3 设备驱动
2.2.4 L2/L3/L4层协议栈
2.2.5 MMI
2.3 MMI架构
2.3.1 Task
2.3.2 MMI与L4通信
2.3.3 框架层(Framework Layer)
2.3.4 应用层(Application Layer)
2.3.5 UI层
2.3.6 MMI开发常用目录
2.4 启动流程

第3章 MTK工程的编译
3.1 编译环境的搭建
3.1.1 工具安装与配置
3.1.2 进行开发环境检查
3.2 如何进行编译
3.2.1 包含Modis仿真环境的工程
3.2.2 不包含Modis仿真环境的工程
3.2.3 生成文件及Log日志文件
3.3 软件系统的目录结构
3.4 构建原理
3.5 配置编译选项
3.5.1 包含源代码的第三方库
3.5.2 无源代码的第三方库
3.6 烧写版本

第4章 MMI开发起步
4.1 MMI初探
4.1.1 MMI概念
4.1.2 MTK-MMI模块概览
4.2 如何浏览代码
4.3 HelloMTK
4.4 屏幕起步
4.4.1 什么是屏幕
4.4.2 如何创建新的屏幕
4.4.3 History机制
4.5 规范化
4.5.1 确定目录结构及模块相关文件
4.5.2 将相关文件路径加入Plutommi的编译配置文件
4.5.3 为新增模块增加编译开关
4.6 资源
4.6.1 字符串
4.6.2 菜单
4.6.3 图片
4.7 SDK的制作和使用
4.7.1 生成真机版本的SDK
4.7.2 生成模拟器版本的SDK
4.7.3 使用真机版本SDK
4.7.4 使用模拟器版本SDK

第5章 MTK的图形系统
5.1 概述
5.2 图形系统结构
5.2.1 模板子系统
5.2.2 绘画子系统
5.2.3 设备子系统

第6章 基本绘图
6.1 文本绘制
6.1.1 基本函数
6.1.2 字体
6.1.3 颜色
6.1.4 排版
6.2 图形绘制
6.3 图像
6.3.1 静态图像
6.3.2 动画
6.3.3 图像排版
6.4 区域裁剪
6.5 背景绘制
6.5.1 填充结构体
6.5.2 纯色背景
6.5.3 渐进色背景
6.5.4 纹理背景
6.5.5 图片背景
6.5.6 动画背景
6.5.7 系统默认背景

第7章 图层
7.1 主要作用
7.2 创建新层
7.3 激活新层
7.4 基础层
7.5 合并
7.6 通透
7.7 图层剪切
7.8 透明效果
7.9 释放图层
7.10 分配更多的内存
7.11 锁层
7.12 GDI锁

第8章 Task
8.1 创建Task
8.1.1 增加索引和ID
8.1.2 增加映射
8.1.3 配置Task
8.1.4 实现
8.2 Task的消息循环过程
8.3 使用Task
8.3.1 消息结构
8.3.2 填充消息结构体
8.3.3 投递到消息队列

第9章 文件操作
9.1 常用函数
9.1.1 FS_Open
9.1.2 FS_Close
9.1.3 FS_Read
9.1.4 FS_Write
9.1.5 FS_Seek
9.1.6 FS_Commit
9.1.7 FS_GetFile Info
9.1.8 FS_GetAttributes
9.1.9 FS_Find First
9.1.10 FS_Find Next
9.1.11 FS_Find Close
9.1.12 FS_Create Dir
9.1.13 FS_Get Drive
9.2 文件读写

第10章 控件
10.1 GUI基本控件
10.1.1 按钮(Button)
10.1.2 文本按钮(Text Button)
10.1.3 图标按钮(Icon Button)
10.1.4 单行输入框
10.1.5 提示框
10.1.6 文本图标列表控件
10.2 WGUI高级控件
10.2.1 文本图标列表
10.2.2 动态列表控件
10.2.3 左右按键

第11章 屏幕模板
11.1 系统提供的屏幕模板
11.2 自定义屏幕模板
11.2.1 定义新的屏幕模板函数
11.2.2 提取变化的元素
11.2.3 提取重绘函数
11.2.4 模板历史管理
11.2.5 退出模板

第12章 高级屏幕模板
12.1 高级模板的绘制流程
12.2 模板ID
12.2.1 模板ID的传递
12.2.2 模板ID和窗体组件、组件的属性的关联和交互
12.3 模板组件
12.3.1 构成模板的组件定义
12.3.2 各组件的属性定义
12.4 模板组件类型
12.4.1 控制类型控件
12.4.2 标准显示类控件
12.4.3 扩展显示类控件
12.5 自定义模板
12.5.1 模板数据库
12.5.2 普通模板加入DM
12.5.3 自绘制控件
12.5.4 更加漂亮的界面

第13章 多国语言
13.1 添加新的语言
13.1.1 前期准备
13.1.2 MTK支持该语言
13.1.3 MTK不支持该语言
13.1.4 自己实现输入法的总结
13.2 移植多国语言
13.2.1 语言宏控的修改
13.2.2 字库文件的添加
13.2.3 修改默认显示语言
13.2.4 移植Zi输入法
13.2.5 移植手写汉王(hanwang)输入法
13.2.6 打开MTK自带输入法支持
13.3 虚拟键盘
13.4 输入法提示符的显示

第14章 SOCKET
14.1 SOC定义浅析
14.1.1 SOCKET宏常量
14.1.2 套接字类型
14.1.3 套接字事件
14.1.4 封装的套接字函数
14.2 SOC实例分析
14.2.1 进入工程模式
14.2.2 输入URL地址
14.2.3 Socket初始化
14.2.4 请求准备工作
14.2.5 发送请求
14.2.6 连接
14.2.7 等待服务器响应
14.2.8 处理消息事件
14.2.9 回调函数执行
14.2.1 0输出结果
14.3 HTTP连接方式编程总结
14.3.1 创建Socket连接
14.3.2 设置Socket非阻塞/异步模式
14.3.3 链接准备
14.3.4 连接
14.3.5 发送HTTP请求
14.3.6 接收数据
14.3.7 关闭Socket连接
14.3.8 启动/关闭定时器
14.3.9 注册事件回调函数
14.4 精简的代码
14.5 WAP浏览器

第15章 高仿NOKIAN73
15.1 认识N73界面
15.2 待机界面分析
15.3 基本布局
15.3.1 定义宏开关
15.3.2 打开左右按键
15.3.3 上移快捷菜单
15.4 状态栏修改
15.4.1 电量和信号状态图标
15.4.2 修改状态栏重绘区域
15.4.3 移动小图标绘制坐标
15.4.4 时间显示修改
15.4.5 状态栏刷新
15.4.6 运营商名称
15.4.7 修改快捷菜单
15.4.8 注册快捷菜单事件
15.4.9 添加快捷菜单安全区
15.5 动态列表
15.5.1 添加动态列表控件
15.5.2 今天无日历项
15.5.3 列表初始化
15.5.4 音乐标题显示
15.5.5 按键切换
15.5.6 动态列表触摸事件
15.6 主菜单初步

第16章 MTK驱动开发
16.1 基本架构
16.2 MTK手机启动过程
16.3 EMI配置
16.3.1 EMI概述
16.3.2 EMI时间设置
16.3.3 EMI自动配置过程
16.3.4 EMI存储区域划分
16.4 驱动定制工具的使用
16.4.1 驱动定制工具简介
16.4.2 工具使用说明
16.4.3 GPIO/GPO设置
16.4.4 EINT设置
16.4.5 ADC设置
16.4.6 Keypad设置
16.5 设备默认值的设置
16.5.1 PWM设置
16.5.2 LCD对比度设置
16.5.3 电池电量等级设置
16.5.4 声音模块设置
16.6 可插入设备的配置
16.6.1 充电参数设置
16.6.2 辅助设备检测设置
16.6.3 USB设置
16.7 其他设备的配置
16.7.1 MSDC设置
16.7.2 触摸屏设置
16.7.3 LCD屏幕移植
16.7.4 摄像头移植
……
序言 本书编写目的
当我们谈论山寨机的时候,总会提到3个字母:“MTK”。以联发科公司名字命名的手机设计解决方案在短短的几年时间,凭借着其自身的特性,成就了无数的手机设计公司和光怪陆离的产品,采用MTK平台的手机占领了国内市场绝大部分的市场份额,创造了这个时代最响亮的一个名词:“山寨机”。
但是,由于MTK平台的特殊性,使得大多数开发人员不能很快地上手。而且MTK爱好者也无法通过有效的途径来学习这一新兴的平台。能不能有一本启蒙性的图书来指导初学者跨过MTK应用开发的门槛呢?
以上介绍的问题是我编写本书的源动力。本书将MTK的应用开发分为若干章节,在每一部分都配有大量的实例,读者可以通过这些实例的实现过程来逐步明晰整个开发过程的点点滴滴。本书的目的是为了给广大读者对MTK开发有启蒙性的作用,因此我们将重点放在了如何完成每一个模块上面,同时在宏观上让读者掌握全局的框架和设计思路。
编写这本书的时候,MTK又往后跨越了几个版本,新的功能不断涌现。但是,就应用开发特别是上层的GUI设计来说,各版本之间的代码变化不大。因此,我选择MT622606B这一经典版本进行讲解。同时,我始终认为,学习一个平台,应该重点放在其最本质和基础的部分,只有掌握该平台的核心才能在以后的设计工作中游刃有余。
本书的主要内容
本书共分为16章。
第1章主要讲述MTK的历史以及目前国内手机市场的特点。
第2章阐述了MTK的整体软件架构,并提前介绍了MMI的结构和手机启动的过程。
第3章详细介绍了MTK平台的编译过程,对每一步骤都作了详细地阐述。
第4章通过一个精练的实例,为读者讲解了MMI开发过程中的重要内容,例如菜单添加、各种资源的载入、事件的响应等,并对可能出现的问题和异常作了详细地解释。
第5章对。MTK图形系统作了梳理,对GUI、GDI等容易混淆的知识点作了详细地说明。
第6章和第7章讲解了MTK平台上的基本绘图方法,高级的图层原理和控制。对于开发中常用到的图层知识,使用了详细的例子来帮助读者理解。
第8章重点讲解了Task的原理,并用详细的步骤阐述了如何创建和使用一个Task。
第9章对MTK平台的文件操作作了归纳和分析。对常用的文件操作函数依次作出解释,并设计了一个具体的实例来辅助读者理解和掌握。
第10~12章阐述了更高级的GUI开发知识。阐述了控件的绘制原理,屏幕模板的设计以及高级屏幕模板的使用,并且通过了一个实际的例子讲述如何使用这些特性来绘制一个绚丽的屏幕界面。
文摘 插图:


MTK的横空出世
1.1 引子
可以这么说,看这本书的读者所买的第一部手机80%都是国外品牌,应该都集中在诺基亚、摩托罗拉、三星、西门子等这些品牌上。
似乎从2003年以后,手机就逐渐成为了人们的生活必需品,拥有一部手机再也不是一种奢侈。但中国庞大的市场几乎全被外国厂商垄断,他们凭借强大的资本和技术优势,不断加快新产品的推出速度并进行渠道改革,产品已覆盖了高、中、低端的消费市场。
摩托罗拉当年的V3系列,在中国消费者中引起何等的震动;诺基亚凭借其$60系统的成功,一跃从一个边缘手机厂商成长为中国市场的老大;还有西门子、三星这些企业,也在手机研发上加大投入,引领手机技术的不断创新。
而在这些璀璨的星辰里,国产手机厂商显得如此暗淡。大家也许发现了,这个领域中的引领者都是跨国大公司,他们有资金、有技术、有大量的研发人员。企业雄厚的背景,使得他们可以用几年的时间来研发一款手机,达到慢工出细活的目的。而中国的手机公司很多才刚刚完成原始积累,或许才转行该领域不久,想涉及该领域,那些垄断巨头们会不会排挤你暂且不论,即便是给你充分的外在条件让你发挥,你也很难做到。因为很多的核心技术都在他们手中,考虑到相关的配件设备迥异,手机板上各种芯片的研发集成难度,短时间内你是很难完成整机设计生产的。所以,时间就能把-个国内手机公司拖垮。在那个年代,国内很多企业都打过这方面的主意,比如曾经名声响亮的波导,曾经赞助英超的科健,现在都难以觅其踪影。
但是中国市场如此庞大,这块大蛋糕岂能让外国人独自分享?
时势造英雄,在2000年,台湾一家名为联发科(MTK)的公司进入了手机芯片设计领域。而联发科公司的进入,引发了随后手机产业中的世界大战!
读书人网 >电子与通信

热点推荐