《ARM技术原理与应用》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:侯冬睛,李建锋,朱长城编著
  • 出 版 社:北京交通大学出版社;清华大学出版社
  • 出版年份:2009
  • ISBN:9787811235173
  • 页数:300 页
图书介绍:本书共分成15章,以三星公司的S3C2410A ARM9微处理器为蓝本,从内到外的阐述了ARM微处理器的工作原理和应用。书中主要介绍了ARM技术的基本知识,S3C2410A处理器的特点、内部结构、引脚、专用寄存器,ARM微处理器的工作模式和异常,ARM指令集,THUMB指令集及程序设计,ARM程序设计,存储器控制,NAND闪存,时钟和电源管理,脉宽调制定时器,直接存储器访问DMA,液晶屏控制器和ADC控制器,S3C2410A触摸屏控制,S3C2410A典型硬件平台的设计,ARM ADS集成开发环境的应用等。

第1章 ARM微处理器概述 1

1.1 ARM—— Advanced RISC Machines 1

1.2 ARM微处理器的应用领域 1

1.3 ARM微处理器系列 2

1.3.1 ARM核的命名规则 2

1.3.2体系结构的发展 3

1.3.3 ARM微处理器系列 3

1.4 ARM微处理器结构 6

1.5 ARM处理器的选型 8

习题 12

第2章 S3C2410A处理器 14

2.1 S3C2410A处理器 14

2.2 S3C2410A特点 15

2.3 S3C2410A内部结构 19

2.4 S3C2410A引脚分布 20

2.5 S3C2410A的引脚名称及功能 20

2.5.1引脚名称 20

2.5.2引脚功能 24

2.6 S3C2410A的专用寄存器分区表 29

习题 30

第3章 处理器工作模式 31

3.1处理器工作状态、空间 31

3.1.1处理器工作状态 31

3.1.2切换状态 31

3.1.3存储空间的格式 31

3.1.4数据类型 32

3.2处理器工作模式 32

3.2.1寄存器 33

3.2.2 ARM状态寄存器集 34

3.2.3 Thumb状态寄存器集 34

3.2.4程序寄存器状态 37

3.3 ARM处理器异常 39

3.3.1异常中断向量 40

3.3.2异常中断特点 40

3.3.3中断延迟 43

习题 45

第4章 ARM指令集 46

4.1精简指令集RISC和复杂指令集CISC 46

4.2 ARM处理器寻址方式 47

4.3 ARM指令集 51

4.3.1指令格式 51

4.3.2 ARM存储器访问指令 53

4.3.3 ARM数据处理指令 60

4.3.4乘法指令 65

4.3.5 ARM跳转指令 66

4.3.6 ARM协处理器指令 67

4.3.7 ARM杂项指令 70

4.3.8 ARM伪指令 73

习题 76

第5章 Thumb指令集及程序设计 78

5.1 Thumb指令集概述 78

5.2 Thumb指令 79

5.2.1 Thumb存储器访问指令 79

5.2.2 Thumb数据处理指令 82

5.2.3 Thumb跳转指令 91

5.2.4 Thumb杂项指令 92

5.2.5 Thumb伪指令 93

5.3 ARM伪指令 94

5.3.1符号定义伪指令 94

5.3.2数据定义伪指令 97

5.3.3报告伪指令 102

5.3.4汇编控制伪指令 104

5.3.5杂项伪指令 107

5.4 ARM汇编程序设计 114

5.4.1 ARM汇编的一些规范 114

5.4.2简单程序设计 118

5.5 C与汇编混合编程 124

5.5.1内嵌汇编 124

5.5.2内嵌汇编的指令用法 126

5.5.3内嵌汇编器与armasm汇编器的差异 127

5.5.4 C与汇编相互调用 130

5.5.5 C程序调用汇编程序 131

5.5.6汇编程序调用C程序 132

习题 133

第6章 ARM程序设计 134

6.1.1循环程序的结构 134

6.1.2循环程序设计方法 135

6.1.3分支程序的设计 136

6.1.4 C程序中调用汇编程序 137

6.1.5 ARM状态与Thumb状态切换程序 138

6.1.6 SWI程序的编写 140

习题 145

第7章 存储器控制 146

7.1 S3C2410A存储控制器 146

7.2存储控制器的功能描述 149

7.2.1 Bank0总线宽度 149

7.2.2 S3C2410A与存储器的连接 149

7.2.3 S3C2410A的工作时序 152

7.3同步存储器K4S561632 154

7.3.1同步存储器K4S561632的特征 155

7.3.2功能方框图 156

7.3.3工作频率 156

7.3.4引脚配置 157

习题 158

第8章 NAND闪存芯片 159

