《单片机原理与应用实例教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:张鹏,王雪梅编著
  • 出 版 社:北京:海洋出版社
  • 出版年份:2008
  • ISBN:750276951X
  • 页数:259 页
图书介绍:本书介绍了单片机原理并附有应用实例。

第一部分 基础篇 1

第1章 单片机基础 1

1.1 单片机的发展 1

1.2 单片机的分类 2

1.3 常用单片机简介 3

1.4 单片机的应用领域 4

1.5 8051单片机的组成结构 4

1.5.1 8051单片机的引脚结构 5

1.5.2 8051单片机的内部结构 5

1.6 本章小结 6

1.7 课后习题 7

第2章 开发环境与程序流程图 8

2.1 单片机的开发语言 8

2.1.1 两种开发语言的比较 8

2.1.2 汇编语言指令格式 9

2.1.3 汇编指令中的常用表示符号 9

2.1.4 C51语言与标准C语言的差异 10

2.2 单片机的开发环境 10

2.2.1 软件环境 11

2.2.2 硬件环境 11

2.3 程序流程图 12

2.4 实例——简单的程序 13

2.4.1 新建工程 13

2.4.2 添加汇编代码 14

2.4.3 编译代码 15

2.4.4 调试程序 16

2.4.5 添加C51代码 17

2.4.6 将程序下载到单片机 18

2.5 本章小结 19

2.6 课后习题 20

第3章 信息存储与数据操作 21

3.1 信息的存储方式 21

3.1.1 片内数据存储器 21

3.1.2 片内程序存储器 23

3.2 寻址方式说明 23

3.3 数据传送指令 24

3.3.1 片内RAM的访问指令 24

3.3.2 片外RAM的访问指令 25

3.3.3 程序存储的访问指令 25

3.4 实例——片内数据的传送 26

3.4.1 流程图、代码与讲解 26

3.4.2 调试说明 27

3.5 实例——寄存器间接寻址的深入研究 28

3.5.1 汇编设计思路 28

3.5.2 流程图、代码与讲解 28

3.5.3 调试说明 28

3.6 片内数据交换与堆栈操作指令 29

3.6.1 片内数据交换指令 29

3.6.2 堆栈操作指令 29

3.7 实例——数据交换的3种方法 30

3.8 本章小结 32

3.9 课后习题 33

第4章 算术运算与逻辑运算 34

4.1 算术运算指令 34

4.1.1 运算状态标记 34

4.1.2 加法指令 34

4.1.3 减法指令 36

4.1.4 乘法指令 37

4.1.5 除法指令 37

4.2 实例——多字节加法运算 37

4.2.1 程序设计思路 37

4.2.2 代码与讲解 37

4.3 有符号数的编码 38

4.4 实例——有符号数的多字节减法 39

4.4.1 程序设计思路 39

4.4.2 代码与讲解 40

4.5 逻辑运算指令 41

4.5.1 基本逻辑运算 41

4.5.2 其他逻辑操作 42

4.6 位循环指令 43

4.7 实例——逻辑处理 44

4.7.1 程序设计思路 44

4.7.2 代码与讲解 45

4.8 本章小结 46

4.9 课后习题 47

第5章 转移控制与位操作 48

5.1 转移控制指令 48

5.1.1 无条件转移指令 48

5.1.2 条件转移指令 49

5.1.3 调用与返回指令 50

5.1.4 空操作指令 50

5.1.5 关于转移控制指令中的地址 50

5.2 实例——延时子程序 51

5.2.1 相关知识 51

5.2.2 程序设计思路 52

5.2.3 代码与讲解 53

5.3 位操作指令 54

5.3.1 位变量传送指令 54

5.3.2 位清0和位置1指令 55

5.3.3 位逻辑运算指令 55

5.3.4 位条件转移指令 55

5.4 实例——简单的加密 56

5.4.1 设计思路 56

5.4.2 代码与讲解 57

5.5 本章小结 58

5.6 课后习题 58

第6章 汇编语言程序设计 60

6.1 汇编程序的编写技巧 60

6.1.1 编写汇编程序的的步骤 60

6.1.2 汇编程序的编写技巧 61

6.2 汇编语言基础知识 61

6.2.1 汇编程序的编辑和汇编 61

6.2.2 汇编语言的定义 61

6.2.3 汇编指令中的常数 62

6.2.4 伪指令 62

6.3 常见汇编程序结构 64

6.3.1 顺序程序结构 64

