《微计算机原理与接口 基于STM32处理器》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:陈客松,汪玲,庞晓凤编著
  • 出 版 社:成都:电子科技大学出版社
  • 出版年份:2017
  • ISBN:9787564747664
  • 页数:384 页
图书介绍:本书是非计算机专业本科生的核心基础课程教材,内容包括计算机系统基本工作原理和接口技术,作为以ARM的新处理器STM32为蓝本的计算机原理教材,本书对大学生在本科阶段奠定必要的计算机系统原理和技术基础提供了一个新的支撑,可作为大学生《计算机系统原理》《微型计算机原理与接口技术》《计算机原理与接口》等专业基础课程的教材或教学参考书,对于从事电子信息、自动化、机械电子和其他非计算机专业的大学生、研究生和教师有一定的参考价值,也可供有关的科技工作者参考。

第1章 微型计算机系统的基础知识 1

1.1 计算机的运算基础 1

1.1.1 计算机中数值信息的表示与运算 2

1.1.2 计算机中字符信息的表示与运算 8

1.1.3 计算机中逻辑信息的表示与运算 11

1.2 微型计算机系统概述 12

1.2.1 微型计算机系统的组成 13

1.2.2 微机系统基本结构 13

1.2.3 计算机系统的层次结构 14

1.2.4 微型计算机的分支 18

1.3 微型计算机的硬件系统 21

1.3.1 微机系统的硬件组成 21

1.3.2 微机的主要组件 21

1.4 微型计算机的软件系统 23

1.4.1 计算机语言和语言处理程序 24

1.4.2 软件的分类 25

1.4.3 操作系统的概念 26

1.5 计算机的发展 28

1.5.1 微型计算机的特点与分类 31

1.5.2 嵌入式计算机系统的发展 32

第2章 计算机的基本结构和工作原理 36

2.1 计算机的体系结构 36

2.1.1 冯·诺伊曼结构 36

2.1.2 基于总线的冯·诺伊曼模型机 39

2.1.3 模型机的指令集与工作过程 44

2.1.4 哈佛结构 47

2.1.5 冯·诺伊曼结构的改进 48

2.2 精简指令集计算机与复杂指令集计算机 52

2.2.1 指令集结构设计及优化 52

2.2.2 RISC和CISC 53

2.3 计算机的并行技术 54

2.3.1 计算机并行技术 54

2.3.2 多机系统与多核系统、多线程技术 55

2.4 指令流水线技术 58

2.4.1 流水线技术的特点 61

2.4.2 流水线的操作过程 62

2.4.3 流水线技术的局限性 64

2.4.4 指令流水线设计 65

2.5 计算机系统的性能测评 70

2.5.1 计算机的字长 70

2.5.2 访存空间与存储容量 70

2.5.3 运算速度 71

第3章 ARM微处理器 74

3.1 微处理器的指标 74

3.2 ARM技术概论 77

3.2.1 ARM技术的发展及应用 77

3.2.2 ARM处理器架构 78

3.2.3 ARM处理器的指令集 80

3.3 STM32系列微处理器 82

3.3.1 STM32系列微处理器的系统结构 82

3.3.2 STM32系列微处理器命名 85

3.3.3 STM32微处理器实例 87

3.4 STM32微处理器的内部资源简介 90

3.4.1 STM32的电源、时钟及复位 91

3.4.2 STM32的存储器映射 93

3.5 STM32微处理器的内核型号Cortex-M3 97

3.5.1 Cortex-M3内核 97

3.5.2 Cortex-M3的存储器组织 99

3.5.3 Cortex-M3存储系统的位段操作 100

第4章 STM32微处理器 104

4.1 STM32处理器内核结构 104

4.1.1 Cortex-M3内核的功能模块 104

4.1.2 Cortex-M3处理器内核的特点 105

4.2 STM32处理器编程模型 108

4.2.1 工作模式 108

4.2.2 工作状态 108

4.2.3 特权等级 109

4.3 寄存器 110

4.3.1 Cortex-M3中的寄存器 110

4.3.2 寄存器分类与功能 111

4.4 异常与中断 114

4.4.1 系统异常类型和外部中断类型 114

4.4.2 异常向量表 116

4.4.3 优先级定义 116

4.5 存储器与堆栈 117

4.5.1 数据类型 117

4.5.2 存储格式 117

4.5.3 按字对齐与按半字对齐 117

4.5.4 堆栈 118

4.6 复位 120

4.6.1 复位的分类 120

4.6.2 Cortex-M3处理器复位流程 120

4.7 STM32的最小系统 121

第5章 Cortex-M3指令系统 124

5.1 Cortex-M3指令结构 124

5.1.1 Cortex-M3指令的格式 124

5.1.2 指令的条件码 125

5.1.3 指令的第二源操作数 125

5.1.4 指令宽度选择 127

5.2 ARM基本寻址方式 127

5.3 Cortex-M3指令集 131

5.3.1 数据处理指令 131

5.3.2 跳转指令 140

5.3.3 特殊寄存器访问指令 141

5.3.4 存储器访问指令 142

第6章 汇编程序设计 151

6.1 汇编语言与汇编器 151

6.2 汇编语言程序规范 152

6.2.1 汇编语言程序结构 152

6.2.2 语句的构成与规范 152

6.2.3 汇编语言程序中常用的符号 153

6.2.4 表达式和运算符 154

6.3 伪指令及应用 156

6.3.1 符号定义伪指令 157

6.3.2 数据定义伪指令 158

6.3.3 汇编控制伪指令 161

6.3.4 其他常用的伪指令 162