8.1闪存的物理特性 159

8.2 K9F1208U0M NAND闪存特点 160

8.3 K9F1208U0M闪存引脚及功能 161

8.4 NAND闪存的内部组织、数据传送、内部逻辑结构 162

8.5 NAND闪存的指令设置 164

8.6 K9F120存储分布 164

8.7 K9F1208实现原理 165

8.7.1 NAND闪存的写入操作 165

8.7.2 NAND闪存的擦除和读操作 167

8.7.3读器件的ID号 169

8.7.4 S3C2410A的NAND闪存控制器 170

8.7.5 NAND闪存编程实现 171

习题 178

第9章 时钟与电源管理 179

9.1时钟与电源管理 179

9.2时钟的功能描述 179

9.3时钟锁相环 181

9.4时钟控制逻辑 182

9.5电源控制 185

9.6看门狗定时器 187

习题 189

第10章 脉宽调制定时器 190

10.1脉宽调制的基本知识 190

10.2 S3C2410A脉宽调制定时器 191

10.3定时器操作步骤 194

10.4脉宽调制 195

10.5脉宽调制定时器的应用 197

10.5.1脉宽调制应用电路图 197

10.5.2实现程序 198

习题 200

第11章 直接存储器访问 201

11.1 S3C2410A直接存储器访问控制器概述 201

11.2基本的DMA时序 202

11.3 S3C2410A DMA控制器的应用实例 205

习题 209

第12章 S3 C2410A液晶控制器和ADC控制器 210

12.1液晶屏的基本知识 210

12.1.1液晶概述 210

12.1.2液晶显示器的种类 210

12.1.3 STN屏和TFT屏比较 211

12.1.4 LCD屏的参数 212

12.2 S3C2410A液晶LCD控制器 212

12.2.1 S3C2410A支持STN和TFT显示器 212

12.2.2支持STN和TFT显示器的特点 212

12.2.3 S3C2410A液晶屏控制器的硬件特点 213

12.3液晶控制器内部结构及外部引脚 213

12.3.1液晶控制器内部结构 213

12.3.2外部引脚 214

12.4 S3C2410A的STN型LCD控制操作 215

12.4.1脉冲发生器 215

12.4.2视频操作 216

12.4.3抖动和帧频控制 217

12.4.4 LCD控制器显示扫描类型 218

12.4.5内存中显示数据格式 219

12.5时序要求 220

12.6 LCD应用编程 220

习题 224

第13章 S3C2410A触摸屏的控制 225

13.1触摸屏的概述 225

13.2触摸屏的主要类型 225

13.2.1电阻式触摸屏 225

13.2.2红外线触摸屏 227

13.2.3电容式触摸屏 228

13.2.4表面声波触摸屏 229

13.3 S3C2410A的ADC和触摸屏接口 231

13.3.1 S3C2410A触摸屏控制器的概述 231

13.3.2 S3C2410A触摸屏控制器内部结构 232

13.3.3 S3C2410A触摸屏接口举例 232

13.3.4功能描述 233

13.3.5触摸屏的应用编程 234

13.4 S3C2410A触摸屏的控制程序 235

习题 237

第14章 S3 C2410A硬件平台的设计 238

14.1 ARM9硬件平台概述 238

14.2硬件平台的逻辑结构 238

14.3硬件平台的组件 239

14.4存储器 242

14.4.1 NOR闪存 242

14.4.2 NAND闪存 242

14.4.3同步存储器SDRAM 243

14.5网络控制器 CS8900A 245

14.6 S3C2410A的硬件平台原理图 245

14.6.1 S3C2410A CPU模块 245

14.6.2同步存储器的连接 246

14.6.3 NOR闪存和 NAND闪存的连接 246

14.6.4网络控制器CS8900A的连接 251

14.6.5电源模块 251

14.6.6 LCD驱动模块及触摸屏控制连接 251

14.6.7 USB、网络接口及红外连接 251

14.6.8 VGA显示连接 257

14.6.9按键、LED灯和复位电路 257

14.6.10串行口 257

14.6.11硬件平台模块总图 257

习题 257

第15章 ARM ADS集成开发环境的使用 262

15.1 ADS集成开发环境组成介绍 262

15.1.1命令行开发工具 262

15.1.2 ARM运行时库 268

15.1.3 GUI开发环境 269

15.1.4实用程序 272

15.1.5支持的软件 272

15.2使用ADS创建工程 273

15.2.1建立一个工程 273

15.2.2编译和链接工程 277

15.2.3使用命令行工具编译应用程序 282

15.3用AXD进行代码调试 284

习题 288

附录A ARM指令集 289

附录B Thumb指令集 292

附录C 伪指令集 295

参考文献 299