当前位置:首页 > 工业技术
单片机原理及应用系统设计
单片机原理及应用系统设计

单片机原理及应用系统设计PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:胡亚琦主编
  • 出 版 社:西安:西安电子科技大学出版社
  • 出版年份:2010
  • ISBN:9787560624365
  • 页数:326 页
图书介绍:本书针对目前广泛应用的MCS-51系列AT89S52单片机和最流行的程序设计语言—C语言,以单片机原理讲解为基础,以应用设计为重点,深入浅出,系统全面地介绍了单片机原理及应用系统设计。内容包括:单片机基本原理、指令系统及基本编程方法、单片机C语言程序设计、汇编语言与C语言混编技术、单片机应用系统设计、KeilC51集成开发环境及仿真软件介绍。
《单片机原理及应用系统设计》目录

第一章 单片机概述及基本结构 1

1.1单片机概述 1

1.1.1单片机的定义 1

1.1.2单片机的发展 1

1.1.3单片机的分类 3

1.1.4单片机的特点 4

1.1.5单片机的应用领域 4

1.2 51系列单片机的基本结构 5

1.2.1内部结构的主要组成部分 5

1.2.2单片机的引脚功能 8

1.2.3控制器、时钟电路和基本时序周期 9

1.2.4复位状态及复位电路 11

1.2.5省电方式 13

1.3 AT89系列单片机型号的编码说明及封装形式 15

习题一 17

第二章AT89S52单片机的硬件结构 19

2.1 AT89S52存储器结构 19

2.1.1程序存储器 19

2.1.2片内Flash存储器操作 21

2.1.3数据存储器 27

2.1.4特殊功能寄存器SFR 29

2.2并行1/O接口 34

2.2.1 P0口 34

2.2.2 P1口 36

2.2.3 P2口 37

2.2.4 P3口 38

2.3 AT89S52的定时/计数器T0、 T1和T2 39

2.3.1定时/计数器的基本原理 39

2.3.2定时/计数器T0/Tl的控制与状态寄存器 40

2.3.3 T0/Tl的四种工作模式 41

2.3.4定时/计数器T2的控制与状态寄存器 44

2.3.5 T2的工作模式 46

2.4 AT89S52的中断系统 49

2.4.1中断的基本概念 49

2.4.2中断源 50

2.4.3 AT89S52的中断标志与控制 53

2.4.4中断响应的条件、过程与时间 56

2.5 AT89S52的串行通信 57

2.5.1串行通信概述 57

2.5.2 RS232C标准总线及通信设计 60

2.5.3 AT89S52串行通信接口 62

习题二 67

第三章AT89S52单片机指令系统 70

3.1单片机指令系统概述 70

3.1.1指令、指令系统的概念 70

3.1.2单片机指令系统及其指令格式 70

3.2寻址方式 71

3.2.1立即寻址 71

3.2.2寄存器寻址 71

3.2.3寄存器间接寻址 72

3.2.4直接寻址 72

3.2.5基址寄存器加变址寄存器间接寻址 73

3.2.6相对寻址 73

3.2.7位寻址 73

3.3数据传送类指令 74

3.3.1访问片内数据存储器的一般数据传送指令 74

3.3.2片内特殊传送指令 76

3.3.3片外数据存储器数据传送指令 77

3.3.4访问程序存储器的数据传送指令 77

3.4算术运算类指令 78

3.4.1加、减法指令 78

3.4.2十进制调整指令 80

3.4.3乘、除法指令 81

3.5逻辑运算及移位指令 81

3.6控制转移类指令 83

3.6.1无条件转移指令 83

3.6.2条件转移指令 85

3.7子程序调用和返回指令 87

3.7.1子程序调用指令 88

3.7.2返回指令 88

3.7.3空操作指令 89

3.8位操作类指令 89

3.9汇编程序格式与伪指令 91

习题三 93

第四章 单片机程序设计语言 96

4.1汇编语言程序设计 96

4.1.1汇编语言程序设计步骤 96

4.1.2汇编语言程序结构 97

4.1.3汇编语言程序设计方法 99

4.1.4汇编语言编程规范 105

4.2 C51语言程序设计 107

习题四 109

第五章C51程序设计语言 110

5.1 C51基本语法规则 110

5.1.1 C51数据类型 110

5.1.2常量与变量 111

5.1.3运算符与表达式 114

5.1.4程序控制语句 116

5.1.5函数 121

5.1.6指针 124

5.1.7构造数据类型 127

5.1.8 C51位操作及其表达式 131

5.1.9自增减运算符、复合运算符及其表达式 134

5.2 C51程序设计技巧 135

5.2.1存取AT89S52单片机特殊功能寄存器 135

5.2.2位的控制 136

5.2.3中断子程序的设计 137

5.2.4内存应对式I/O 138

5.2.5 C51程序设计举例 139

5.3汇编语言与C语言的混合编程 140

5.3.1 C51和A51接口所涉及的几个主要问题 142

5.3.2 C51程序中嵌入汇编 144

5.3.3 C51与汇编函数的相互调用 145

5.4 C51与汇编语言的对照 148

5.4.1实例描述 148

