《单片机原理及应用 C语言版》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:周国运主编
  • 出 版 社:北京:中国水利水电出版社
  • 出版年份:2009
  • ISBN:9787508461519
  • 页数:237 页
图书介绍:本书以应用最广泛的MSC-51单片机为对象,系统地讲解了单片机原理及其应用,具体内容包括:MSC-51单片机的结构与工作原理,指令系统,中断、定时器、串行口工作原理及应用,系统扩展及各种应用接口,并且还讲了单片机C语言及编程。本书以52子系列为对象,讲解MSC-51单片机的结构与原理,包括片内RAM高128B存储器、中断、定时器/计数器2、片内A/D转换器等。本书以单片机C语言为主要编程工具,在第2章就引入C51的一些概念,从第4章“单片机C语言及程序设计”之后的章节,内容的讲解、所有的编程举例、程序设计,都用C语言,并且为了便于学习汇编语言,也列出了汇编语言程序。 本书适用于具有C语言基础的计算机、电子、电气、自动化、测控与仪器仪表专业的本、专科学生作为教材,也可以作为各种培训机构的教材使用。

序 1

前言 1

第1章 单片机概述 1

1.1 单片机的基本概念 1

1.2 单片机的发展概况 1

1.2.1 单片机的历史 1

1.2.2 单片机技术的发展 3

1.3 单片机的特点及应用 4

1.3.1 单片机的特点 4

1.3.2 单片机的应用 5

1.4 常用单片机简介 5

1.4.1 MCS-51系列单片机 5

1.4.2 ATMEL89系列单片机 5

1.4.3 STC89/12系列单片机 8

1.4.4 常见的其他系列单片机介绍 9

1.5 单片机系统的开发方法 11

1.5.1 单片机系统的设计要求 11

1.5.2 单片机系统的开发特点 11

1.5.3 单片机系统的开发工具及环境 11

1.5.4 单片机系统设计中芯片的选择 12

思考题与习题 12

第2章 MCS-51单片机结构与原理 13

2.1 MCS-51单片机内部结构及CPU 13

2.1.1 MCS-51单片机的功能结构及特点 13

2.1.2 MCS-51单片机的内部原理结构 14

2.1.3 MCS-51单片机的CPU 14

2.2 MCS-51单片机的引脚与总线结构 17

2.2.1 MCS-51单片机的引脚信号及功能 17

2.2.2 MCS-51单片机外部总线结构 19

2.3 MCS-51单片机的存储器结构 20

2.3.1 程序存储器结构 20

2.3.2 片内数据存储器结构 22

2.3.3 片外数据存储器结构 25

2.4 MCS-51单片机的输入/输出端口 25

2.4.1 P1口 26

2.4.2 P2口 27

2.4.3 P3口 28

2.4.4 P0口 28

2.4.5 端口负载能力和接口要求 30

2.5 MCS-51单片机的时钟及CPU时序 30

2.5.1 时钟电路及时钟信号 30

2.5.2 CPU时序 32

2.6 MCS-51单片机的工作方式 33

2.6.1 复位方式 33

2.6.2 程序执行方式 34

2.6.3 单步执行方式 34

2.6.4 节电工作方式 35

2.6.5 编程和校验方式 36

思考题与习题 37

第3章 MCS-51指令系统及汇编程序设计 38

3.1 汇编语言概述 38

3.1.1 指令和机器语言 38

3.1.2 汇编语言 38

3.1.3 汇编语言指令格式 39

3.2 MCS-51单片机寻址方式 40

3.2.1 立即数寻址 40

3.2.2 寄存器寻址 41

3.2.3 直接寻址 41

3.2.4 寄存器间接寻址 42

3.2.5 变址寻址 43

3.2.6 位寻址 43

3.2.7 指令寻址 44

3.2.8 寻址空间及指令中符号注释 44

3.3 MCS-51单片机指令系统 45

3.3.1 数据传送指令 46

3.3.2 算术运算指令 50

3.3.3 逻辑操作指令 52

3.3.4 控制程序转移指令 54

3.3.5 位操作指令 58

3.4 MCS-51单片机伪指令 60

3.5 汇编语言程序设计举例 62

3.5.1 简单程序设计 62

3.5.2 分支程序设计 63

3.5.3 循环程序设计 64

3.5.4 子程序设计 65

思考题与习题 67

第4章 单片机C语言及程序设计 70

4.1 C51概述 70

4.1.1 C语言编程的优势 70

4.1.2 C51与ANSIC的区别 71

4.1.3 C51扩展的关键字 71

4.2 C51数据类型及存储 71

4.2.1 C51的数据类型 71

4.2.2 C51数据的存储 73

4.3 C51变量的定义及数据存储区域 74

4.3.1 C51变量的定义 74

4.3.2 C51变量的存储类型 74

4.3.3 C51变量的存储区 75

4.3.4 C51变量定义举例 76

4.3.5 C51变量的存储模式 76

