图书介绍

嵌入式系统 体系结构、编程与设计 第2版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

嵌入式系统 体系结构、编程与设计 第2版
  • (印度)RajKamal编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302218944
  • 出版时间:2010
  • 标注页数:711页
  • 文件大小:87MB
  • 文件页数:732页
  • 主题词:微型计算机-系统设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

嵌入式系统 体系结构、编程与设计 第2版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 嵌入式系统简介1

1.1嵌入式系统2

1.1.1系统2

1.1.2嵌入式系统3

1.2嵌入系统中的处理器5

1.2.1系统中的处理器5

1.2.2微处理器6

1.2.3微控制器7

1.2.4专用处理器9

1.3系统中的嵌入式硬件单元和设备10

1.3.1电源10

1.3.2时钟振荡电路和时钟单元11

1.3.3系统定时器和实时时钟11

1.3.4复位电路、加电复位和Watchdog定时器复位11

1.3.5存储器12

1.3.6输入、输出和I/O端口,1O总线和1O接口14

1.3.7 DAC(使用PWM)和ADC15

1.3.8 LCD、 LED和触摸屏显示17

1.3.9小键盘或键盘18

1.3.10脉冲拨号电路、调制解调器和收发器18

1.3.11中断处理器18

1.4嵌入式系统中的软件19

1.4.1系统的最终机器可实现软件19

1.4.2用机器码编写软件20

1.4.3用特定于处理器的汇编语言编写软件21

1.4.4用高级语言编写软件22

1.4.5软件设计的程序模型24

1.4.6并行处理、多任务调度和使用RTOS的ISR的软件24

1.4.7使用操作系统的设备驱动程序和设备管理软件25

1.4.8设计嵌入式系统的软件工具26

1.4.9示例中需要的软件工具27

1.5示例嵌入式系统28

1.6嵌入式片上系统(SoC)和VLSI电路设计技术30

1.6.1专用IC(ASIC)31

1.6.2 IP核32

1.6.3具有一个或者多个处理器的FPGA核32

1.7复杂系统设计和处理器32

1.7.1嵌入式系统中的微处理器32

1.7.2嵌入式系统中的微控制器33

1.7.3嵌入式系统中的DSP33

1.7.4嵌入式系统中的RISC34

1.7.5嵌入式系统中的ASIP34

1.7.6 嵌入式系统中的多处理器或者GPP双核处理器34

1.7.7嵌入式处理器和嵌入式微控制器35

1.7.8 嵌入式系统中的ARM处理器37

1.7.9嵌入式系统中的ASSP37

1.8嵌入式系统的设计过程38

1.8.1设计指标39

1.8.2设计过程中的抽象步骤39

1.8.3嵌入式系统设计中的挑战:优化设计指标42

1.9系统设计的形式化方法43

1.10设计过程和设计案例44

1.10.1系统设计过程案例44

1.10.2巧克力自动售卖机(ACVM)44

1.10.3智能卡46

1.10.4数码相机49

1.10.5移动电话51

1.10.6便携式计算机52

1.10.7一组机器人52

1.11嵌入式系统的分类54

1.12嵌入式系统设计者需要具备的技能55

本章 小结56

关键词及其定义57

问题回顾61

实践练习62

第2章 8051和高级处理器体系结构、存储器组织和现实中的接口65

2.1 8051的体系结构66

2.1.1 8051微控制器体系结构66

2.1.2指令集67

2.1.3 IO端口、电路以及IO编程70

2.1.4外部存储器接口电路72

2.1.5计数器和定时器73

2.1.6串行数据通信输入/输出74

2.1.7 8051的中断75

2.2现实世界中的接口76

2.2.1基于系统总线和基于IO总线的现实世界接口IO76

2.2.2现实接口中的端口和设备的IO地址80

2.2.3现实接口中的设备地址82

2.2.4中断和IO83

2.2.5总线仲裁84

2.2.6键盘、显示器、A/D和D/A转换设备接口示例86

2.3高级体系结构介绍88

2.3.1高级处理器体系结构90

2.3.2 80x86体系结构92

2.3.3 ARM93

2.3.4 SHARC99

2.3.5 DSP101

2.4处理器和存储器组织102

2.4.1处理器的组织102

2.4.2存储器的组织105

2.5指令级并行109

2.6性能指标111

2.7存储器类型、存储器映射和地址111

2.7.1系统中的存储器111

2.7.2存储地址分配115

2.8处理器选择119

2.9存储器选择123

本章 小结126

关键词及其定义127

问题回顾132

实践练习132

第3章 设备网络的设备和通信总线135

3.1 I/O的类型和示例136

3.1.1同步串行输入136

3.1.2同步串行输出138

3.1.3同步串行输入/输出138

3.1.4异步串行输入138

3.1.5异步串行输出139

