当前位置:首页 > 工业技术
嵌入式系统开发与应用
嵌入式系统开发与应用

嵌入式系统开发与应用PDF电子书下载

工业技术

  • 电子书积分:18 积分如何计算积分?
  • 作 者:田泽编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2005
  • ISBN:7810775413
  • 页数:621 页
图书介绍:全面讲述了嵌入式系统开发与应用技术,以嵌入式系统的基本开发技术为主线,以ARM处理器核及国内应用广泛的Samsung公司S3C44B0X(基于ARM7TDMI)为硬件平台,系统讲述了嵌入式系统开发的基本知识、基本流程、基本方法及以ARM微处理器为核心的嵌入式系统软、硬件开发过程。 主要内容包括: ◆ 嵌入式系统开发基础知识; ◆ ARM技术概述; ◆ 基于ARM的嵌入式系统应用程序设计; ◆ 基于S3C44B0X的嵌入式系统应用开发实例; ◆ μC/OSⅡ和μCLinux嵌入式操作系统及应用开发。 本书可作为高校计算机和电类专业的本科生、研究生教材,以及相关工程技术人员进行嵌入式系统应用开发的教材,也可供基于ARM核嵌入式系统开发的工程技术人员参考。 本书配套多媒体教学课件。
《嵌入式系统开发与应用》目录

第1章 嵌入式系统开发基础 1

1.1 嵌入式系统的基本概念 1

1.1.1 嵌入式计算机 1

1.1.2 嵌入式系统的概念 5

1.1.3 嵌入式系统的特点 6

1.1.4 嵌入式系统的分类 9

1.1.5 嵌入式系统的应用范围 9

1.1.6 嵌入式技术是中国IT发展的难得机遇 9

1.2 嵌入式系统的组成结构 10

1.2.1 嵌入式系统硬件基本结构介绍 11

1.2.2 嵌入式系统软件的层次结构 12

1.2.3 启动程序BootLoader介绍 14

1.3 嵌入式系统的硬件组成 15

1.3.1 嵌入式处理器 15

1.3.2 典型嵌入式处理器介绍 16

1.3.3 嵌入式SoC 21

1.3.4 可编程片上系统SOPC 22

1.3.5 嵌入式外围接口电路和设备接口 24

1.4 嵌入式操作系统 25

1.4.1 嵌入式操作系统 26

1.4.2 嵌入式实时操作系统 26

1.4.3 典型嵌入式操作系统介绍 28

1.5 嵌入式应用软件开发 31

1.5.1 嵌入式软件开发的特点和技术挑战 31

1.5.2 嵌入式软件开发环境 32

1.5.3 嵌入式应用软件开发的基本流程 35

1.5.4 嵌入式软件开发的可移植性和可重用性 39

1.6 嵌入式系统的开发流程 40

1.6.1 嵌入式开发考虑的要素 41

1.6.2 软硬件协同设计 41

1.6.3 嵌入式系统开发的基本流程 42

1.7 嵌入式系统的发展趋势 44

1.7.1 即将来临的以ARM为核心的32位浪潮 44

1.7.2 嵌入式系统与Internet的融合 46

1.7.3 嵌入式系统的发展趋势 47

习题 48

第2章 ARM技术概述 50

2.1 ARM体系结构的发展历史和技术特征 50

2.1.1 ARM技术的发展历程 51

2.1.2 RISC体系结构 56

2.1.3 ARM体系结构的技术特征 61

2.2 ARM体系结构不同版本的发展概述 62

2.2.1 ARM体系结构的基本版本 62

2.2.2 ARM体系结构的演变 65

2.2.3 ARM体系结构的命名规则 67

2.3 Thumb技术介绍 67

2.3.1 Thumb的技术概述 68

2.3.2 Thumb的技术实现 68

2.3.3 Thumb的技术特点 70

2.4 ARM处理器工作状态 70

2.5 ARM处理器工作模式 71

2.6 ARM寄存器组成 72

2.6.1 ARM寄存器组成概述 72

2.6.2 ARM状态下的寄存器组织 73

2.6.3 Thumb状态下的寄存器组织 78

2.7 ARM的异常中断 79

2.7.1 ARM的异常中断响应过程 80

2.7.2 从异常中断处理程序中返回 81

2.7.3 异常中断向量表 83

2.7.4 异常中断的优先级 83

2.8 ARM组织结构简介 84

2.8.1 3级流水线ARM的组织 84

2.8.2 5级流水线ARM的组织 87

