内容简介
嵌入式Linux与ARM的结合,更是一种主流的解决方案。嵌入式Linux和ARM的结合体的身影广泛地出现在各个大小电子公司中,并且具有良好的市场前景。本书将以Linux+ARM为中心,结合S3C2410的嵌入式硬件平台进行嵌入式领域相关的知识理论的学习及适当的实践操作,以此帮助读者更好、更快地迈入嵌入式系统开发的门槛。
翻开本书,您将看到对主流嵌入式操作系统、Linux操作系统,以及基于Linux嵌入式操作系统的综述。更主要的是,全书用大量的篇幅系统介绍了利用Linux开发嵌入式系统的关键技术和方法。
目录
目录
第1篇 ARM微处理器讲解篇
第1章 走进嵌入式系统世界 1
1.1 让我们一起来认识嵌入式系统 1
1.1.1 嵌入式硬件系统的发展进程 2
1.1.2 嵌入式系统的发展趋势 3
1.1.3 嵌入式系统的主要特征 4
1.2 嵌入式处理器的简单概述 6
1.2.1 嵌入式微处理器简介 6
1.2.2 嵌入式微控制器简介 7
1.2.3 数字信号处理器(DSP)简介 7
1.2.4 嵌入式片上系统(SoC)简介 8
1.3 嵌入式软件系统的简单概述 9
1.3.1 嵌入式软件系统简介 9
1.3.2 嵌入式软件开发简介 10
1.4 嵌入式目标平台的介绍 11
1.4.1 嵌入式硬件平台简介 11
1.4.2 如何构建嵌入式系统开发平台 12
1.4.3 如何向嵌入式硬件平台上烧写映像 14
1.5 本章小结 17
第2章 ARM体系微处理器的基础介绍 18
2.1 ARM体系微处理器简介 18
2.2 ARM体系微处理器的类型 18
2.3 实际项目中对ARM微处理器的选择 21
2.3.1 ARM微处理器应用方案的成熟度考虑 21
2.3.2 ARM内核的选择 21
2.3.3 ARM微处理器的性能考虑 22
2.3.4 ARM微处理器的片内资源考虑 22
2.4 ARM微处理器的工作体系 22
2.4.1 工作模式介绍 23
2.4.2 寄存器体系 23
2.4.3 指令体系 24
2.5 ARM微处理器的基础架构介绍 24
2.5.1 计算机体系结构的介绍 25
2.5.2 ARM微处理器的技术特征 26
2.6 本章小结 29
第3章 S3C2410的内部结构及外围电路 30
3.1 S3C2410整体资源简介 30
3.1.1 性能介绍 30
3.1.2 资源模块介绍 31
3.1.3 内部结构 31
3.1.4 五大体系结构 34
3.1.5 存储系统 34
3.2 S3C2410内部资源功能介绍 38
3.2.1 时钟与电源管理 38
3.2.2 中断控制器 41
3.2.3 LCD控制器 42
3.2.4 Nand Flash控制器 43
3.2.5 UART控制器 44
3.2.6 DMA控制器 44
3.2.7 TIMER控制器 44
3.2.8 I/O接口 45
3.2.9 RTC控制器 46
3.2.10 触摸控制器 46
3.2.11 IIC控制器 47
3.2.12 IIS控制器 47
3.2.13 看门狗定时器 47
3.2.14 USB控制器 47
3.2.15 SPI接口 48
3.2.16 SD接口 48
3.2.17 ADC控制器 49
3.3 S3C2410微处理器的外围电路设计 49
3.3.1 时钟电路 50
3.3.2 复位电路 50
3.3.3 启动电路 51
3.3.4 电源电路 51
3.3.5 Flash电路 52
3.3.6 SDRAM电路 54
3.3.7 UART电路 57
3.3.8 IrDA电路 58
3.3.9 USB电路 58
3.3.10 以太网电路 59
3.3.11 音频电路 61
3.3.12 SD/MMC电路 62
3.3.13 LCD电路 62
3.4 本章小结 63
第4章 ARM微处理器的寻址方式及指令集介绍 64
4.1 ARM指令集概述及寻址方式 64
4.1.1 指令结构简介 64
4.1.2 指令分类 65
4.1.3 指令格式与条件域 66
4.1.4 寻址方式 67
4.2 ARM微处理器的指令集介绍 73
4.2.1 跳转指令 73
4.2.2 数据处理指令 74
4.2.3 乘法指令与乘加指令 79
4.2.4 程序状态寄存器访问指令 81
4.2.5 加载/存储指令 82
4.2.6 批量数据加载/存储指令 84
4.2.7 数据交换指令 85
4.2.8 移位指令 86
4.2.9 协处理器指令 87
4.2.10 异常产生指令 89
4.3 本章小结 90
第5章 ADS集成开发环境的应用基础 91
5.1 ADS1.2集成开发环境简介 91
5.1.1 ADS软件中的ARM运行时库 92
5.1.2 CodeWarrior集成开发环境介绍 93
5.1.3 ADS集成开发软件的调试器介绍 94
5.1.4 ADS集成开发环境中的实用工具 94
5.2 ADS软件的命令行下的开发方式 95
5.2.1