3.1.6并行端口139

3.1.7半双工与全双工139

3.1.8串行和并行端口I/O示例140

3.2串行通信设备140

3.2.1串行设备的同步、准同步和异步通信140

3.2.2 RS232C/RS485通信143

3.2.3 UART144

3.2.4 HDLC协议145

3.2.5使用SPI、 SCI和SI端口的串行数据通信146

3.2.6安全数字输入输出(SDIO)149

3.3并行设备端口150

3.3.1与开关和小键盘连接的并行端口153

3.3.2与编码器连接的并行端口154

3.3.3与步进电机连接的并行端口154

3.3.4与LCD控制器连接的并行端口155

3.3.5与触摸屏连接的并行端口156

3.4设备端口的复杂接口特性157

3.5无线设备158

3.6定时器和计数设备159

3.6.1定时设备159

3.6.2计数设备159

3.6.3带计数设备的定时器160

3.7 watchdog定时器164

3.8实时时钟165

3.9网络中的嵌入式系统166

3.10串行总线通信协议168

3.10.1 I2C总线168

3.10.2 CAN总线169

3.10.3 USB总线171

3.10.4 FireWire——IEEE1394总线标准172

3.10.5先进的串行高速总线173

3.11并行总线设备协议——使用ISA、PCI、PCI-X和高级总线的并行通信网络173

3.11.1 ISA总线175

3.11.2 PCI和PCI/X总线176

3.11.3 ARM总线177

3.11.4高级并行高速总线178

3.12支持Internet的系统——网络协议178

3.12.1超文本传输协议(HTTP)179

3.12.2传输控制协议(TCP)181

3.12.3用户数据报协议(UDP)181

3.12.4 Internet协议(IP)182

3.12.5 Ethernet(以太网)183

3.13无线和移动系统协议184

3.13.1红外数据协会(IrDA)184

3.13.2蓝牙185

3.13.3 802.11186

3.13.4 ZigBee187

本章小结187

关键词及其定义189

问题回顾192

实践练习193

第4章 设备驱动程序和中断服务机制195

4.1不使用中断服务机制的程序查询式I/O忙/等待方法196

4.2 ISR的概念198

4.2.1端口或设备中断及ISR示例199

4.2.2软件中断和ISR示例202

4.2.3作为级中断处理程序的中断服务线程205

4.2.4设备驱动程序205

4.3中断源206

4.4中断服务(处理)机制210

4.4.1中断向量210

4.4.2根据可屏蔽和不可屏蔽的中断分类213

4.4.3可屏蔽中断源的启用(未屏蔽)和禁用(屏蔽)214

4.4.4状态寄存器或中断挂起寄存器214

4.5多中断215

4.5.1多中断调用215

4.5.2硬件分配的优先级216

4.6上下文和上下文切换周期、中断延迟和最终期限217

4.6.1中断延迟219

4.6.2中断服务的最终期限221

4.6.3硬件优先级的软件覆盖以满足服务的最终期限223

4.7从上下文保存的角度对处理器中断服务机制的分类223

4.8直接存储器访问224

4.8.1 DMAC的使用225

4.8.2同一中断源产生多个快速连续中断时的DMA通道使用226

4.9设备驱动程序编程226

4.9.1编写系统中的物理设备驱动ISR227

4.9.2虚拟设备驱动程序229

4.9.3系统中的并行端口驱动程序230

4.9.4系统中的串行端口驱动程序232

4.9.5内部可编程定时设备的设备驱动程序234

4.9.6作为设备驱动和网络函数的Linux内幕235

本章 小结236

关键词及其定义237

问题回顾239

实践练习240

第5章 编程概念及C、 C+和Java的嵌入式编程241

5.1用汇编语言(ALP)和高级语言C进行软件编程242

5.1.1汇编语言编程242

5.1.2高级语言编程242

5.2 C程序中的元素:头文件、源文件以及预处理指令244

5.2.1用于包含文件的include指令244

5.2.2源文件245

5.2.3配置文件246

5.2.4预处理指令246

5.3程序元素:宏与函数246

5.4程序元素:数据类型、数据结构、修饰符、语句、循环和指针248

5.4.1数据类型248

5.4.2指针和NULL指针249

5.4.3使用数据结构:队列、堆栈、链表和树250

5.4.4修饰符的使用258

5.4.5条件语句、循环语句以及无限循环语句259

5.4.6函数调用264

5.4.7按照循环顺序进行的多函数调用266

5.4.8函数指针、函数队列和ISR队列267

5.4.9发生中断时函数的排列268

5.5面向对象编程270

5.6 C++嵌入式编程271

5.6.1 C+++的优点271

5.6.2 C+++的缺点272

5.6.3嵌入式C+++程序的代码优化以消除缺点272

5.7用Java进行嵌入式编程273