2.9 ARM存储器接口及存储器层次 89

2.9.1 ARM存储数据类型和存储格式 89

2.9.2 ARM的存储器层次简介 90

2.9.3 ARM存储系统简介 91

2.10 ARM协处理器 94

2.11 ARM片上总线AMBA 95

2.11.1 总线标准概述 96

2.11.2 AHB简介 96

2.11.3 ASB简介 98

2.11.4 APB简介 98

2.12 基于JTAG的ARM系统调试 99

2.12.1 JTAG边界扫描测试接口简介 100

2.12.2 ARM的调试结构 103

2.12.3 ARM的嵌入式跟踪 106

2.13 ARM核综述 107

2.13.1 ARM7系列核介绍 107

2.13.2 ARM9系列核介绍 115

2.13.3 ARM10系列核 120

2.13.4 StrongARM和XScale系列核 123

2.13.5 SecurCore系列核 128

2.14 基于ARM核的芯片选择 129

2.14.1 应用角度的ARM芯片选择原则 129

2.14.2 多内核ARM角度芯片选择原则 131

2.14.3 国内常用ARM芯片及供应商简介 132

习题 133

第3章 ARM指令集 134

3.1 ARM指令集概述 134

3.1.1 ARM指令集编码 134

3.1.2 条件执行 135

3.1.3 指令分类及指令格式 136

3.2 ARM寻址方式 137

3.2.1 立即寻址 137

3.2.2 寄存器寻址 139

3.2.3 寄存器间接寻址 140

3.2.4 基址加偏址寻址 141

3.2.5 堆栈寻址 143

3.2.6 块拷贝寻址 144

3.2.7 相对寻址 146

3.3 ARM指令详细介绍 146

3.3.1 数据处理指令 146

3.3.2 Load/Store指令 154

3.3.3 状态寄存器与通用寄存器之间的传送指令 163

3.3.4 转移指令 166

3.3.5 异常中断产生指令 170

3.3.6 协处理器指令 173

3.3.7 未使用的指令空间 177

习题 179

第4章 Thumb指令集 182

4.1 Thumb指令集概述 182

4.1.1 Thumb指令集编码 183

4.1.2 Thumb状态切换 183

4.1.3 编程模型 184

4.1.4 Thumb指令集特点 185

4.2 Thumb指令详细介绍 186

4.2.1 Thumb数据处理指令 186

4.2.2 Thumb转移指令 194

4.2.3 数据存取指令 198

4.2.4 异常中断指令 204

习题 206

第5章 基于ARM的嵌入式程序设计 208

5.1 ARM汇编语言的伪操作、宏指令与伪指令 208

5.1.1 2种编译模式的集成开发环境IDE介绍 209

5.1.2 ADS编译环境下的ARM伪操作和宏指令 209

5.1.3 GNU编译环境下的ARM伪操作与宏指令 236

5.1.4 ARM汇编语言的伪指令 246

5.2 ARM汇编语言程序设计 250

5.2.1 ARM汇编中的文件格式 250

5.2.2 ARM汇编语言语句格式 250

5.2.3 ARM汇编语言编程的重点 260

5.2.4 ARM汇编程序实例 267

5.3 嵌入式C语言程序设计基础 273

5.3.1 C语言的“预处理伪指令”在嵌入式程序设计中的应用 273

5.3.2 嵌入式程序设计中的函数及函数库 292

5.3.3 嵌入式程序设计中常用的C语言语句 307

5.3.4 嵌入式程序设计中C语言的变量、数组、结构和联合 312

5.4 嵌入式C语言程序设计实例 318

5.4.1 实例实现功能介绍 318

5.4.2 实例实现程序源代码介绍 321

5.5 嵌入式C语言程序设计技巧 335

5.5.1 变量定义 335

5.5.2 参数传递 337

5.5.3 循环条件 337

5.6 C语言与汇编语言混合编程 338

5.6.1 ATPCS介绍 339

5.6.2 内嵌汇编 342

5.6.3 C语言和ARM汇编语言程序间相互调用 349

5.7 基于Embest IDE for ARM环境的软件开发实例 351

5.7.1 开发实例介绍 352

5.7.2 源文件解释 352

5.7.3 建立工程 359

5.7.4 工程配置 360

5.7.5 在RAM中调试软件 367

5.7.6 软件的固化 369

5.7.7 程序在Flash中调试 369

习题 370

第6章 基于S3C44B0X的嵌入式系统应用开发实例 374

6.1 S3C44B0X处理器介绍 374

