《单片机原理与接口技术应用教程》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:王贤勇,李海,汪烨编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302219613
  • 页数:400 页
图书介绍:本书共12章,以MCS-51系列单片机作为主讲机型,系统全面地介绍MCS-51单片机内部的功能结构、软硬件资源的原理与应用,以及使用外部电路进行功能扩展的方法。

第1章 绪论 1

1.1 单片机简介 1

1.1.1 计算机的基本组成 1

1.1.2 单片机的基本结构 2

1.2 单片机的发展 4

1.2.1 单片机的发展历史 4

1.2.2 单片机技术的发展特点 6

1.3 单片机体系结构 7

1.3.1 CPU设计 7

1.3.2 存储器设计 8

1.3.3 总线结构 8

1.3.4 单片机与微处理器 9

1.3.5 单片机与嵌入式系统 9

1.4 单片机内部数据的表示 10

1.4.1 数据的表示 10

1.4.2 数据的运算 13

1.4.3 指令的表示 15

1.5 单片机的应用与选型 15

1.5.1 单片机的应用 15

1.5.2 单片机的选型 16

1.5.3 单片机的学习 17

小结 17

习题 18

第2章 MCS-51单片机的结构 19

2.1 MCS-51单片机的内部结构 19

2.2 MCS-51单片机的引脚功能 21

2.3 MCS-51单片机的CPU 24

2.3.1 控制器 25

2.3.2 运算器 26

2.3.3 布尔处理器 28

2.3.4 时钟电路 29

2.3.5 时序 31

2.4 MCS-51单片机的存储器组织 33

2.4.1 程序存储器 33

2.4.2 内部数据存储器 34

2.4.3 特殊功能寄存器 38

2.4.4 外部数据存储器 38

2.5 MCS-51单片机的工作方式 40

2.5.1 复位方式 40

2.5.2 程序执行方式 42

2.5.3 低功耗方式 42

2.5.4 编程和校验方式 45

2.6 案例实训——单片机最小系统 47

小结 49

习题 50

第3章 MCS-51单片机的指令系统 51

3.1 MCS-51单片机指令系统概述 51

3.1.1 指令格式 51

3.1.2 指令分类 52

3.1.3 指令系统中使用的符号 53

3.2 MCS-51单片机的寻址方式 54

3.2.1 立即数寻址 54

3.2.2 直接寻址 55

3.2.3 寄存器寻址 56

3.2.4 寄存器间接寻址 57

3.2.5 变址寻址 58

3.2.6 位寻址 59

3.2.7 相对寻址 59

3.2.8 寻址方式总结 60

3.3 数据传送类指令 61

3.3.1 内部数据传送指令 61

3.3.2 外部数据传送指令 65

3.3.3 查表指令 66

3.3.4 堆栈操作指令 67

3.3.5 数据交换指令 69

3.4 算术逻辑运算类指令 70

3.4.1 算术运算指令 70

3.4.2 逻辑运算指令 75

3.4.3 移位指令 77

3.4.4 累加器清零指令 78

3.4.5 累加器内容取反指令 78

3.5 位操作指令 79

3.5.1 位传送指令 79

3.5.2 位修改指令 79

3.5.3 位运算指令 80

3.5.4 位控制转移指令 81

3.6 流程控制类指令 83

3.6.1 无条件转移指令 83

3.6.2 条件转移指令 86

3.6.3 减1不为零转移指令 89

3.6.4 子程序调用与返回指令 90

3.6.5 空操作指令 93

3.7 案例实训——简单程序设计 93

小结 97

习题 97

第4章 MCS-51汇编语言程序设计 101

4.1 汇编语言概述 101

4.1.1 程序设计语言 101

4.1.2 汇编语言程序的开发过程 103

4.2 汇编语言格式 103

4.2.1 汇编语言程序示例 103

4.2.2 程序语句格式 104

4.2.3 表达式 105

4.2.4 伪指令语句 107

4.2.5 通用的转移和调用语句 111

4.2.6 条件汇编 111

4.2.7 程序结构 112

4.3 汇编程序的工作过程 113

