华信教育资源网
单片机原理与应用设计(C51编程+Proteus仿真)(第3版)
单片机 Proteus仿真 C51编程
丛   书   名: 普通高等教育“十一五”国家级规划教材  新工科建设·计算机类规划教材  国家级精品课程教学成果
作   译   者:张毅刚 出 版 日 期:2020-01-01
出   版   社:电子工业出版社 维   护   人:冉哲 
书   代   号:G0374070 I S B N:9787121374074

图书简介:

本书是普通高等教育“十一五”国家级规划教材和国家精品课程主讲教材。本书详细介绍美国Atmel公司的AT89S51单片机的内部硬件资源及工作原理,采用C51语言编程,并以虚拟仿真平台Proteus作为设计与开发工具,同时还简要介绍了Keil ?Vision的使用方法。本书从应用角度出发,重点介绍单片机应用的各种技术实现,如信息的显示与输入、中断、定时/计数、串行通信、模数与数模转换、系统的并行/串行扩展、应用系统设计等,并且给出较多虚拟仿真设计实例。扫描前言中的二维码可获取实验和课程设计题目。本书提供电子课件和习题参考答案,登录华信教育资源网(www.hxedu.com.cn)注册后即可免费下载。本书可作为各类工科高等学校和职业技术学院电气工程、电子电气信息技术、智能仪器仪表、机电一体化、计算机、自动化等专业单片机原理与应用课程的教材,也可供从事单片机应用设计的工程技术人员参考。
定价 59.8
您的专属联系人更多
关注 评论(3) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源
    图书特别说明:

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书是普通高等教育“十一五”国家级规划教材和国家精品课程主讲教材。本书详细介绍美国Atmel公司的AT89S51单片机的内部硬件资源及工作原理,采用C51语言编程,并以虚拟仿真平台Proteus作为设计与开发工具,同时还简要介绍了Keil ?Vision的使用方法。本书从应用角度出发,重点介绍单片机应用的各种技术实现,如信息的显示与输入、中断、定时/计数、串行通信、模数与数模转换、系统的并行/串行扩展、应用系统设计等,并且给出较多虚拟仿真设计实例。扫描前言中的二维码可获取实验和课程设计题目。本书提供电子课件和习题参考答案,登录华信教育资源网(www.hxedu.com.cn)注册后即可免费下载。本书可作为各类工科高等学校和职业技术学院电气工程、电子电气信息技术、智能仪器仪表、机电一体化、计算机、自动化等专业单片机原理与应用课程的教材,也可供从事单片机应用设计的工程技术人员参考。

    图书详情

    ISBN:9787121374074
    开 本:16开
    页 数:348
    字 数:584.0

    本书目录

    第1章  单片机概述 1
    1.1  单片机简介 1
    1.2  单片机的发展历史 1
    1.3  单片机的特点 2
    1.4  单片机的应用领域 3
    1.5  单片机的发展趋势 3
    1.6  MCS-51系列与AT89S5x系列单片机 4
    1.6.1  MCS-51系列单片机 4
    1.6.2  AT89S5x系列单片机 5
    1.7  各种衍生的8051单片机 6
    1.7.1  STC系列单片机 6
    1.7.2  C8051Fxxx系列单片机 7
    1.7.3  ADμC812系列单片机 8
    1.7.4  华邦W77系列、W78系列单片机 8
    1.8  PIC系列单片机与AVR系列单片机 8
    1.8.1  PIC系列单片机 8
    1.8.2  AVR系列单片机 9
    1.9  其他嵌入式处理器简介 10
    1.9.1  DSP 10
    1.9.2  嵌入式微处理器 11
    思考题及习题1 11
    第2章  AT89S51单片机的内部硬件结构 12
    2.1  AT89S51单片机的硬件组成 12
    2.2  AT89S51单片机的引脚功能 13
    2.2.1  电源及时钟引脚 13
    2.2.2  控制引脚 13
    2.2.3  并行I/O口引脚 14
    2.3  AT89S51单片机的CPU 15
    2.3.1  运算器 15
    2.3.2  控制器 16
    2.4  AT89S51单片机存储器的结构 17
    2.4.1  程序存储器空间 17
    2.4.2  数据存储器空间 18
    2.4.3  特殊功能寄存器 18
    2.4.4  位地址空间 21
    2.5  AT89S51单片机的并行I/O口 23
    2.5.1  P0口 23
    2.5.2  P1口 24
    2.5.3  P2口 24
    2.5.4  P3口 25
    2.6  时钟电路与时序 26
    2.6.1  时钟电路设计 26
    2.6.2  机器周期、指令周期与指令时序 27
    2.7  复位操作和复位电路 28
    2.7.1  复位操作 28
    2.7.2  复位电路设计 28
    2.8  AT89S51单片机的最小应用系统 29
    2.9  看门狗定时器的使用 29
    2.10  低功耗节电模式 30
    2.10.1  空闲模式 31
    2.10.2  掉电模式 31
    思考题及习题2 32
    第3章  C51语言编程基础与Keil μVision 34
    3.1  C51语言概述 34
    3.1.1  C51语言与8051汇编语言的比较 34
    3.1.2  C51语言与标准C语言的比较 34
    3.2  C51程序设计基础 35
    3.2.1  C51语言的数据类型与存储类型 35
    3.2.2  C51语言的特殊功能寄存器及位变量定义 39
    3.2.3  C51语言的绝对地址访问 41
    3.2.4  C51语言的基本运算 43
    3.2.5  C51语言的分支与循环程序结构 45
    3.2.6  C51语言的数组 51
    3.2.7  C51语言的指针 53
    3.3  C51语言的函数 54
    3.3.1  函数的分类 54
    3.3.2  函数的调用 55
    3.3.3  中断服务函数 56
    3.3.4  变量及存储方式 56
    3.3.5  宏定义与文件包含 57
    3.3.6  库函数 57
    3.4  使用Keil μVision开发C51程序 58
    3.4.1  Keil μVision的基本操作 58
    3.4.2  添加用户源程序文件 60
    3.4.3  程序的编译与调试 61
    3.4.4  工程的设置 64
    思考题及习题3 66
    第4章  虚拟仿真平台Proteus的使用 67
    4.1  Proteus的基本功能 67
    4.2  Proteus ISIS的虚拟仿真 68
    4.3  Proteus ISIS环境简介 69
    4.3.1  原理图编辑窗口 69
    4.3.2  预览窗口 70
    4.3.3  对象选择窗口 70
    4.3.4  主菜单栏 71
    4.3.5  主工具栏 73
    4.3.6  工具箱 74
    4.3.7  仿真工具栏 75
    4.3.8  元件列表 75
    4.4  Proteus ISIS的编辑环境设置 76
    4.5  Proteus ISIS的系统运行环境设置 77
    4.6  单片机系统的电路设计与虚拟仿真 78
    4.6.1  电路设计与虚拟仿真的步骤 78
    4.6.2  新建或打开一个设计文件 78
    4.6.3  选择需要的元件到元件列表中 79
    4.6.4  放置元件并连接电路 81
    4.6.5  加载目标代码文件、设置时钟频率及仿真运行 85
    4.7  Proteus的各种虚拟仿真工具 85
    4.7.1  虚拟激励信号源 85
    4.7.2  虚拟仪器 90
    4.7.3  虚拟仪器的图表仿真 99
    4.7.4  硬件断点的设置 101
    第5章  单片机开关检测、键盘输入与显示接口设计 104
    5.1  用单片机控制发光二极管显示 104
    5.1.1  单片机与发光二极管的连接 104
    5.1.2  I/O口的编程控制 105
    5.2  开关状态检测 108
    5.2.1  开关检测实例1 108
    5.2.2  开关检测实例2 109
    5.3  用单片机控制LED数码管显示 110
    5.3.1  LED数码管的显示原理 110
    5.3.2  LED数码管的静态显示与动态显示 112
    5.4  用单片机控制LED点阵显示屏 显示 115
    5.4.1  LED点阵显示屏的结构与显示原理 115
    5.4.2  16×16 LED点阵显示屏设计实例 116
    5.5  用单片机控制LCD 1602显示 119
    5.5.1  LCD 1602简介 119
    5.5.2  LCD 1602设计实例 125
    5.6  用单片机控制LCD12864显示 128
    5.6.1  引脚功能与显示原理 129
    5.6.2  控制命令 130
    5.6.3  LCD12864设计实例 131
    5.7  键盘接口设计 136
    5.7.1  键盘接口设计需要解决的问题 136
    5.7.2  独立式键盘接口设计实例 137
    5.7.3  矩阵式键盘接口设计实例 143
    5.7.4  非编码键盘扫描方式的选择 146
    5.7.5  单片机与HD7279A的接口设计 147
    思考题及习题5 156
    第6章  中断系统的工作原理及应用 158
    6.1  AT89S51单片机中断技术概述 158
    6.2  AT89S51单片机中断系统结构 158
    6.2.1  中断源 158
    6.2.2  中断请求标志寄存器 159
    6.3  中断允许控制与中断优先级控制 160
    6.3.1  中断允许寄存器IE 160
    6.3.2  中断优先级寄存器IP 161
    6.4  响应中断请求的条件 162
    6.5  外部中断请求的响应时间 163
    6.6  外部中断的触发方式选择 163
    6.7  中断请求的撤销 164
    6.8  中断函数 165
    6.9  中断系统的应用 166
    6.9.1  单一外部中断的应用 166
    6.9.2  两个外部中断的应用 167
    6.9.3  中断嵌套的应用 169
    思考题及习题6 170
    第7章  定时/计数器的工作原理及应用 171
    7.1  定时/计数器的结构 171
    7.1.1  工作方式控制寄存器TMOD 171
    7.1.2  定时/计数器控制寄存器TCON 172
    7.2  定时/计数器的4种工作方式 172
    7.2.1  方式0 172
    7.2.2  方式1 173
    7.2.3  方式2 174
    7.2.4  方式3 174
    7.3  定时/计数器对外部输入信号的要求 176
    7.4  定时/计数器的编程和应用 176
    7.4.1  用P1口控制8个LED每0.5s闪亮一次 176
    7.4.2  计数器的应用 177
    7.4.3  控制P1.0引脚产生周期为2ms的方波 179
    7.4.4  利用T1控制发出频率为1kHz的音频信号 180
    7.4.5  制作LED数码管秒表 182
    7.4.6  测量脉冲宽度——门控位的应用 184
    7.4.7  LCD时钟的设计 186
    思考题及习题7 188
    第8章  串行口的工作原理及应用 190
    8.1  串行通信基础 190
    8.1.1  并行通信与串行通信 190
    8.1.2  同步通信与异步通信 191
    8.1.3  串行通信的传输模式 191
    8.1.4  串行通信的错误校验 192
    8.2  串行口的结构 192
    8.2.1  串行口控制寄存器SCON 193
    8.2.2  特殊功能寄存器PCON 194
    8.3  串行口的4种工作方式 194
    8.3.1  方式0 194
    8.3.2  方式1 199
    8.3.3  方式2 200
    8.3.4  方式3 201
    8.4  多机通信 201
    8.5  波特率的定义方法 202
    8.5.1  波特率的定义 203
    8.5.2  计算T1产生的波特率 203
    8.6  串行口的应用 204
    8.6.1  RS-232C、RS-422A与RS-485简介 204
    8.6.2  方式1的应用设计实例 207
    8.6.3  方式2和方式3的应用设计实例 213
    8.6.4  多机通信的应用设计实例 215
    8.6.5  单片机与PC机串行通信的设计实例 222
    8.6.6  PC机与单片机或与多个单片机的串行通信 226
    思考题及习题8 227
    第9章  单片机系统的并行扩展 228
    9.1  系统并行扩展技术 228
    9.1.1  系统并行扩展结构 228
    9.1.2  地址空间分配 229
    9.1.3  外部地址锁存器 231
    9.2  外部RAM的并行扩展 233
    9.2.1  常用的静态RAM芯片 233
    9.2.2  读/写外部RAM的操作时序 234
    9.2.3  并行扩展外部RAM设计实例 235
    9.2.4  单片机扩展RAM 6264设计实例 237
    9.3  内部Flash存储器的编程 238
    9.3.1  使用通用编程器 239
    9.3.2  使用ISP下载线 239
    9.4  E2PROM的并行扩展 240
    9.4.1  并行E2PROM芯片简介 240
    9.4.2  单片机扩展2864A设计实例 241
    9.5  利用82C55扩展并行I/O口 242
    9.5.1  并行I/O口扩展概述 242
    9.5.2  82C55简介 243
    9.5.3  82C55的三种工作方式 246
    9.5.4  单片机与82C55的接口电路设计实例 250
    9.6  利用74LSTTL电路扩展并行I/O口 252
    9.7  利用单片机的串行口扩展并行I/O口 253
    9.7.1  利用74LS165扩展并行输入口设计实例 253
    9.7.2  利用74LS164扩展并行输出口设计实例 254
    思考题及习题9 255
    第10章  单片机系统的串行扩展 257
    10.1  单总线串行扩展 257
    10.1.1  数字温度传感器DS18B20简介 257
    10.1.2  单总线串行扩展DS18B20实现温度测量系统设计实例 260
    10.2  SPI总线串行扩展 263
    10.3  I2C总线串行扩展 264
    10.3.1  I2C总线系统的基本结构 264
    10.3.2  I2C总线数据传送的规定 265
    10.3.3  单片机的I2C总线扩展系统 267
    10.3.4  I2C总线数据传送的模拟 268
    10.3.5  利用I2C总线扩展AT24C02的IC卡设计实例 271
    思考题及习题10 277
    第11章  单片机与D/A转换器、A/D转换器的接口 278
    11.1  单片机扩展D/A转换器概述 278
    11.2  单片机扩展8位并行D/A转换器 279
    11.2.1  DAC0832简介 279
    11.2.2  单片机并行扩展DAC0832
    的程控电压源设计实例 280
    11.2.3  波形发生器设计实例 281
    11.3  单片机扩展10位串行D/A
    转换器 286
    11.3.1  TLC5615简介 286
    11.3.2  单片机扩展TLC5615
    设计实例 287
    11.4  单片机扩展A/D转换器概述 290
    11.5  单片机扩展8位并行A/D转换器 291
    11.5.1  单片机扩展ADC0809
    设计实例 292
    11.5.2  两路输入的数字电压表
    设计实例 294
    11.6  单片机扩展8位串行A/D转换器 297
    11.6.1  TLC549简介 297
    11.6.2  单片机扩展TLC549设计
    实例 298
    11.7  单片机扩展12位串行A/D转换器 300
    11.7.1  TLC2543简介 300
    11.7.2  单片机扩展TLC2543
    设计实例 302
    思考题及习题11 305
    第12章  单片机应用系统的设计 306
    12.1  单片机应用系统的设计步骤 306
    12.2  单片机应用系统设计应当考虑的问题 307
    12.2.1  硬件设计应当考虑的问题 307
    12.2.2  典型的单片机应用系统组成 308
    12.2.3  系统设计中的总线驱动 309
    12.3  单片机应用系统的仿真开发与调试 310
    12.4  单片机应用系统设计实例 314
    12.4.1  单片机控制步进电机设计实例 314

    12.4.2  单片机控制直流电机设计实例 316
    12.4.3  频率计设计实例 318
    12.4.4  模拟电话拨号设计实例 321
    12.4.5  8位竞赛抢答器设计实例 326
    12.4.6  基于时钟/日历芯片DS1302
    的电子钟设计实例 331
    思考题及习题12 337
    参考文献 338
    展开

    前     言

    前   言
    本书是普通高等教育“十一五”国家级规划教材的第3版,同时也是哈尔滨工业大学“单片机原理”国家精品课程主讲教材。自2008年本书第1版出版以来,已印刷多次,被全国几十所院校选为“单片机原理”课程的教材。
    由于Intel 8051内核单片机获得的巨大成功,使其成为国内外公认的8位单片机的标准体系结构,被许多厂家作为基核,推出了各种高集成化的兼容机型,且在世界范围得到了广泛应用。由于8051单片机结构简单、清晰、易学,是目前单片机初学者最容易掌握的机型,因此以8051内核技术为主导的单片机仍是目前我国多所高校讲授的机型。
    美国Atmel公司的AT89S51单片机是目前各种8051内核单片机中最具代表性的机型,本书基于AT89S51单片机,详细介绍其工作原理及应用设计。
    本书采用C51语言编程,并融入了先进的虚拟仿真工具Proteus,给出较多的经过验证的Proteus仿真案例。本次修订,反映了由作者负责的“单片机原理”国家精品课程的教学模式与教学方法改革的部分成果及对课程体系结构的改进也体现在本教材的修订之中。
    本书在编写时重点考虑了如下问题:
    (1)将虚拟仿真工具Proteus应用在单片机课程教学中,使课程的教学模式及传统的设计开发模式发生了革命性的变化,Proteus平台为学习者提供了一个功能强大的、流动的单片机系统设计虚拟实验室。
    (2)传统教学模式存在的弊病是,学生听完课堂讲授,往往得不到软、硬件设计的训练,使得教学与实际设计脱节。本书采用Proteus与Keil ?Vision作为工具,将软、硬件设计与案例设计有机地结合为一体,使学生真正从概念出发,设计出一个能够虚拟运行的应用系统,真正得到软、硬件设计与调试的完整训练,从而达到课程教学的最终目的。把Proteus融入课程教学各环节中,是课程教学深入改革的必然趋势。
    (3)本书的编程语言采用C51。为提高读者的编程调试能力,本书对C51的开发调试工具Keil ?Vision及Proteus的使用从实际使用角度进行了介绍,使读者尽快掌握这两种软件平台的使用方法。
    本书共分为12章,涵盖了单片机应用技术的基本内容。
    第1章介绍有关单片机的基本概念,以及目前流行的各类单片机与嵌入式处理器。
    第2章介绍AT89S51单片机的内部基本硬件结构及硬件资源。
    第3章介绍C51语言编程基础及Keil ?Vision开发平台的使用。
    第4章介绍Proteus虚拟仿真平台的基本功能与使用方法。
    第5章介绍单片机系统的显示及开关与键盘检测的实现,为后续各章的案例仿真、观察系统运行的结果、设定运行条件打下基础。
    第6章至第8章分别介绍单片机的内部硬件资源,即中断系统、定时/计数器、串行口的工作原理及应用案例。
    第9章为单片机系统的并行扩展介绍。
    第10章对目前流行的单片机系统串行扩展技术,如I2C总线、单总线、SPI总线,进行了详细介绍,并给出应用案例。
    第11章介绍模数转换与数模转换的设计。
    第12章介绍单片机应用系统的设计,并给出应用案例,供读者参考借鉴。
    此外,扫描二维码可获取:紧密结合课程内容的实验和课程设计题目,用于实验教学和课程设计环节;头文件LCD1602.h和DS1302.h的清单。
    全书参考学时为40~60学时,教师可根据实际情况,对讲授内容进行取舍或补充。
    本书由哈尔滨工业大学张毅刚教授担任主编,负责完成全书整体架构、目录确定及全书的统稿工作,此外还完成了第1、2、3、5章的编写。潘大为完成了第4、6、7、9、12章的编写,邓立宝完成了第8、10、11章及附录A(见二维码)的编写。
    本书提供教学大纲、PPT课件和习题参考答案等教学资源,任课教师可登录华信教育资源网(www.hxedu.com.cn)免费注册下载。
    在本书出版之际,特别感谢广州风标电子有限公司总经理匡载华先生为本书的编写出版给予的大力支持和帮助,感谢广州风标电子有限公司提供的有关技术资料、网络版Proteus仿真实验平台及配套的F型模块化实验装置。
    由于作者学识有限,书中错误及疏漏之处敬请读者批评指正。主编邮箱:zyg@hit.edu.cn。


    主  编
    于哈尔滨工业大学
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价 我要评论
华信教育资源网