当前位置:首页 > 工业技术
高等学校教材  单片机原理及应用  C51编程+Proteus仿真
高等学校教材  单片机原理及应用  C51编程+Proteus仿真

高等学校教材 单片机原理及应用 C51编程+Proteus仿真PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:张毅刚主编;彭喜元,刘兆庆,范贤光副主编
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2012
  • ISBN:9787040362725
  • 页数:395 页
图书介绍:本书为张毅刚主编“十五”、“十一五”国家级规划教材——《单片机原理及应用》的姊妹篇,前一本介绍的是MCS-51汇编语言编程,本书介绍C51语言编程,C51语言比汇编语言具有更好的可读性,且简单、易于修改、便于维护。本书特色:(1)注重原理与应用相结合,软硬件不脱节,在介绍各种外围电路及硬件接口设计的同时,对相应的C51编程设计也做了详细介绍,并给出实例。(2)突出了选取内容的实用性、典型性。书中所介绍的各种设计方案,均为实用的典型方案,并提供了大量的接口设计实例及C51编程实例,有利于学生提高设计工作的效率。(3)对系统设计中用到的各种新器件以及某些落后的内容进行了更新和补充。(4)为便于学生自学,本教材力求文字精练,通俗易懂,深入浅出。书中各章末均有思考题与习题,供学生巩固、消化、理解课堂所学内容之用。本教材详细介绍了美国ATMEL公司的AT89S51单片机的硬件结构以及片内外围部件的工作原理,Keil C51编程基础知识,以及AT89S51单片机的各种常用的硬件接口设计和相应的Keil C51接口驱动程序设计。此外还介绍了AT89S51单片机应用系统设计以及典型应用举例。本书可作为
《高等学校教材 单片机原理及应用 C51编程+Proteus仿真》目录

第1章 单片机概述 1

1.1什么是单片机 1

1.2单片机的发展历史 1

1.3单片机的特点 2

1.4单片机的应用 3

1.5单片机的发展趋势 4

1.6 MCS-51系列与AT89S5x系列单片机 5

1.6.1 MCS-51系列单片机 5

1.6.2 AT89系列单片机 6

1.6.3 AT89系列单片机的型号说明 8

1.7各种衍生品种的51单片机 9

1.7.1 STC系列单片机 9

1.7.2 C8051F × × ×单片机 10

1.7.3 ADμC812单片机 10

1.7.4华邦W77系列、W78系列单片机 11

1.8 PIC系列单片机与AVR系列单片机 11

1.8.1 PIC系列单片机 11

1.8.2 AVR系列单片机 12

1.9其他的嵌入式处理器简介 13

1.9.1嵌入式DSP处理器 13

1.9.2嵌入式微处理器 14

思考题及习题1 14

第2章 AT89S51单片机硬件结构 16

2.1 AT89S51单片机的硬件组成 16

2.2 AT89S51的引脚功能 17

2.2.1电源及时钟引脚 18

2.2.2控制引脚 18

2.2.3并行I/O口引脚 19

2.3 AT89S51的CPU 20

2.3.1运算器 20

2.3.2控制器 22

2.4 AT89S51单片机存储器的结构 22

2.4.1程序存储器空间 23

2.4.2数据存储器空间 24

2.4.3特殊功能寄存器 25

2.4.4位地址空间 28

2.5 AT89S51单片机的并行I/O端口 29

2.5.1 P0口 29

2.5.2 P1口 31

2.5.3 P2口 31

2.5.4 P3口 32

2.6时钟电路与时序 33

2.6.1时钟电路设计 33

2.6.2机器周期、指令周期与指令时序 35

2.7复位操作和复位电路 35

2.7.1复位操作 35

2.7.2复位电路设计 36

2.8看门狗定时器(WDT)的使用 37

2.9低功耗节电模式 38

2.9.1空闲模式 39

2.9.2掉电运行模式 39

思考题及习题2 40

第3章 C51语言编程基础与KeilμVision3的使用 42

3.1C51编程语言简介 42

3.1.1 C51语言与汇编语言的比较 42

3.1.2 C51语言与标准C语言的比较 42

3.2 C51语言程序设计基础 43

3.2.1 C51语言中的数据类型与存储类型 43

3.2.2 C51语言的特殊功能寄存器及位变量定义 48

3.2.3 C51语言的绝对地址访问 50

3.2.4 C51的基本运算 52

3.2.5 C51的分支与循环程序结构 55

3.2.6 C51的数组 62

3.2.7 C51的指针 65

3.3 C51语言的函数 66

3.3.1函数的分类 67

3.3.2函数的参数与返回值 68

3.3.3函数的调用 69

3.3.4中断服务函数 70

3.3.5变量及存储方式 70

3.3.6宏定义与文件包含 71

3.3.7库函数 72

3.4 Keil μVision3环境下的C51程序开发 72

3.4.1 Keil μVision3的基本操作 73

3.4.2添加用户源程序文件 75