6.3.2 分支程序结构 65

6.3.3 循环程序结构 67

6.3.4 查表程序结构 68

6.3.5 子程序结构 68

6 4 实例——顺序查表程序 69

6.4.1 程序设计思路 69

6.4.2 代码与讲解 69

6.5 实例——分支程序 70

6.5.1 程序设计思路 70

6.5.2 代码与讲解 70

6.6 实例——循环程序 71

6.6.1 程序设计思路 71

6.6.2 代码与讲解 72

6.7 实例——子程序 73

6.7.1 程序设计思路 73

6.7.2 代码与讲解 73

6.7.3 调试说明 74

6.8 常见错误分析 74

6.8.1 常见的汇编错误 74

6.8.2 常见逻辑错误 75

6.8.3 编写汇编程序的忠告 75

6.9 本章小结 75

6.10 课后习题 76

第二部分 提高篇 77

第7章 输入/输出控制 77

7.1 P0端口的结构及工作原理 77

7.1.1 P0端口的内部结构 77

7.1.2 P0口作为I/O端口的工作原理 78

7.1.3 I/O端口的编程注意事项 80

7.1.4 P0口作为“地址/数据”总线的工作原理 80

7.2 P1端口的结构及工作原理 82

7.3 P2端口的结构及工作原理 83

7.4 P3端口的结构及工作原理 84

7.4.1 P3口的结构 84

7.4.2 P3口的第二功能 84

7.5 Proteus仿真软件简介 85

7.5.1 Proteus软件特点 85

7.5.2 Proteus软件的界面 85

7.6 实例——跑马灯 86

7.6.1 实例说明 86

7.6.2 程序设计思路 86

7.6.3 代码与讲解 87

7.6.4 电路图的绘制 88

7.6.5 系统仿真 90

7.7 实例——交通指示灯 91

7.7.1 代码与讲解 92

7.7.2 搭建电路图 94

7.8 本章小结 94

7.9 课后习题 95

第8章 中断系统与定时/计数器 96

8.1 中断系统基础 96

8.1.1 中断的基本概念 96

8.1.2 MCS-51单片机的中断系统 97

8.2 外部中断的处理过程 98

8.2.1 外部中断的响应条件 98

8.2.2 外部中断的处理过程 99

8.3 实例——开关控制的跑马灯 99

8.3.1 实例说明 99

8.3.2 相关知识 100

8.3.3 代码与讲解 101

8.3.4 调试说明 103

8.4 多中断源的处理 104

8.5 定时/计数器的处理过程 104

8.5.1 定时/计数器的基本功能 104

8.5.2 定时/计数器的控制 105

8.5.3 定时/计数器的工作方式 105

8.6 实例——彩灯变换 107

8.6.1 实例说明 107

8.6.2 程序设计思路 107

8.6.3 代码与讲解 108

8.7 本章小结 110

8.8 课后习题 111

第9章 串行接口控制 112

9.1 串行通信的基础知识 112

9.1.1 数据通信的传输方式 112

9.1.2 串行通信与并行通信 112

9.1.3 串行数据通信的两种形式 113

9.1.4 串行数据通信的传输速率 114

9.2 MCS-51单片机的串行接口 114

9.2.1 串行通信的控制 114

9.2.2 串行口的工作方式 115

9.2.3 波特率的计算 117

9.3 实例——单片机之间的串行通信 117

9.3.1 实例说明 117

9.3.2 代码与讲解 118

9.3.3 调试说明 121

9.4 串行通信的标准接口 121

9.5 实例——PC机串口通信的仿真 122

9.5.1 实例介绍 122

9.5.2 相关知识 123

9.5.3 代码与讲解 125

9.5.4 调试说明 126

9.6 本章小结 126

9.7 课后习题 127

第10章 存储器的外部扩展 128

10.1 MCS-51单片机的儿个引脚说明 128

10.2 程序存储器的扩展 128

10.2.1 EPROM的扩展 129

10.2.2 E2PROM的扩展 130

10.3 实例——程序存储器的扩展 130

10.3.1 实例说明 130

10.3.2 相关知识 131

10.3.3 代码与讲解 132

10.4 数据存储器的扩展 133

10.4.1 静态RAM 133

10.4.2 数据存储器的扩展电路 134

10.5 实例——数据存储器的扩展 135

10.5.1 实例说明 135

10.5.2 相关知识 136

10.5.3 代码与讲解 136