5.4.2硬件电路 148

5.4.3程序设计 149

5.4.4汇编语言编写的代码 150

5.4.5 C语言编写的代码 151

5.4.6实例小结 151

5.5 C51程序设计小结 152

习题五 153

第六章 单片机系统功能的扩展技术 154

6.1系统扩展概述 154

6.2总线扩展及地址分配 154

6.2.1总线扩展 155

6.2.2地址分配 158

6.3外部存储器及其访问 161

6.3.1外部程序存储器及其访问 161

6.3.2外部数据存储器及其访问 164

6.4外部程序存储器扩展 165

6.4.1常用EPROM芯片 166

6.4.2典型EPROM扩展电路实现 167

6.5外部数据存储器的扩展 168

6.5.1 RAM(SRAM)的扩展 168

6.5.2并行E2 PROM的扩展 170

6.6并行I/O接口的扩展 172

6.6.1简单I/O接口的扩展 172

6.6.2可编程8155的并行I/O扩展 173

6.6.3 8255A可编程并行I/O接口扩展 184

6.7 A/D和D/A转换接口的扩展 190

6.7.1 8位并行A/D转换器ADC0809的扩展 191

6.7.2 12位并行A/D转换器AD574的扩展 194

6.7.3 8位并行D/ A转换器DAC0832的扩展 196

6.8串行总线扩展技术 199

6.8.1 SPI和I2 C串行总线接口 200

6.8.2键盘/显示器串行扩展技术 205

6.8.3 E2 PROM串行扩展技术 209

6.8.4 D/A和A/D转换器串行扩展技术 212

6.8.5串行总线单片机最小系统实验板 218

习题六 221

第七章 单片机应用系统开发设计实例 222

7.1汇编源程序的建立与编译 222

7.1.1 Proteus中的源程序设计与编译 222

7.1.2 KeilμVision中的源程序设计与编译 224

7.2 Proteus与单片机电路的交互式仿真与调试 231

7.2.1加载目标代码 231

7.2.2单片机系统的Proteus交互仿真 232

7.2.3调试菜单与调试窗口 232

7.2.4观察窗口 234

7.3 I/O口应用 236

7.3.1 Proteus电路设计 237

7.3.2 Proteus调试与仿真 237

7.3.3总结与提示 238

7.4 4×4矩阵式键盘识别技术 238

7.4.1 Proteus电路设计 239

7.4.2源程序设计 239

7.4.3 Proteus调试与仿真 243

7.4.4总结与提示 243

7.5动态扫描显示 243

7.5.1 Proteus电路设计 243

7.5.2源程序设计 244

7.5.3 Proteus调试与仿真 246

7.5.4总结与提示 246

7.6 8×8点阵LED显示 246

7.6.1 Proteus电路设计 246

7.6.2 Proteus设计与仿真 248

7.6.3总结与提示 249

7.7 I/O口的扩展 249

7.7.1 Proteus电路设计 249

7.7.2源程序设计 250

7.7.3 Proteus调试与仿真 252

7.7.4总结与提示 252

7.8定时/计数器实验 252

7.8.1 Proteus电路设计 253

7.8.2 Proteus设计与仿真 254

7.8.3总结与提示 255

7.9外部数据存储器扩展 255

7.9.1 Proteus电路设计 255

7.9.2 Proteus调试与仿真 256

7.9.3总结与提示 256

7.10外部中断实验 256

7.10.1 Proteus电路设计 258

7.10.2 Proteus调试与仿真 259

7.10.3总结与提示 259

7.11单片机与PC机间的串行通信 259

7.11.1 Proteus电路设计 260

7.11.2 Proteus调试与仿真 262

7.11.3总结与提示 263

7.12单片机与步进电机的接口技术 263

7.12.1 Proteus电路设计 264

7.12.2 Proteus调试与仿真 265

7.12.3总结与提示 265

7.13单片机与直流电动机的接口技术 266

7.13.1 Proteus电路设计 266

7.13.2 Proteus调试与仿真 267

7.13.3总结与提示 268

7.14基于DAC0832数/模转换器的数控电源 268

7.14.1 Proteus电路设计 269

7.14.2 Proteus调试与仿真 270

7.14.3总结与提示 270

7.15基于ADC0808模/数转换器的数字电压表 271

7.15.1 Proteus电路设计 271

7.15.2源程序设计 272

7.15.3 Proteus调试与仿真 276

7.15.4总结与提示 277

第八章 单片机应用实验 278

实验1闪烁灯 278

实验2模拟开关灯 280

实验3多路开关状态指示 282

实验4广告灯设计 286

实验5广告灯(利用取表方式) 289

实验6报警器 291

实验7 I/O并行口直接驱动LED显示 294

实验8按键识别方法之一 297

实验9 00~99计数器 300

实验10动态数码显示技术 303

附录A指令系统中常用符号说明 307

附录B影响标志位设置的指令 309

附录C AT89S52指令表 310

附录D片内RAM中20H~2FH共128位位地址表 314

附录E特殊功能寄存器地址表 315

附录F KeilC51软件使用 317

附录G AT89S52单片机下载器软件使用 323

参考文献 324

返回顶部