3.4.3程序的编译与调试 77

3.4.4工程的设置 80

思考题及习题3 83

第4章 虚拟仿真开发工具Proteus的使用 84

4.1 Proteus功能概述 84

4.2 Proteus ISIS的虚拟仿真 85

4.3 Proteus ISIS环境简介 86

4.3.1 ISIS各窗口简介 86

4.3.2主菜单栏 87

4.3.3主工具栏 91

4.3.4工具箱 93

4.3.5仿真工具栏 95

4.3.6元件列表 95

4.3.7预览窗口 96

4.3.8原理图编辑窗口 96

4.4 Proteus ISIS的编辑环境设置 97

4.4.1选择模板 97

4.4.2选择图纸 98

4.4.3设置文本编辑器 98

4.4.4设置网格 98

4.5 Proteus ISIS的系统运行环境设置 98

4.6单片机应用系统的Proteus虚拟设计与仿真 99

4.6.1虚拟设计与仿真步骤 99

4.6.2新建或打开一个设计文件 100

4.6.3选择需要的元件到元件列表 102

4.6.4放置元件并连接电路 103

4.6.5加载目标代码文件、设置时钟频率及仿真运行 107

4.7 Proteus与μVision3的联调 108

思考题及习题4 110

第5章 单片机与显示器件及开关、键盘的接口设计 111

5.1单片机控制发光二极管显示 111

5.1.1单片机与发光二极管的连接 111

5.1.2 I/O端口的C51编程控制 112

5.2开关状态检测 115

5.2.1开关检测案例1 116

5.2.2开关检测案例2 117

5.3单片机控制LED数码管的显示 118

5.3.1 LED数码管的显示原理 118

5.3.2 LED数码管的静态显示与动态显示 120

5.4单片机控制LED点阵显示器显示 124

5.4.1 LED点阵显示器的结构与显示原理 124

5.4.2控制16 × 16 LED点阵显示屏的案例 125

5.5单片机控制液晶显示模块1602 LCD的显示 128

5.5.1 LCD 1602液晶显示模块简介 128

5.5.2单片机控制字符型LCD 1602显示案例 135

5.6键盘接口设计 139

5.6.1键盘接口设计应解决的问题 139

5.6.2独立式键盘接口设计案例 140

5.6.3矩阵式键盘接口设计案例 147

5.6.4非编码键盘扫描方式的选择 150

5.6.5专用键盘/显示器芯片HD7279的接口设计 151

思考题及习题5 163

第6章 AT89S51单片机的中断系统 164

6.1 AT89S51中断技术概述 164

6.2 AT89S51中断系统结构 164

6.2.1中断请求源 165

6.2.2中断请求标志寄存器 165

6.3中断允许与中断优先级的控制 167

6.3.1中断允许寄存器IE 167

6.3.2中断优先级寄存器IP 168

6.4响应中断请求的条件 169

6.5外部中断的响应时间 170

6.6外部中断的触发方式选择 171

6.6.1电平触发方式 171

6.6.2跳沿触发方式 171

6.7中断请求的撤销 171

6.8中断函数 172

6.9中断系统应用举例 174

6.9.1单一外中断的应用 174

6.9.2两个外中断的应用 175

6.9.3中断嵌套的应用 177

思考题及习题6 178

第7章 AT89S51单片机的定时器/计数器 180

7.1定时器/计数器的结构 180

7.1.1工作方式控制寄存器TMOD 180

7.1.2定时器/计数器控制寄存器TCON 181

7.2定时器/计数器的4种工作方式 182

7.2.1方式0 182

7.2.2方式1 183

7.2.3方式2 183

7.2.4方式3 184

7.3对外部输入的计数信号的要求 186

7.4定时器/计数器的编程和应用 186

7.4.1 P1口控制8只LED每0.5s闪亮一次 186

7.4.2计数器的应用 188

7.4.3控制P1.0产生周期为2 ms的方波 189

7.4.4利用T1控制发出1kHz的音频信号 191

7.4.5 LED数码管秒表的制作 193

7.4.6测量脉冲宽度——门控位GATEx的应用 195

7.4.7 LCD时钟的设计 198

思考题及习题7 201

第8章 AT89S51单片机的串行口 202

8.1串行口的结构 202

8.1.1串行口控制寄存器SCON 202

8.1.2特殊功能寄存器PCON 204

8.2串行口的4种工作方式 204

8.2.1方式0 204

8.2.2方式1 209

8.2.3方式2 210

8.2.4方式3 211

8.3多机通信 212

8.4波特率的制定方法 213

8.4.1波特率的定义 213

8.4.2定时器T1产生波特率的计算 213

8.5串行口应用设计案例 215

8.5.1各种串行通信接口标准 215

8.5.2方式1的应用设计 217

8.5.3方式2和方式3的应用设计 225

8.5.4多机通信的应用设计 227

8.5.5单片机与PC机串行通信的设计 234