5.7.1 Java编程基础273

5.7.2使用Java编程的优点275

5.7.3 Java的缺点275

5.7.4 J2ME276

5.7.5 JavaCard和嵌入式Java277

本章 小结277

关键词及其定义78

问题回顾281

实践练习281

第6章 程序建模的概念283

6.1程序模型284

6.2 DFG模型286

6.2.1数据流图286

6.2.2控制数据流图模型289

6.2.3同步数据流图(SDFG)模型290

6.3用于事件控制程序流的状态机编程模型291

6.3.1有限状态机(FSM)模型293

6.3.2 FSM状态表294

6.4多处理器系统的建模298

6.4.1多处理器系统298

6.4.2展开SDFG的同构SDFG模型301

6.4.3展开HSDFG的APEG模型302

6.4.4图在多处理器系统中的应用:划分和调度303

6.5 UML建模305

本章 小结309

关键词及其定义310

问题回顾311

实践练习311

第7章 进程间通信与进程、任务和线程的同步313

7.1应用程序中的多个进程314

7.2应用程序中的多线程316

7.3任务317

7.4任务的状态318

7.5任务和数据320

7.6通过函数、ISR和任务的特征进行区分321

7.6.1无限事件等待循环的任务编码321

7.6.2函数、ISR和任务之间的区别322

7.7信号量的概念325

7.7.1作为事件信号变量或通报变量的信号量的使用325

7.7.2作为资源键的信号量以及信号量在临界段中的使用327

7.7.3使用多个信号量同步任务329

7.7.4计数信号量332

7.7.5 P和V信号量333

7.8共享数据339

7.8.1多任务和多例程的数据共享问题339

7.8.2共享数据问题的解决方法340

7.8.3信号量的应用与共享数据问题341

7.8.4共享数据问题的消除341

7.8.5优先级反转问题和死锁情况342

7.9进程间通信343

7.10信号函数345

7.11信号量函数347

7.12消息队列函数348

7.13邮箱函数350

7.14管道函数353

7.15套接字函数355

7.16远程过程调用(RPC)函数359

本章 小结359

关键词及其定义360

问题回顾362

实践练习362

第8章 实时操作系统365

8.1 OS服务366

8.1.1目标366

8.1.2用户和管态结构366

8.1.3结构367

8.1.4内核368

8.2进程管理369

8.2.1进程的创建369

8.2.2已创建进程的管理370

8.3定时器函数371

8.4事件函数373

8.5存储器管理374

8.5.1存储器分配374

8.5.2初始分配后的存储管理374

8.6设备、文件及IO子系统管理376

8.6.1设备管理376

8.6.2文件系统的组织和实现378

8.6.3 I/O子系统380

8.7 RTOS环境中的中断例程和中断源调用处理381

8.7.1通过中断源以及ISR发送ISR输入消息直接调用ISR382

8.7.2 RTOS首先响应中断,接着OS调用相应的ISR383

8.7.3 RTOS首先响应中断,之后初始化ISR并运行ISR384

8.8实时操作系统385

8.9使用RTOS进行基本设计386

8.9.1原则387

8.9.2使用信号量和队列进行封装394

8.9.3硬实时的考虑396

8.9.4节 约存储器和功耗397

8.10 RTOS任务调度模型,作为性能指标的中断延迟和任务响应时间400

8.10.1协作调度模型401

8.10.2循环和时间片轮转调度模型404

8.10.3抢占式调度模型408

8.10.4抢占式调度程序提供的临界段服务模型413

8.10.5最早时限优先(EDF)优先级和速率单调调度 (RMS)模型414

8.10.6固定(静态)实时调度模型415

8.10.7周期、突发以及非周期任务的调度模型中延迟和最后期限的性能指标416

8.10.8使用CPU负载作为性能指标416

8.10.9突发任务模型作为性能指标417

8.11操作系统的安全问题417

本章小结418

关键词及其定义419

问题回顾420

实践练习421

第9章 实时操作系统编程-Ⅰ:MicroC/OS- Ⅱ和VxWorks423

9.1 RTOS的基本函数和类型424

9.1.1基于宿主机/目标机和基于自主主机的开发方法425

9.1.2 RTOS的类型426

9.2 RTOS μCOS-II427

9.2.1系统级函数429

9.2.2任务服务和时间函数及其使用范例433

9.2.3时间延迟函数439

9.2.4存储器分配相关的函数442

9.2.5信号量相关函数444

9.2.6邮箱相关函数456

9.2.7队列相关函数465

9.3 RTOS VxWorks473

9.3.1基本特性475

9.3.2系统库头文件中的任务管理库477

9.3.3 VxWorks系统函数和系统任务481

9.3.4 IPC函数483

本章 小结496

关键词及其定义498

问题回顾499

实践练习499