4.3.1 手工汇编过程 113

4.3.2 机器汇编过程 114

4.3.3 Intel HEX文件 115

4.4 汇编语言程序设计 116

4.4.1 顺序结构 116

4.4.2 分支结构 118

4.4.3 循环结构 120

4.4.4 子程序设计 122

4.5 案例实训——HEX格式文件处理 124

小结 128

习题 128

第5章 MCS-51 C语言程序设计 130

5.1 C语言与MCS-51单片机 130

5.1.1 C语言程序开发过程 130

5.1.2 C语言的特点 132

5.1.3 单片机C语言的移植 132

5.2 单片机C语言的扩充 133

5.2.1 数据类型 133

5.2.2 存储器类型 134

5.2.3 存储模式 135

5.2.4 硬件资源访问 136

5.2.5 指针 139

5.3 C语言程序结构 141

5.3.1 函数 141

5.3.2 流程控制 144

5.3.3 输入与输出 147

5.3.4 程序的入口 147

5.4 C语言与汇编语言的混合编程 148

5.5 案例实训——单片机系统命令接口 150

小结 153

习题 153

第6章 并行接口及应用 155

6.1 MCS-51的并行接口 155

6.1.1 P0口 155

6.1.2 P1口 157

6.1.3 P2口 159

6.1.4 P3口 160

6.1.5 并行接口的驱动能力 161

6.1.6 并行接口的应用 161

6.2 并行接口的扩展 163

6.2.1 MCS-51的总线结构 163

6.2.2 并行输入接口的扩展 165

6.2.3 并行输出接口的扩展 166

6.2.4 可编程并行接口芯片8255A 167

6.3 键盘接口 174

6.3.1 按键的抖动 174

6.3.2 独立式键盘接口 174

6.3.3 矩阵式键盘接口 175

6.4 显示接口 178

6.4.1 LED显示接口 178

6.4.2 LCD显示模块接口 182

6.5 并行存储器的扩展 186

6.5.1 程序存储器的扩展 186

6.5.2 并行数据存储器的扩展 190

6.5.3 Flash存储器的扩展 196

6.6 内部Flash存储器与并行编程 198

6.6.1 Flash存储器的操作方式 199

6.6.2 Flash存储器的并行编程 199

6.6.3 Flash存储器的其他操作 200

6.6.4 Flash存储器的加密 201

6.7 案例实训——交通灯控制电路 201

小结 204

习题 204

第7章 中断系统及应用 207

7.1 中断的概念 207

7.1.1 中断的过程 207

7.1.2 中断的作用 208

7.1.3 中断系统的主要功能 209

7.2 MCS-51中断系统的结构 210

7.2.1 中断源 210

7.2.2 中断向量 211

7.3 中断的控制 212

7.3.1 中断请求标志 212

7.3.2 中断请求方式 213

7.3.3 中断允许 213

7.3.4 中断优先级 214

7.4 中断的响应 215

7.4.1 中断的响应过程 215

7.4.2 中断响应时间 217

7.4.3 中断服务程序 217

7.4.4 中断请求的撤销 218

7.5 中断系统的应用 219

7.5.1 中断控制程序的编写 219

7.5.2 中断服务程序的编写 220

7.5.3 MCS-51的单步操作 224

7.6 中断系统的扩展 228

7.6.1 中断优先级的扩充 228

7.6.2 中断源的扩展 229

7.7 案例实训——带中断的交通灯控制电路 233

小结 237

习题 238

第8章 定时器/计数器及应用 239

8.1 定时器/计数器T0、T1 240

8.1.1 T0、T1的内部结构 240

8.1.2 T0、T1的工作方式 242

8.2 定时器/计数器T2 245

8.2.1 T2的结构 245

8.2.2 T2的工作方式 246

8.3 定时器/计数器的应用 250

8.3.1 工作方式的选择 250

8.3.2 定时常数的计算 251

8.3.3 定时器/计数器应用举例 252

8.3.4 信号的测量 257

8.3.5 读取定时器/计数器 258

8.4 监视定时器 259

8.4.1 监视定时器的原理 259

