第1章基于Cortex-A8的FreescaleiMX51体系构架 1
1.1iMX51系统框图与功能简介 1
1.1.1iMX51应用处理器的应用 2
1.1.2iMX51应用处理器CPU的结构 2
1.1.3iMX51应用处理器的多媒体能力 2
1.1.4iMX51应用处理器的物理性能及扩展能力 2
1.1.5iMX51应用处理器的特点 3
1.2ARMCortex-A8内核(CPUCache、NEONVFP和ETM) 4
1.3iMX51应用处理器中的IPU与VPU单元 5
1.3.1图像处理单元IPU 5
1.3.2视频处理单元VPU 6
1.4iMX51应用处理器的图形处理(GPU)功能 6
1.4.1 3D图形处理单元(3DGPU) 7
1.4.2 2D图形处理单元(2DGPU) 7
1.5iMX51应用处理器的输入输出接口 8
1.6iMX51应用处理器的时钟、电源与JTAG口 9
1.7iMX51应用处理器的典型系统 12
1.8参考文献 13
第2章基于iMX51的系统硬件介绍 14
2.1内容概述 14
2.2硬件系统的总体框图和功能组成 15
2.3iMX51应用处理器的启动模式设置 17
2.4存储器部分(DDR2、SPINOR、NANDFlash) 18
2.4.1DDR2SDRAM 18
2.4.2NANDFlash 21
2.4.3SPINOR 22
2.5电源管理 22
2.5.1MC13892的电源输出 22
2.5.2iMX51与MC13892之间的信号接口控制 24
2.5.3电池充放电电路 24
2.5.4电阻触摸屏接口电路 26
2.6USB接口 26
2.6.1USB的定义 26
2.6.2USB标准简介 27
2.6.3USB-OTG设计 27
2.6.4USB-HS设计 29
2.6.5USB扩展接口 29
2.7DVI显示接口 32
2.8MMC/SD卡接口 33
2.9UART调试串口和JTAG调试口 36
2.10Ethemet网口 38
2.11AudioCODEC与音频输入输出 39
2.12Camera接口 42
2.13键盘功能 43
2.14扩展接口 43
2.14.1Bluetooth和WIFI扩展接口 43
2.14.2 3G扩展接口 44
2.15参考文献 45
第3章基于Cortex-A8iMX51的WinCE6.0系统移植与开发 46
3.1WindowsEmbeddedCE6.0介绍 46
3.1.1WinCE6.0简介 47
3.1.2WinCE6.0的安装 48
3.1.3WinCE6.0编译环境 57
3.1.4WinCE6.0体系架构 85
3.2WinCE6.0软件开发包的安装、编译、下载与调试 94
3.2.1WinCE6.0软件开发包的安装 94
3.2.2WinCE6.0软件开发包的编译 103
3.2.3WinCE6.0软件开发包的镜像下载 112
3.2.4WinCE6.0软件开发包的调试 117
3.3基于怡鼎MX51开发系统的WinCE6.0的Bootloader 121
3.3.1iMX51芯片内部Bootloader 121
3.3.2怡鼎MX51WINCE软件开发包的XLDR 130
3.3.3怡鼎MX51WinCE60软件开发包的EBOOT 132
3.4WinCE6.0OEM适配层 144
3.4.1WindowsCE操作系统的启动顺序 144
3.4.2OAL的电源管理 156
3.5WinCE6.0驱动概述 161
3.5.1文件系统驱动、线程驱动与本地驱动 162
3.5.2用户模式驱动与内核模式驱动 164
3.5.3加载驱动 164
3.5.4驱动的中断处理 165
3.5.5驱动的电源管理 165
3.6怡鼎MX51WinCE60驱动详述 166
3.6.1音频编解码器驱动 166
3.6.2显示驱动 170
3.6.3摄影头驱动 176
3.6.4eSDHC驱动 180
3.6.5网络驱动 182
3.6.6电源管理芯片驱动 184
3.6.7USBOTG驱动 192
3.7WinCE60应用程序开发与实践 203
3.7.1导出并安装SDK 203
3.7.2使用SDK编译HelloWorld 206
3.7.3使用PB编译VPU测试代码 210
3.7.4使用PB编译OpenGLES20 3D应用程序 211
3.7.5多媒体 212
3.8参考文献 217
第4章基于Cortex-A8的iMX51的Android系统移植与应用程序开发 218
4.1Android简介 218
4.1.1Android系统架构 218
4.1.2Android核心组件 220
4.1.3Android应用程序基础 227
4.2基于iMX51的怡鼎Android系统使用介绍 235
4.3Android系统的开发环境及编译 247
4.3.1搭建PC开发环境 248
4.3.2获取Android官方代码 248
4.3.3应用怡鼎补丁 249
4.3.4Android源代码结构 249
4.3.5源代码编译 252
4.4Linux内核及驱动程序 254
4.4.1Linux内核简介 254
4.4.2Linux驱动程序简介 256
4.5AndroidBSP移植与开发 267
4.5.1Bootloader 267
4.5.2Android内核移植 271
4.5.3AndroidHAL移植与实现 279
4.5.4常见问题 287
4.6Android应用程序开发 288
4.6.1搭建应用程序开发环境 289
4.6.2HelloWorld应用程序 292
4.6.3多媒体播放应用程序 296
4.6.4浏览器应用程序 302
4.6.5 3D应用程序 307
4.7本章小结 314
4.8参考文献 315