图书目录

目    录

单元1  单片机的认知及开发概述 1

1.1  对单片机的认知 3

1.1.1  单片机的应用 3

1.1.2  单片机的概念 4

1.1.3  主流单片机介绍 5

1.1.4  51单片机的特点 6

1.2  单片机应用系统开发概述 6

1.2.1  单片机应用系统开发过程 6

1.2.2  用编程工具Keil编写程序 7

1.2.3  用仿真工具Proteus绘制

电路 11

1.2.4  用仿真工具Proteus进行

仿真 17

小结 24

强化练习 24

习题 24

单元2  单片机的最小系统及初步应用 25

2.1  51单片机最小系统 26

2.1.1  51单片机硬件结构 26

2.1.2  51单片机存储器结构 33

2.2  51单片机I/O系统 38

2.2.1  P0口 38

2.2.2  P2口 40

2.2.3  P1口 41

2.2.4  P3口(P3.0~P3.7) 42

2.2.5  并行口小结 43

2.3  头文件reg51.h详解 46

小结 48

强化练习 48

习题 48

单元3  C51程序设计语言 49

3.1  单片机程序设计语言概述 50

3.1.1  单片机程序设计语言 50

3.1.2  C51语言的特点 51

3.1.3  简单C51程序介绍 52

3.2  C51数据类型和数据存储类型 54

3.2.1  常量与变量 54

3.2.2  整型数据 56

3.2.3  实型数据 57

3.2.4  字符型数据 58

3.2.5  数组类型 59

3.2.6  指针类型 61

3.2.7  Keil C51中特有的数据类型 63

3.2.8  数据的存储类型及存储器的

存储模式 64

3.3  运算符和表达式 66

3.3.1  算术运算符和算术表达式 66

3.3.2  赋值运算符和赋值表达式 67

3.3.3  逗号运算符和逗号表达式 68

3.3.4  关系运算符和关系表达式 68

3.3.5  逻辑运算符和逻辑表达式 69

3.3.6  位操作运算符和表达式 69

3.4  C51程序的结构 71

3.4.1  顺序结构 71

3.4.2  选择结构 71

3.4.3  循环结构 77

3.5  函    数 81

3.5.1  函数的定义 81

3.5.2  函数的调用 82

3.5.3  局部变量和全局变量 84

3.5.4  intrins.h库函数介绍 85

3.5.5  中断函数 87

小结 92

强化练习 92

习题 93

单元4  单片机中断应用 95

4.1  中断的概念 96

4.2  中断系统 97

4.2.1  中断源及中断请求标志 97

4.2.2  中断允许控制 99

4.2.3  中断优先级控制 100

4.3  单片机中断处理过程 102

4.3.1  中断响应的条件 102

4.3.2  中断响应过程 102

4.3.3  中断响应时间 103

4.4  中断系统C51语言编程要点 103

小结 117

强化练习 117

习题 117

单元5  单片机定时/计数器应用 119

5.1  定时/计数器的结构及其工作原理 120

5.1.1  定时/计数器的结构 120

5.1.2  定时/计数器的工作原理 120

5.2  定时/计数器的控制 122

5.2.1  定时/计数器工作方式寄存器

TMOD 122

5.2.2  定时/计数器的控制寄存器

TCON 122

5.3  定时/计数器的工作方式 123

5.3.1  方式0 123

5.3.2  方式1 124

5.3.3  方式2 125

5.3.4  方式3 126

5.4  定时/计数器C51语言编程要点 127

小结 135

强化练习 135

习题 136

单元6  单片机串行口应用 137

6.1  串行通信及其总线标准 138

6.1.1  通信概述 138

6.1.2  串行通信总线标准及其

接口 141

6.2  单片机串行口及其控制 143

6.2.1  51单片机串行口的结构 143

6.2.2  51单片机串行口控制

寄存器 144

6.2.3  51单片机串行口的工作

方式 145

6.2.4  波特率的设定 147

6.3  串行口C51语言编程要点 147

小结 159

强化练习 159

习题 160

单元7  单片机接口技术 161

7.1  I/O接口扩展 162

7.1.1  项目一:简单I/O接口扩展

实现读取独立按键及数码管

显示 162

7.1.2  项目二:可编程I/O接口扩展

实现数码管动态显示 170

7.2  存储器扩展及IIC总线接口技术 177

项目三:串行EEPROM扩展 177

7.3  A/D转换器及接口技术 186

7.3.1  项目四:采用并行A/D实现的

数据采集系统 186

7.3.2  项目五:采用串行A/D实现

数据采集系统 191

7.4  D/A转换器及接口技术 197

7.4.1  项目六:采用并行D/A实现的

模拟信号输出系统 197

7.4.2  项目七:采用串行D/A实现的

模拟信号输出系统 202

小结 206

强化练习 207

习题 207

单元8  单片机综合应用实例 209

8.1  项目一:简易四路智力抢答器 210

8.1.1  项目导入 210

8.1.2  项目分析 210

8.1.3  项目实施 211

8.2  项目二:交通信号灯 222

8.2.1  项目导入 222

8.2.2  项目分析 222

8.2.3  项目实施 223

小结 232

强化练习 233

习题 233

单元9  51系列单片机汇编语言简介 235

9.1  51系列单片机指令系统 236

9.1.1  51系列单片机指令分类 236

9.1.2  汇编指令格式 237

9.1.3  寻址方式 238

9.1.4  数据传送指令 240

9.1.5  算术运算指令 242

9.1.6  逻辑运算指令 244

9.1.7  位操作指令 245

9.1.8  控制转移指令 246

9.1.9  伪指令 247

9.2  汇编语言程序结构 251

9.2.1  顺序结构 251

9.2.2  分支结构 252

9.2.3  循环结构 253

9.2.4  子程序 255

小结 261

强化练习 262

习题 262

附录A  Proteus常用元器件中英文名称

对照表 265

附录B  Keil C51常用库函数 266

附录C  Keil C51常见警告及错误

信息 270

附录D  51系列单片机汇编指令

速查表 275

参考文献 281