6.4 宏指令及应用 165

6.5 汇编语言程序设计 166

6.5.1 汇编语言的程序结构 166

6.5.2 顺序结构程序设计 167

6.5.3 分支结构程序设计 169

6.5.4 循环结构程序设计 174

6.5.5 子程序调用 177

6.6 STM32编程 178

6.6.1 工程开发常用的集成开发环境 179

6.6.2 软件接口标准CMSIS 181

6.6.3 汇编语言程序与CC+++语言程序之间的调用 182

第7章 存储器及其接口技术 189

7.1 存储器分类 189

7.1.1 按存储介质分类 189

7.1.2 按数据存取顺序分类 190

7.1.3 按存储原理分类 191

7.2 存储器主要性能指标 196

7.3 计算机的层次化存储技术 197

7.3.1 存储系统的分层结构 197

7.3.2 高速缓存 198

7.3.3 虚拟存储器 203

7.3.4 存储器时序 205

7.4 存储芯片的扩展技术 206

7.4.1 位扩展 207

7.4.2 字扩展 207

7.4.3 字位扩展 208

7.5 存储器接口技术 208

7.5.1 存储器接口中的片选控制 209

7.5.2 存储器接口分析与设计举例 212

7.5.3 多字节存储器接口 214

7.5.4 STM32存储器扩展技术 215

7.6 存储器发展趋势 217

7.7 存储器系统设计的基本原则 218

第8章 输入/输出接口 222

8.1 接口的基本概念 222

8.1.1 接口的结构与功能 222

8.1.2 端口的编址方式 223

8.1.3 接口的地址译码方式 224

8.2 接口信息传输方式 224

8.2.1 程序控制方式 225

8.2.2 中断传输方式 226

8.2.3 直接存储器访问方式 227

8.2.4 通道方式 229

8.3 LED显示接口 230

8.4 键盘接口 232

8.4.1 非编码式键盘接口 233

8.4.2 编码式键盘接口 234

8.5 通用并行接口 235

8.5.1 SCSI接口 235

8.5.2 IEEE 488接口 236

8.6 通用串行接口 237

8.6.1 串行通信工作方式 238

8.6.2 串行通信的数据校验 240

8.6.3 串行外围设备接口SPI 241

8.6.4 通用同步异步收发传输器USART 243

8.7 嵌入式通用输入/输出接口GPIO 250

8.7.1 GPIO的功能描述 250

8.7.2 GPIO的工作模式 251

8.7.3 复用功能(AFIO)配置 253

8.8 应用实例 255

8.8.1 USART应用实例 255

8.8.2 GPIO应用实例 257

第9章 总线 260

9.1 总线的概念 260

9.1.1 总线分类 260

9.1.2 总线性能指标 262

9.2 总线仲裁 263

9.2.1 集中式仲裁 263

9.2.2 分布式仲裁 265

9.3 总线时序和数据传输方式 265

9.3.1 总线时序 265

9.3.2 同步传输 266

9.3.3 异步传输 266

9.3.4 半同步传输 267

9.4 串行总线 267

9.4.1 I2C总线 267

9.4.2 USB总线 273

9.4.3 IEEE1394总线 276

9.4.4 SATA总线 278

9.4.5 PCI Express总线 278

9.5 并行总线 278

9.5.1 ISA总线 278

9.5.2 PCI总线 278

9.5.3 AGP总线 280

9.6 嵌入式系统总线 281

9.6.1 AHB总线 281

9.6.2 ASB总线 283

9.6.3 APB总线 283

第10章 中断系统 285

10.1 中断系统基本概念 285

10.2 中断分类 286

10.3 中断优先级和中断嵌套 287

10.3.1 中断优先级 287

10.3.2 中断嵌套 289

10.4 中断处理过程 290

10.5 嵌入式中断系统 291

10.5.1 ARM STM32控制器的中断概念 291

10.5.2 系统故障 294

10.5.3 嵌套向量中断控制器NVIC 297

10.5.4 外部中断事件控制器EXTI 301

10.5.5 中断响应过程 302

10.6 外部中断应用实例 303

第11章 ARM嵌入式计算机系统设计 308

11.1 嵌入式计算机系统及其设计方法 308

11.1.1 嵌入式系统 308

11.1.2 嵌入式系统项目开发方法 313

11.1.3 嵌入式系统设计流程 316

11.1.4 基于ARM处理器的嵌入式系统 319

11.2 嵌入式系统的硬件系统设计 321

11.2.1 嵌入式微处理器的选型 322

11.2.2 处理器最小系统 324

11.2.3 电源模块 324

11.2.4 时钟模块 325

11.2.5 人机交互模块 325

11.2.6 通信接口 327

11.3 嵌入式系统的软件系统设计 328

11.3.1 嵌入式软件的系统结构 329

11.3.2 嵌入式软件系统工作流程 331

11.3.3 嵌入式系统软件的引导和加载 332

11.3.4 嵌入式操作系统LINUX移植 333

11.4 嵌入式系统的测试 335

11.4.1 手工测试 335

11.4.2 自动化测试 336

11.4.3 功能测试和性能测试 337

11.4.4 黑白盒测试 338

11.5 基于STM32处理器的嵌入式计算机实例 338

11.5.1 检测系统原理 339

11.5.2 硬件系统 339

11.5.3 软件系统 343

11.5.4 检测过程 344

附录A ASCII码 346

附录B Cortex-M3指令 347

附录C 常用寄存器描述 351

附录D STM32F103××引脚定义 374

附录E 缩写和封装 381

参考文献 384