第1章ARM基础 3
1.1 ARM基础 3
ARM介绍 3
ARM特点 3
ARM与单片机的比较 4
1.2 S3C44B0X介绍 5
S3C44B0X简介 5
S3C44B0X特性 6
S3C44B0X内部结构图 10
芯片引脚定义 10
1.3 S3C2440介绍 13
S3C2440介绍 13
S3C2440内部结构图 19
1.4 ARM9芯片功能比较 20
S3C2410、 S3C2413和S3C2440功能比较 20
PXA270和S3C2440功能比较 22
第2章I EO终端模块 24
2.1 LCD原理 24
LCD原理与分类 24
液晶显示模块 27
2.2 GPRS原理 29
概述 29
GPRS的特点 30
GPRS网络总体结构 31
Q2406B无线模块引脚信号 33
2.3微型打印机原理 35
热敏型微型打印机原理介绍 35
热敏型微型打印机接口 36
热敏型微型打印机设计注意事项 36
2.4 CAMERA原理 37
概述 37
CAMERA结构 37
2.4.3 CAMERA常用术语 38
第3章IEO终端产品线规划 43
3.1 IEO整体解决方案的作用 43
IEO可持续发展的业务架构与网络架构 43
IEO解决方案的业务特点 43
3.2 IEO 2008终端技术方案分析 44
最终用户分析 44
IEO 2008可能的技术方案 45
S3C2440开发板测试与分析 50
3.3 IEO产品线研发决策 55
外部专家与内部技术评审 55
总体方案决策 56
3.4开发者体会 58
第4章I EO 2008终端硬件设计与调试 61
4.1基于S3C2440的基础板设计与调试 61
原理设计 61
基础板电路设计 61
PCB设计 77
调试工程师第一块板的调试体会 78
4.2基于S3C2440的核心板设计与调试 82
原理设计 83
PCB设计 85
调试与总结 88
4.3基于S3C44B0X的基础板设计与调试 92
原理设计 92
PCB设计 93
通过ARM7基板的错误总结的实践技能 95
4.4基于S3C44B0X的核心板设计与调试 96
原理设计 96
ARM7核心板的PCB设计 101
ARM7核心板调试前的准备 102
ARM核心板调试记录 103
4.5开发者体会 105
顺利调试ARM9核心板的担忧 105
ARM7调试中学到的技能 106
第5章ARM硬件产品化研发思考 108
5.1选择ARM的机会与陷阱 108
ARM的应用 108
ARM芯片选择 108
ARM的机会与陷阱 115
5.2 ARM产品化研发——结构决定价值的实践 116
从营销的角度分析商店里的“衬衣” 116
ARM产品用户购买的是ARM板吗 118
结构决定价值的实践——木机箱与整机PCB结构套板 118
5.3从原理图到PCB有多远 120
S3C2440核心板的布板沟通记录 120
高速PCB板设计的叠层 125
5.4 EMC/EMI常见问题 129
EMI/EMC设计经典问题 129
产品内部的EMC设计技巧 138
第6章Bootloader原理 143
6.1 Bootloader的作用 143
6.2 Bootloader的启动流程 143
6.3 Bootloader之vivi分析与修改 149
6.4开发者体会 156
开发者理解的启动流程 156
vivi移植工作步骤与实践记录 157
vivi中添加USB下载功能 159
第7章Linux内核与文件系统 162
7.1 Linux与uCLinux的比较 162
7.2 Linux内核简介 163
7.3 Linux内核源代码的结构 164
7.4 Linux 2.4与Linux 2.6内核的不同 164
7.5 Linux驱动原理 167
7.6 Linux 2.4与Linux 2.6内核在驱动方面的不同 172
7.7嵌入式文件系统 187
YAFFS与JFFS文件系统 189
在Linux 2.4.18内核中添加YAFFS文件系统 189
7.8开发者体会 190
系统移植分析 190
嵌入式文件系统组合分析 191
第8章 键盘驱动软件 194
8.1扫描键盘原理 194
8.2扫描键盘驱动设计与实现 195
Linux 2.4.18环境下的驱动软件 197
Linux 2.6.12环境下的驱动软件 204
8.3开发者体会 211
Linux 2.4.18开发调试中的问题与分析 211
Linux 2.6.12开发调试中的问题与分析 216
产品整机现象与建议 227
第9章GPRS软件 229
9.1 AT指令 229
AT指令说明 229
WAVECOM 2406B模块常用的AT指令 229
9.2 TEXT模式收发短信 232
TEXT模式运行平台 232
TEXT模式收发短信设计及实现 232
9.3 PDU模式收发短信 242
SMS的PDU编码规则 242
PDU模式运行平台 244
PDU模式收发短信设计及实现 244
9.4开发者体会 249
第10章MS12864R汉字LCD模块软件 251
10.1 MS 12864R汉字显示模块 251
MS 12864R模块介绍 251
接口板原理图 253
10.2开机显示代码设计 254
端口初始化 254
串行数据的发送 254
10.3驱动软件设计与调试 257
开发平台 257
驱动软件代码分析 258
10.4开发者体会 267
驱动测试程序中的问题 267
从Linux 2.4.18到Linux 2.6.12移植中的问题 268
第11章TFT 2.8英寸彩屏软件 272
11.1 TFT 2.8英寸彩屏 272
11.2 TFT 2.8英寸彩屏驱动设计与实现 273
主要寄存器介绍 273
端口初始化配置 274
读/写数据的实现 275
驱动软件源代码 276
11.3如何在TFT 2.8英寸彩屏上显示汉字 294
汉字显示原理介绍 294
TFT彩屏汉字显示源代码 295
11.4 TFT2.8英寸彩屏应用软件界面设计比较与实现 301
源文件中包含图片头文件的实现 302
把图片以二进制存储的实现 303
两种实现方法的比较 304
11.5嵌入式系统汉字支撑设计 305
11.6开发者体会 305
TFT 2.8英寸LCD调试 305
TFT 3.2英寸LCD调试 306
LCD调试总结 307
第12章 多模块测试与系统汉字支撑 309
12.1运行平台 309
综合测试说明 309
软、硬件平台 310
关于Linux内核平台版本和文件系统的说明 310
12.2测试软件 311
12.3目前dispsms中存在的问题 311
存在的问题 311
有待进一步完善的工作 311
12.4如何读取并显示短信内容 311
读取转换显示短信内容的流程图 311
字符编码基础知识 312
12.5如何在Linux系统添加中文支持 315
文件移植 315
具体步骤 315
运行 315
12.6 GPRS以TEXT模式测试 317
接收显示 318
发送接收显示 318
测试结果 318
测试的操作过程 319
12.7 GPRS以PDU模式测试 319
测试平台 319
测试目的 320
测试中遇到的问题及问题分析 320
12.8开发者体会 323
第13章 微型打印机软件 3
13.1微型打印机 324
RD-E打印机功能介绍 324
性能指标 325
13.2打印机软件设计 325
基本介绍 325
打印程序主流程 325
打印票据示意图 326
函数功能说明 327
13.3打印机软件源程序 329
ieoprint.h文件内容 329
ieoprint.cfg文件内容 330
serial.cfg文件内容 330
ieoprint.c文件内容 331
13.4开发者体会 341
打印机应用软件第一版总结 341
打印机应用软件第二版总结 344
第4章CAMERA驱动软件 347
14.1 OV9650概述 347
14.2接口电路设计 348
14.3 Video4Linux简介 352
14.4驱动程序流程 355
14.5驱动测试程序流程 358
14.6开发者体会 360
第15章ARM产品化研发项目管理实践 362
15.1企业项目研发的困惑 362
15.2 ARM产品化研发流程 362
15.3日工程师角色设置与实践 369
附录A ARM7/9 JTAG电路 372
附录B I EO 2008基础板与核心板电路 373
参考文献 378