6.1.1 Samsung S3C44B0X简介 374

6.1.2 Samsung S3C44B0X特点 374

6.1.3 S3C44B0X功能结构框图 378

6.1.4 S3C44B0X引脚信号描述 378

6.2 S3C44B0X存储控制器功能及应用开发 383

6.2.1 S3C44B0X存储控制器概述 384

6.2.2 S3C44B0X存储器空间划分简述 384

6.2.3 S3C44B0X存储控制器功能描述 385

6.2.4 S3C44B0X存储控制器的特殊功能寄存器 386

6.2.5 S3C44B0X存储器应用编程 390

6.3 S3C44B0X I/O端口功能及应用开发 392

6.3.1 S3C44B0X I/O功能概述 392

6.3.2 S3C44B0X端口功能配置 393

6.3.3 S3C44B0X端口功能控制描述 394

6.3.4 S3C44B0X I/O端口的特殊功能寄存器 396

6.3.5 S3C44B0X I/O端口应用编程 401

6.4 S3C44B0X DMA功能及应用开发 404

6.4.1 S3C44B0X DMA概述 404

6.4.2 S3C44B0X ZDMA/BDMA操作 404

6.4.3 S3C44B0X DMA特殊功能寄存器 409

6.4.4 S3C44B0X DMA应用编程 415

6.5 S3C44B0X UART接口功能及应用开发 417

6.5.1 S3C44B0X UART概述 417

6.5.2 S3C44B0X UART的操作 419

6.5.3 S3C44B0X UART的特殊功能寄存器 422

6.5.4 S3C44B0X UART应用编程 427

6.6 S3C44B0X中断控制器功能及应用开发 431

6.6.1 S3C44B0X中断概述 431

6.6.2 S3C44B0X中断控制器的操作 432

6.6.3 S3C44B0X中断源 432

6.6.4 S3C44B0X矢量中断模式 435

6.6.5 S3C44B0X矢量中断模式的程序举例 435

6.6.6 S3C44B0X中断控制器的特殊功能寄存器 438

6.6.7 S3C44B0X中断控制器应用编程 443

6.7 S3C44B0X时钟电源管理器功能及应用开发 445

6.7.1 S3C44B0X时钟电源管理器概述 445

6.7.2 S3C44B0X时钟电源管理器功能描述 446

6.7.3 S3C44B0X时钟发生器与电源管理特殊功能寄存器 451

6.7.4 S3C44B0X时钟与电源管理器应用编程 453

6.8 S3C44B0X PWM定时器功能及应用开发 455

6.8.1 S3C44B0X PWM定时器概述 455

6.8.2 S3C44B0X PWM定时器工作原理 457

6.8.3 S3C44B0X PWM定时器操作 457

6.8.4 S3C44B0X PWM定时器的特殊功能寄存器 459

6.8.5 S3C44B0X PWM定时器应用编程 464

6.9 S3C44B0X LCD控制器功能及应用开发 466

6.9.1 S3C44B0X LCD控制器概述 466

6.9.2 S3C44B0X LCD控制器的特性 466

6.9.3 S3C44B0X LCD外部接口信号 467

6.9.4 S3C44B0X LCD控制器框图 467

6.9.5 S3C44B0X LCD控制操作 468

6.9.6 S3C44B0X LCD视频操作 469

6.9.7 S3C44B0X LCD控制器的特殊功能寄存器 472

6.9.8 S3C44B0X LCD控制器应用编程 477

6.10 S3C44B0X A/D转换器功能及应用开发 479

6.10.1 S3C44B0X的A/D转换器概述 480

6.10.2 S3C44B0X A/D转换器特点 480

6.10.3 S3C44B0X的A/D转换操作 480

6.10.4 S3C44B0X A/D转换的特殊功能寄存器 482

6.10.5 S3C44B0X A/D转换器应用编程 484

6.11 S3C44B0X RTC功能及应用开发 484

6.11.1 S3C44B0X RTC概述 485

6.11.2 S3C44B0X RTC特性 485

6.11.3 S3C44B0X RTC操作 485

6.11.4 S3C44B0X RTC特殊功能寄存器 487

6.11.5 S3C44B0X RTC应用编程 493

6.12 S3C44B0X看门狗定时器功能及应用开发 495

6.12.1 S3C44B0X看门狗定时器概述 496

6.12.2 S3C44B0X看门狗定时器特殊功能寄存器 496

6.12.3 S3C44B0X看门狗定时器应用编程 498