4.3.6 C51变量的绝对定位 77

4.4 C51位变量的定义 77

4.4.1 bit型位变量的定义 77

4.4.2 sbit型位变量的定义 78

4.4.3 bdata型变量的位变量定义 79

4.5 C51特殊功能寄存器的定义 79

4.5.1 8位特殊功能寄存器的定义 79

4.5.2 16位特殊功能寄存器的定义 79

4.6 C51指针的定义 80

4.6.1 通用指针 80

4.6.2 存储器专用指针 80

4.6.3 指针变换 81

4.6.4 C51指针应用 82

4.7 C51的输入/输出 84

4.7.1 格式输出函数printf 85

4.7.2 格式输入函数scanf 85

4.8 C51函数的定义 87

4.8.1 C51函数的定义 87

4.8.2 C51中断函数的定义 88

4.9 C51与汇编语言混合编程 89

4.9.1 在C51函数中嵌入汇编程序 89

4.9.2 C51程序与汇编程序混合编程 89

4.10 C51集成开发软件Keil C 94

4.10.1 Keil C集成工具简介 94

4.10.2 Keil C操作界面 95

4.10.3 Keil C的使用 99

4.10.4 项目的运行调试 100

思考题与习题 103

第5章 单片机中断系统 106

5.1 中断概述 106

5.1.1 微机的输入/输出方式 106

5.1.2 中断的概念 107

5.2 中断系统结构及控制 108

5.2.1 MCS-51的中断结构 108

5.2.2 MCS-51的中断源 108

5.3 中断响应及处理过程 113

5.3.1 中断响应 113

5.3.2 中断处理和中断返回 116

5.4 中断应用举例 116

思考题与习题 121

第6章 MCS-51单片机定时器/计数器 123

6.1 MCS-51单片机定时器/计数器的结构及原理 123

6.1.1 MCS-51单片机定时器/计数器结构 123

6.1.2 MCS-51单片机定时器/计数器的工作原理 124

6.1.3 定时器/计数器的方式和控制寄存器 125

6.2 定时器TO与T1 126

6.2.1 模式0 126

6.2.2 模式1 127

6.2.3 模式2 127

6.2.4 模式3 128

6.3 定时器T2 132

6.3.1 定时器T2特殊功能寄存器 133

6.3.2 定时器T2的工作方式 134

6.4 定时器应用举例 138

6.4.1 定时器的初始化 138

6.4.2 定时器应用举例 139

6.4.3 定时器/计数器应用中的注意事项 144

思考题与习题 145

第7章 MCS-51单片机串行口 147

7.1 串行通信基础知识 147

7.1.1 数据通信 147

7.1.2 异步通信和同步通信 148

7.1.3 波特率 149

7.1.4 通信方向 149

7.1.5 串行通信接口种类 150

7.2 串行口结构及控制 150

7.2.1 89C52串行口结构 150

7.2.2 与串行口有关的特殊功能寄存器 151

7.2.3 波特率设计 152

7.3 串行口工作方式 155

7.3.1 串行口方式0 155

7.3.2 串行口方式1 156

7.3.3 串行口方式2和方式3 158

7.4 串行口应用举例 159

7.4.1 同步方式应用 159

7.4.2 异步方式应用 161

7.5 单片机与PC机通信的接口电路 165

7.5.1 MAX232芯片简介 165

7.5.2 PC机与89C52串行通信的接口电路 167

思考题与习题 167

第8章 单片机系统扩展 169

8.1 扩展并行三总线 169

8.1.1 片外三总线结构 169

8.1.2 MCS-51系统扩展的实现 170

8.1.3 总线驱动 171

8.2 扩展简单并行输入/输出口 171

8.3 扩展并行数据存储器 173

8.3.1 扩展存储器概述 173

8.3.2 数据存储器的扩展 174

8.4 串行扩展总线接口技术 175

8.4.1 常用的串行总线接口简介 176

8.4.2 12C总线 177

8.4.3 SPI串行外设接口总线 184

思考题与习题 189

第9章 单片机系统配置及接口 190

9.1 键盘接口 190

9.1.1 键盘基本问题 190

9.1.2 键盘结构及处理程序 192

9.1.3 中断扫描方式 197

9.2 LED显示接口 197

9.2.1 LED显示器结构原理 198

9.2.2 LED显示器接口及显示方式 198

9.2.3 LED显示器与89C52接口及显示子程序 199

9.3 A/D转换接口 201

9.3.1 多通道串行输出A/D芯片TLC2543及接口 201

9.3.2 逐次逼近型并行输出A/D转换器及接口 209

9.3.3 单片机内部集成的A/D转换器 212

9.4 D/A转换接口 214

9.4.1 8位并行D/A转换器DAC0832接口技术 214

9.4.2 串行输入D/A转换器TLC5615接口技术 217

9.5 开关器件接口 220

思考题与习题 223

附录A ASCII码表 224

附录B MCS-51指令表 225

附录C C51库函数 229

参考文献 237