第10章 实时操作系统编程-Ⅱ:Windows CE、 OSEK和实时Linux 函数501

10.1 Windows CE502

10.1.1 Windows CE的特点502

10.1.2 Windows CE编程504

10.1.3窗口和窗口管理505

10.1.4内存管理506

10.1.5文件和注册表507

10.1.6 Windows CE数据库508

10.1.7进程、线程和IPC509

10.1.8按键、触摸屏、鼠标的输入512

10.1.9通信和网络514

10.1.10设备间套接字通信函数516

10.1.11 Win32 API编程517

10.1.12创建窗口518

10.2 OSEK519

10.3 Linux 2.6.x和RTLinux521

10.3.1实时Linux函数521

10.3.2 RTLinux527

本章 小结531

关键词及其定义533

问题回顾536

实践练习537

第11章 RTOS编程和程序建模设计示例与案例研究-1539

11.1嵌入式系统设计的案例研究以及使用MUCOSRTOS对巧克力自动售卖机(ACVM)编码540

11.1.1需求540

11.1.2系统规范541

11.1.3使用UML为系统规范建模543

11.1.4 ACVM的硬件体系结构546

11.1.5软件体系结构546

11.1.6创建任务列表、函数和IPC550

11.1.7编码步骤示例551

11.2数码相机硬件和软件体系结构的案例研究559

11.2.1需求560

11.2.2类图562

11.2.3数码相机的硬件体系结构563

11.2.4数码相机的软件体系结构564

11.3使用RTOS VxWorks将应用层字节流发送到TCP/IP网络的编码案例研究566

11.3.1需求567

11.3.2类图、类和对象567

11.3.3 TCP栈的硬件和软件体系结构570

11.3.4编码步骤实例574

本章小结595

关键词及其定义597

问题回顾598

实践练习599

第12章 RTOS编程和程序建模设计示例与案例研究-2601

12.1管弦乐队机器人之间通信的案例研究601

12.1.1需求604

12.1.2类和类图605

12.1.3状态图607

12.1.4机器人管弦乐队MIDI通信的硬件和软件体系结构607

12.1.5通信任务的同步模型608

12.2汽车中的嵌入式系统609

12.3汽车中自适应巡航控制(ACC)系统的嵌入式系统案例研究611

12.3.1需求612

12.3.2类图616

12.3.3 ACC硬件体系结构617

12.3.4 ACC软件体系结构618

12.3.5 ACC软件任务的同步模型618

12.3.6 ACC软件实现620

12.4智能卡中的嵌入式系统案例研究629

12.4.1需求630

12.4.2类图631

12.4.3硬件和软件体系结构632

12.4.4同步模型633

12.4.5示例代码634

12.5移动电话键输入软件案例研究641

12.5.1需求642

12.5.2类和类图646

12.5.3状态图648

12.5.4 SMS按键硬件648

12.5.5 SMS创建和发送应用程序的软件体系结构649

12.5.6软件任务和同步模型651

本章小结652

关键词及其定义653

问题回顾655

实践练习656

第13章 嵌入式软件开发过程和工具657

13.1嵌入式软件开发过程和工具概述658

13.1.1开发过程和软硬件658

13.1.2软件工具659

13.1.3源代码工程管理工具660

13.1.4集成开发环境(IDE)661

13.2宿主机和目标机662

13.2.1宿主系统662

13.2.2目标系统664

13.3链接和定位软件665

13.3.1文件、寻址和地址解决方法的区别666

13.3.2 Motorola S-record和Intel Hex二进制映像格式的定位器输出文件667

13.3.3用于定位器编码的存储器映射669

13.4将嵌入式软件植入目标系统671

13.4.1设备PROM或者闪存编程器671

13.4.2设备编程器的编程方式672

13.5硬件/软件设计和协同设计中的问题674

13.5.1选择合适的平台674

13.5.2存储器敏感和处理器敏感软件677

13.5.3存储器、程序段和设备地址分配678

13.5.4嵌入式平台中OS的移植问题681

13.5.5性能和性能加速器682

本章小结684

关键词及其定义685

问题回顾687

实践练习687

第14章 测试、模拟和调试技术与工具689

14.1在宿主机上进行测试689

14.2模拟器691

14.2.1模拟器的特性692

14.2.2模拟器的局限性692

14.2.3模拟工具软件693

14.2.4嵌入式系统的原型开发、测试和调试工具693

14.3试验工具694

14.3.1简单的伏特-欧姆表694

14.3.2简单的LED测试和逻辑探测器695

14.3.3示波器695

14.3.4位率测量仪696

14.3.5逻辑分析仪696

14.3.6电路内置仿真器(ICE)697

14.3.7监视器699

本章小结700

关键词及其定义701

问题回顾701

实践练习702

附录A不同课程的学习路线图703

附录B参考文献705

热门推荐