6.13 S3C44B0X I2C总线接口功能及应用开发 499

6.13.1 S3C44B0X I2C总线概述 499

6.13.2 S3C44B0X I2C总线接口操作 499

6.13.3 S3C44B0X I2C接口特殊功能寄存器 503

6.13.4 S3C44B0X I2C总线应用编程 506

6.14 S3C44B0X IIS总线接口功能及应用开发 507

6.14.1 S3C44B0X IIS概述 507

6.14.2 S3C44B0X IIS特性 508

6.14.3 S3C44B0X IIS功能描述 508

6.14.4 S3C44B0X IIS接口工作模式 509

6.14.5 S3C44B0X音频串行接口格式 509

6.14.6 S3C44B0X IIS接口特殊功能寄存器 511

6.14.7 S3C44B0X IIS应用编程 514

6.15 S3C44B0X SIO功能及应用开发 517

6.15.1 S3C44B0X SIO概述 517

6.15.2 S3C44B0X SIO特点 517

6.15.3 S3C44B0X SIO正常操作模式 517

6.15.4 S3C44B0X SIO DMA操作 518

6.15.5 S3C44B0X SIO接口特殊功能寄存器 519

6.16 基于S3C44B0X的S3CEV40开发介绍 521

6.16.1 S3CEV40基本功能介绍 521

6.16.2 S3CEV40X外围接口硬件资源简介 522

6.17 S3C44B0X启动程序设计 526

6.18 USB接口功能开发实例 533

6.18.1 USB简介 533

6.18.2 USB接口电路设计 535

6.18.3 USB接口控制程序设计 536

习题 543

第7章 μC/OS-Ⅱ及应用开发 544

7.1 实时操作系统 544

7.2 μC/OS-Ⅱ操作系统 545

7.2.1 μC/OS-Ⅱ简介 545

7.2.2 μC/OS-Ⅱ的特点 547

7.2.3 μC/OS-Ⅱ的内核结构 548

7.3 μC/OS-Ⅱ的内核 554

7.3.1 任务调度 554

7.3.2 任务间的通信与同步 555

7.3.3 任务管理 558

7.3.4 时间管理 559

7.3.5 内存管理 560

7.3.6 μC/OS-Ⅱ的文件体系 561

7.4 μC/OS-Ⅱ应用程序开发 562

7.4.1 变量类型 562

7.4.2 应用程序基本结构 563

7.4.3 μC/OS-ⅡAPI介绍 564

7.4.4 μC/OS-Ⅱ多任务实现机制 565

7.5 μC/OS-Ⅱ在S3CEV40上的移植 566

7.5.1 移植条件 566

7.5.2 移植步骤 567

7.5.3 移植μC/OS-Ⅱ后的测试 572

习题 573

第8章 μCLinux及应用开发 574

8.1 嵌入式Linux概况 574

8.1.1 Linux简介 574

8.1.2 嵌入式Linux 579

8.1.3 嵌入式Linux的版本 580

8.1.4 嵌入式Linux应用 581

8.2 开发工具GNU的使用 582

8.2.1 GNU简介 582

8.2.2 GCC介绍 583

8.2.3 makefile介绍 588

8.2.4 gdb调试工具 590

8.3 Linux内核分析 591

8.3.1 Linux内核概述 592

8.3.2 进程管理 592

8.3.3 内存管理 594

8.3.4 文件系统管理 596

8.3.5 设备管理 597

8.3.6 网络管理 598

8.4 μCLinux操作系统 599

8.4.1 进程管理 600

8.4.2 内存管理 602

8.4.3 文件系统 603

8.5 构造嵌入式Linux系统 605

8.5.1 构造嵌入式Linux系统的几个关键问题 605

8.5.2 构造嵌入式Linux系统的关键步骤 608

8.6 μCLinux应用程序开发 610

8.6.1 μCLinux程序设计要点 610

8.6.2 高效的程序开发 611

8.7 μCLinux在S3CEV40上的移植 612

8.7.1 移植前的准备 612

8.7.2 移植步骤 612

8.8 基于S3CEV40平台的μCLinux开发实例 616

8.8.1 μCLinux编译运行 616

8.8.2 Boot Loader编译运行 617

8.8.3 μClinux内核调试实验 618

8.8.4 在文件系统中增加应用程序 618

8.8.5 多进程应用程序的编写及调试 619

8.8.6 网络应用程序的编写及调试 619

习题 620

参考文献 621

相关图书
作者其它书籍
返回顶部