8.5.6 PC机与单片机或与多个单片机的串行通信 239

思考题及习题8 240

第9章 AT89S51单片机的并行扩展技术 242

9.1系统并行扩展概述 242

9.1.1系统并行扩展结构 242

9.1.2地址空间分配 243

9.1.3外部地址锁存器 246

9.2外部程序存储器EPROM的并行扩展 247

9.2.1常用的EPROM芯片 248

9.2.2 AT89S51扩展EPROM的接口设计 249

9.2.3片内Flash存储器的编程 251

9.3外部数据存储器RAM的并行扩展 255

9.3.1常用的静态RAM (SRAM)芯片 255

9.3.2并行扩展RAM的接口设计 256

9.4 AT89S51扩展并行I/O芯片82C55的设计 258

9.4.1I/O接口扩展概述 258

9.4.2并行I/O芯片82C55简介 259

9.4.3 82C55的3种工作方式 263

9.4.4 AT89S51单片机与82C55的接口设计 267

9.5利用74LSTTL电路扩展并行I/O口 269

9.6用AT89S51单片机的串行口扩展并行输入/输出口 270

9.6.1用74LS165扩展并行输入口 270

9.6.2用74LS164扩展并行输出口 272

9.7用I/O口控制的扬声器报警接口 273

思考题及习题9 274

第10章 AT89S51单片机与DAC、ADC的接口 277

10.1AT89S51单片机扩展DAC0832 277

10.1.1 D/A转换器概述 277

10.1.2 8位并行DAC0832简介 278

10.1.3案例:DAC0832实现数字调压 280

10.1.4案例:波形发生器的制作 281

10.1.5案例:两片DAC0832双缓冲方式驱动X-Y绘图仪 287

10.1.6 DAC0832的双极性输出 290

10.2 AT89S51扩展10位串行DAC-TLC5615 291

10.2.1串行DACTLC5615简介 291

10.2.2案例:单片机与串行DACTLC5615的接口设计 292

10.3 AT89S51单片机与ADC0809的接口设计 295

10.3.1 A/D转换器简介 295

10.3.2 AT89S51与逐次比较型8位A/D转换器ADC0809的接口 296

10.3.3案例:单片机控制ADC0809进行A/D转换 297

10.3.4案例:2路输入的数字电压表的设计 299

10.4 AT89S51扩展12位串行ADC-TLC2543的设计 305

10.4.1 TLC2543的特性及工作原理 306

10.4.2案例:单片机扩展TLC2543的接口设计 308

10.5 AT89S51扩展12位并行A/D转换器AD1674的设计 311

10.6高分辨率的并行A/D转换器的选用 316

思考题及习题10 316

第11章 AT89S51单片机系统的串行扩展 318

11.1单总线串行扩展 318

11.1.1单总线器件温度传感器DS 18 B20简介 318

11.1.2设计案例:单总线DS18B20温度测量系统 321

11.2 SPI总线串行扩展 324

11.2.1SPI总线的扩展结构 324

11.2.2设计案例:扩展带有SPI接口的8位串行A/D转换器TLC549 326

11.3 I2C总线的串行扩展 329

11.3.1I2C串行总线系统的基本结构 329

11.3.2 I2C总线的数据传送规定 330

11.3.3 AT89S51的I2C总线扩展系统 333

11.3.4 12C总线数据传送的模拟 334

11.3.5设计案例:采用AT24C02存储器的IC卡设计 338

思考题及习题11 345

第12章 单片机的各种控制与检测应用设计 346

12.1单片机控制步进电机的设计 346

12.1.1控制步进电机的工作原理 346

12.1.2电路设计与编程 346

12.2单片机控制直流电机 348

12.2.1控制直流电机的工作原理 348

12.2.2电路设计与编程 349

12.3电机转速测量 351

12.3.1电机转速测量的工作原理 351

12.3.2电路设计与编程 351

12.4频率计的制作 353

12.4.1工作原理 353

12.4.2电路设计与软件编程 354

12.5基于时钟/日历芯片DS1302的电子钟设计 356

12.5.1 DS1302的工作原理 357

12.5.2电路设计与编程 359

12.6电话拨号的模拟 364

12.6.1模拟电话拨号的设计要求 364

12.6.2电路设计与编程 364

12.7简易音符发生器的制作 369

12.7.1设计要求及工作原理 369

12.7.2电路设计与编程 370

12.8 8位竞赛抢答器设计 373

12.8.1设计要求 373

12.8.2电路设计与仿真 373

12.9电梯运行控制的楼层显示 379

12.9.1工作原理与设计要求 379

12.9.2电路设计与仿真 379

12.10基于热敏电阻的数字温度计设计 384

12.10.1工作原理与技术要求 384

12.10.2电路设计与编程 384

附录1头文件“LCD1602.h”清单 388

附录2头文件“DS1302.h”清单 390

参考文献 395

相关图书
作者其它书籍
返回顶部