8.4.2 监视定时器芯片MAX813L 260

8.4.3 AT89S51的内部监视定时器 261

8.5 日历时钟芯片DS1302 261

8.5.1 DS1302简介 262

8.5.2 DS1302的操作 262

8.5.3 DS1302的应用 263

8.6 案例实训——简易电子琴电路 265

小结 269

习题 269

第9章 串行接口与串行通信 271

9.1 串行通信简介 271

9.1.1 串行通信技术分类 271

9.1.2 串行通信的软件实现 274

9.1.3 串行接口与RS-232C标准 275

9.2 MCS-51串行口的结构 277

9.2.1 MCS-51串行口的结构 277

9.2.2 MCS-51串行口的控制 278

9.3 MCS-51串行口的工作方式 280

9.3.1 方式0——同步移位寄存器 280

9.3.2 方式1——8位UART 282

9.3.3 方式2和3——9位UART 285

9.4 串行口的应用 288

9.4.1 波特率的计算 288

9.4.2 方式0的应用 291

9.4.3 方式1的应用 293

9.4.4 方式2和3的应用 298

9.5 多机通信方式 300

9.5.1 多机通信原理 300

9.5.2 通信协议的设计 301

9.6 SPI总线接口 302

9.6.1 SPI总线结构 302

9.6.2 SPI总线应用 303

9.7 I2C总线接口 304

9.7.1 I2C总线简介 305

9.7.2 I2C总线协议 306

9.7.3 I2C串行EEPROM及其应用 306

9.7.4 I2C并行扩展芯片PCF8574 311

9.8 内部Flash存储器与串行编程 314

9.8.1 串行编程过程 314

9.8.2 串行编程指令 315

9.9 案例实训——与PC机的通信 316

小结 320

习题 321

第10章 模拟量接口 323

10.1 D/A转换器 324

10.1.1 D/A转换原理 324

10.1.2 D/A转换器的指标 325

10.1.3 D/A转换器的选型 326

10.2 D/A转换器的应用 327

10.2.1 DAC0832的结构 327

10.2.2 DAC0832的应用 329

10.2.3 DAC1208的结构与应用 332

10.3 A/D转换器 335

10.3.1 A/D转换原理 335

10.3.2 A/D转换器的指标 337

10.3.3 A/D转换器的选择 338

10.4 A/D转换器的应用 338

10.4.1 ADC0809的结构 338

10.4.2 ADC0809的应用 340

10.4.3 AD574A的结构与应用 344

10.5 案例实训——模拟信号的叠加 349

小结 351

习题 351

第11章 单片机应用系统设计 353

11.1 单片机应用系统设计过程 353

11.1.1 单片机应用系统开发周期 353

11.1.2 软件开发过程 354

11.1.3 硬件开发过程 355

11.1.4 软、硬件集成测试 356

11.2 硬件设计中的问题 357

11.2.1 硬件设计的主要内容 357

11.2.2 驱动与隔离技术 358

11.2.3 电源与低功耗系统 361

11.2.4 硬件可靠性设计 363

11.3 软件设计中的问题 364

11.3.1 单片机应用系统软件特点 364

11.3.2 单片机应用系统软件结构 365

11.3.3 软件缓冲区的使用 369

11.3.4 系统运行过程的监控 370

11.3.5 软件可靠性设计 371

11.4 案例实训——自动打铃机电路 372

小结 374

习题 374

第12章 单片机应用系统设计实践 376

12.1 系统总体设计 376

12.1.1 系统说明 376

12.1.2 方案设计 377

12.1.3 功能设计 378

12.2 硬件系统设计 379

12.2.1 总体设计 379

12.2.2 指纹模块简介 380

12.2.3 用户界面设计 380

12.3 软件系统设计 383

12.3.1 软件体系结构 383

12.3.2 软件框架 384

12.3.3 硬件自检和初始化部分 386

12.3.4 消息处理 387

12.3.5 数据缓冲区的设计 389

小结 391

习题 391

附录A 各章习题提示与参考答案 392

附录B MCS-51指令速查表 397

附录C MCS-51指令(按功能顺序) 398

参考文献 400