项目1了解嵌入式系统的组成1
1.1项目背景1
1.1.1嵌入式系统的概念1
1.1.2嵌入式系统硬件8
1.1.3嵌入式系统软件10
1.2项目需求11
1.3项目设计12
1.4项目实施12
任务一:认识Tiny6410开发板12
任务二:熟悉Qtopia系统基本功能13
1.5项目小结16
1.6项目实训17
1.7项目拓展17
项目2理解ARM体系结构18
2.1项目背景18
2.1.1ARM微处理器18
2.1.2ARM存储器27
2.1.3ARM I/O端口29
2.1.4ARM汇编语言程序设计基础29
2.1.5ARM集成开发工具ARMMDK48
2.2项目需求55
2.3项目设计56
2.4项目实施56
任务一:安装MDK56
任务二:新建工程,配置与编译57
任务三:调试镜像文件Debug64
任务四:内存、堆栈加载与存储65
任务五:工作模式切换66
2.5项目小结68
2.6项目实训69
2.7项目拓展70
项目3ARM C语言程序设计71
3.1项目背景71
3.1.1C语言常量和变量72
3.1.2C语言基本数据类型73
3.1.3C语言运算符与表达式76
3.1.4C语言程序结构和控制语句78
3.1.5C语言数组、结构体和指针81
3.1.6C语言函数87
3.1.7C语言预处理91
3.1.8C语言函数和汇编语言接口93
3.2项目需求95
3.3项目设计95
3.4项目实施100
任务一:基于MDK的C语言编程100
任务二:C语言和汇编语言混合编程100
3.5项目小结104
3.6项目实训104
3.7项目拓展105
项目4嵌入式Linux操作系统的配置与使用106
4.1项目背景106
4.1.1Linux的特点106
4.1.2Linux内核组成108
4.1.3Linux源码结构109
4.1.4Linux常用命令110
4.1.5Linux文本编辑120
4.1.6Linux网络服务124
4.2项目需求127
4.3项目设计127
4.4项目实施128
任务一:安装虚拟机128
任务二:安装Linux操作系统131
任务三:实现Windows共享133
任务四:配置NFS服务135
任务五:配置FTP服务136
4.5项目小结138
4.6项目实训138
4.7项目拓展140
项目5嵌入式Linux开发平台的构建141
5.1项目背景141
5.1.1嵌入式Linux开发平台的体系架构141
5.1.2交叉编译的概念142
5.1.3交叉编译工具链的组成143
5.1.4交叉编译工具链的建立144
5.1.5交叉编译工具的使用146
5.2项目需求153
5.3项目设计153
5.4项目实施154
任务一:组建开发平台154
任务二:配置超级终端154
任务三:安装与配置DNW156
任务四:安装与配置交叉编译工具链158
5.5项目小结158
5.6项目实训159
5.7项目拓展160
项目6嵌入式Linux软件系统的建立161
6.1项目背景161
6.1.1BootLoader161
6.1.2内核移植170
6.1.3根文件系统的建立176
6.2项目需求183
6.3项目设计184
6.4项目实施185
任务一:制作SD启动卡185
任务二:下载BootLoader186
任务三:移植Linux内核188
任务四:建立根文件系统191
任务五:测试内核和根文件系统192
6.5项目小结193
6.6项目实训194
6.7项目拓展195
项目7嵌入式Linux应用程序开发196
7.1项目背景196
7.1.1嵌入式应用程序的体系架构196
7.1.2嵌入式应用程序的开发流程198
7.1.3嵌入式Linux程序的开发方法200
7.2项目需求201
7.3项目设计201
7.4项目实施203
任务一:编写“Hello World”应用程序203
任务二:编写Led控制应用程序205
任务三: 实现开机自启动“Hello World”和Led控制208
7.5项目小结208
7.6项目实训209
7.7项目拓展210
参考文献211