10.5.4 调试说明 138

10.6 本章小结 138

10.7 课后习题 138

第11章 七段LED数码管 140

11.1 七段LED数码管简介 140

11.1.1 七段LED数码管的结构 140

11.1.2 七段LED数码管的字型码 141

11.1.3 七段LED数码管的控制方法 141

11.2 实例——数字的显示 142

11.2.1 实例说明 142

11.2.2 程序设计思路 142

11.2.3 代码与讲解 143

11.3 实例——实用秒表 145

11.3.1 实例说明 145

11.3.2 程序设计思路 145

11.3.3 代码与讲解 146

11.4 本章小结 149

11.5 课后习题 149

第12章 液晶显示器的控制 150

12.1 字符型LCD的控制 150

12.1.1 1602的引脚 150

12.1.2 1602的内置字符 151

12.1.3 1602的操作指令 151

12.2 实例——字符的显示 154

12.2.1 实例说明 154

12.2.2 程序设计思路 155

12.2.3 代码与讲解 155

12.3 绘图型LCD的控制 158

12.3.1 KS0108的引脚 158

12.3.2 KS0108的指令系统 158

12.4 实例——图形的显示 160

12.4.1 实例说明 160

12.4.2 程序设计思路 160

12.4.3 代码与讲解 162

12.5 实例——汉字的显示 166

12.5.1 相关知识 166

12.5.2 代码与讲解 167

12.6 实例——动画的显示 169

12.6.1 程序设计思路 169

12.6.2 代码与讲解 170

12.7 本章小结 172

12.8 课后习题 173

第13章 键盘接口 174

13.1 键盘的控制接口 174

13.1.1 按键开关的抖动问题 174

13.1.2 键盘与单片机的连接 175

13.2 实例——程序扫描方式的键盘控制 176

13.2.1 实例说明 176

13.2.2 代码与讲解 176

13.3 中断响应方式的键盘控制 179

13.3.1 实例说明 179

13.3.2 代码与讲解 179

13.4 本章小结 182

13.5 课后习题 182

第14章 数字模拟转换器接口 183

14.1 D/A转换器接口 183

14.1.1 DAC接口电路 183

14.1.2 DAC0832的应用 184

1 4.2 实例——锯齿波发生器 185

14.2.1 实例说明 185

14.2.2 代码与讲解 185

14.3 A/D转换接口 187

14.3.1 ADC接口电路 187

14.3.2 ADC0809的应用 188

14.4 实例——数字电压表 189

14.4.1 实例说明 189

14.4.2 代码与讲解 189

14.5 本章小结 192

14.6 课后习题 192

第三部分 高级篇 193

第15章 音效设计 193

15.1 音乐控制原理 193

15.1.1 蜂鸣器简介 193

15.1.2 音效电路 193

15.1.3 音效播放原理 194

1 5.2 实例——蜂鸣器的控制 195

15.2.1 实例说明 195

15.2.2 代码与讲解 196

15.3 实例——音乐盒 198

15.3.1 实例说明 198

15.3.2 代码与讲解 198

15.4 本章小结 202

15.5 课后习题 203

第16章 步进式电动机的控制 204

16.1 步进式电动机的控制原理 204

16.1.1 步进式电动机简介 204

16.1.2 步进电机的控制原理 204

16.2 实例——电动机控制实例 207

16.2.1 实例说明 207

16.2.2 代码与讲解 208

16.3 本章小结 210

16.4 课后习题 211

附录A ASCII码表 235

附录B MCS—51系列单片机指令表 237

附录C 常用汇编子程序 241

第17章 传感器的控制 212

17.1 传感器简介 212

17.1.1 传感器的组成 212

17.1.2 传感器的分类 212

17.1.3 传感器的发展趋势 213

17.2 传感器接口 213

17.2.1 DS18B20简介 214

17.2.2 DS18B20的控制方法 216

17.3 实例——数字温度计 218

17.3.1 实例说明 218

17.3.2 代码与讲解 218

17.4 本章小结 226

17.5 课后习题 227

第18章 红外线遥控接口 228

18.1 红外线遥控接口 228

18.1.1 红外线遥控的系统结构 228

18.1.2 红外遥控的发射部分 228

18.1.3 红外遥控的接收部分 230

18.2 实例——简单的红外线遥控 231

18.2.1 实例说明 231

18.2.2 代码与讲解 231

18.3 本章小结 233

18.4 课后习题 234