出版时间:2010-9 出版社:西安电子科技大学出版社 作者:胡亚琦 主编 页数:324 字数:493000
前言
单片机以其功能强、体积小、可靠性高、价格低廉等特点,在工业控制、数据采集、智能化仪表、机电一体化、家用电器等领域得到了广泛的应用,极大地提高了这些领域的技术水平和自动化程度。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。各高等院校电子与通信类相关专业都将单片机课程列为其教学计划的重要组成部分。 目前,虽然有关单片机技术的教材比较多,但随着单片机应用技术日新月异的发展,有的教材内容显得有些陈旧,所介绍的单片机也已经被淘汰,学生很难再对其进行开发实践,有的教材实践性不强,只有原理讲解而缺少实际应用方面的内容或这方面内容不系统,学生学完这门课后达不到进行应用系统开发设计的程度。基于以上原因,作者根据多年在单片机教学、项目开发及培训等方面的经验编写了本书。本书针对目前广泛应用的MCS-51系列中的AT89S52单片机和最流行的程序设计语言-C语言,使用Keil C51集成开发环境,以单片机原理讲解为基础,以应用设计为重点,系统全面地介绍了单片机原理及应用系统设计。同时,还对单片机仿真软件Proteus进行了介绍,使学生通过对本书的学习,实现从单片机原理-单片机应用系统设计-软件仿真-硬件实现这样一个过程,为进一步开发设计打下坚实的基础。 本书理论联系实际,易教易学。书中除列举大量典型事例来阐释基本理论知识外,还单独设立了应用系统设计实例,既有利于学生理解和掌握理论知识,又提高了学生动手解决实际问题的能力。 本书第一(1.2、1.3)、二、三章由兰州交通大学胡亚琦编写,第四、五章由西北师范大学刘远聪编写,第六章由西安工程大学张龙编写,第七章由西北师范大学刘艳慧编写,第一(1.1)、八章由兰州工业高等专科学校翟广宇编写,由胡亚琦负责全书的组织编排及统稿工作。在本书编写过程中,得到了杭州电子工业大学教授尚群立博士、西北师范大学厉树忠教授的大力帮助,并提出了许多宝贵意见。在此,向他们一并表示衷心的感谢。 本书可作为高等院校电子信息工程、通信、电气工程、自动化、自动控制等电类本科专业的教材,也可作为相关工程设计人员的参考用书。 由于编者水平所限,书中难免存在疏漏和不妥,恳请广大读者批评指正。
内容概要
本书是作者根据多年在单片机教学、教材编写、项目开发及培训等方面的经验编写而成的。本书针对目前广泛应用的MCS-51系列AT89S52单片机和最流行的程序设计语言——C语言,以单片机原理讲解为基础,以应用设计为重点,深入浅出、系统全面地介绍了单片机原理及应用系统设计。
本书共八章,内容包括:单片机概述及基本结构、AT89S52单片机的硬件结构、AT89S52单片机指令系统、单片机程序设计语言、C51程序设计语言、单片机系统功能的扩展技术、单片机应用系统开发设计实例及单片机应用实验。本书具有系统性强、浅显易懂、容易上手、即学即用等特点。
本书可作为高等院校电子信息工程、通信、电气工程、自动化、自动控制等电类本科专业教材,也可作为相关工程技术人员的参考用书。
书籍目录
第一章 单片机概述及基本结构
1.1 单片机概述
1.1.1 单片机的定义
1.1.2 单片机的发展
1.1.3 单片机的分类
1.1.4 单片机的特点
1.1.5 单片机的应用领域
1.2 51系列单片机的基本结构
1.2.1 内部结构的主要组成部分
1.2.2 单片机的引脚功能
1.2.3 控制器、时钟电路和基本时序周期
1.2.4 复位状态及复位电路
1.2.5 省电方式
1.3 AT89系列单片机型号的编码说明及封装形式
习题一
第二章 AT89S52单片机的硬件结构
2.1 AT89S52存储器结构
2.1.1 程序存储器
2.1.2 片内Flash存储器操作
2.1.3 数据存储器
2.1.4 特殊功能寄存器SFR
2.2 并行I/O接口
2.2.1 P0口
2.2.2 P1口
2.2.3 P2口
2.2.4 P3口
2.3 AT89S52的定时/计数器T0、T1和T2
2.3.1 定时/计数器的基本原理
2.3.2 定时/计数器T0/T1的控制与状态寄存器
2.3.3 T0/T1的四种工作模式
2.3.4 定时/计数器T2的控制与状态寄存器
2.3.5 T2的工作模式
2.4 AT89S52的中断系统
2.4.1 中断的基本概念
2.4.2 中断源
2.4.3 AT89S52的中断标志与控制
2.4.4 中断响应的条件、过程与时间
2.5 AT89S52的串行通信
2.5.1 串行通信概述
2.5.2 RS232C标准总线及通信设计
2.5.3 AT89S52串行通信接口
习题二
第三章 AT89S52单片机指令系统
3.1 单片机指令系统概述
3.1.1 指令、指令系统的概念
3.1.2 单片机指令系统及其指令格式
3.2 寻址方式
3.2.1 立即寻址
3.2.2 寄存器寻址
3.2.3 寄存器间接寻址
3.2.4 直接寻址
3.2.5 基址寄存器加变址寄存器间接寻址
3.2.6 相对寻址
3.2.7 位寻址
3.3 数据传送类指令
3.3.1 访问片内数据存储器的一般数据传送指令
3.3.2 片内特殊传送指令
3.3.3 片外数据存储器数据传送指令
3.3.4 访问程序存储器的数据传送指令
3.4 算术运算类指令
3.4.1 加、减法指令
3.4.2 十进制调整指令
3.4.3 乘、除法指令
3.5 逻辑运算及移位指令
3.6 控制转移类指令
3.6.1 无条件转移指令
3.6.2 条件转移指令
3.7 子程序调用和返回指令
3.7.1 子程序调用指令
3.7.2 返回指令
3.7.3 空操作指令
3.8 位操作类指令
3.9 汇编程序格式与伪指令
习题三
第四章 单片机程序设计语言
4.1 汇编语言程序设计
4.1.1 汇编语言程序设计步骤
4.1.2 汇编语言程序结构
4.1.3 汇编语言程序设计方法
4.1.4 汇编语言编程规范
4.2 C51语言程序设计
习题四
第五章 C51程序设计语言
5.1 C51基本语法规则
5.1.1 C51数据类型
5.1.2 常量与变量
5.1.3 运算符与表达式
5.1.4 程序控制语句
5.1.5 函数
5.1.6 指针
5.1.7 构造数据类型
5.1.8 C51位操作及其表达式
5.1.9 自增减运算符、复合运算符及其表达式
5.2 C51程序设计技巧
5.2.1 存取AT89S52单片机特殊功能寄存器
5.2.2 位的控制
5.2.3 中断子程序的设计
5.2.4 内存应对式I/O
5.2.5 C51程序设计举例
5.3 汇编语言与C语言的混合编程
5.3.1 C51和A51接口所涉及的几个主要问题
5.3.2 C51程序中嵌入汇编
5.3.3 C51与汇编函数的相互调用
5.4 C51与汇编语言的对照
5.4.1 实例描述
5.4.2 硬件电路
5.4.3 程序设计
5.4.4 汇编语言编写的代码
5.4.5 C语言编写的代码
5.4.6 实例小结
5.5 C51程序设计小结
习题五
第六章 单片机系统功能的扩展技术
6.1 系统扩展概述
6.2 总线扩展及地址分配
6.2.1 总线扩展
6.2.2 地址分配
6.3 外部存储器及其访问
6.3.1 外部程序存储器及其访问
6.3.2 外部数据存储器及其访问
6.4 外部程序存储器扩展
6.4.1 常用EPROM芯片
6.4.2 典型EPROM扩展电路实现
6.5 外部数据存储器的扩展
6.5.1 RAM(SRAM)的扩展
6.5.2 并行E2PRC)M的扩展
6.6 并行I/O接口的扩展
6.6.1 简单I/O接口的扩展
6.6.2 可编程8155的并行I/O扩展
6.6.3 8255A可编程并行I/O接口扩展
6.7 A/D和D/A转换接口的扩展
6.7.1 8位并行A/D转换器ADC0809的扩展
6.7.2 12位并行A/D转换器AD574的扩展
6.7.3 8位并行D/A转换器DAC0832的扩展
6.8 串行总线扩展技术
6.8.1 SPI和I2C串行总线接口
6.8.2 键盘/显示器串行扩展技术
6.8.3 E2PROM串行扩展技术
6.8.4 D/A和A/D转换器串行扩展技术
6.8.5 串行总线单片机最小系统实验板
习题六
第七章 单片机应用系统开发设计实例
7.1 汇编源程序的建立与编译
7.1.1 Proteus中的源程序设计与编译
7.1.2 KeilμVision中的源程序设计与编译
7.2 Proteus与单片机电路的交互式仿真与调试
7.2.1 加载目标代码
7.2.2 单片机系统的Proteus交互仿真
7.2.3 调试菜单与调试窗口
7.2.4 观察窗口
7.3 I/O口应用
7.3.1 Proteus电路设计
7.3.2 Proteus调试与仿真
7.3.3 总结与提示
7.4 4×4矩阵式键盘识别技术
7.4.1 Proteus电路设计
7.4.2 源程序设计
7.4.3 Proteus调试与仿真
7.4.4 总结与提示
7.5 动态扫描显示
7.5.1 Proteus电路设计
7.5.2 源程序设计
7.5.3 Proteus调试与仿真
7.5.4 总结与提示
7.6 8×8点阵LED显示
7.6.1 Proteus电路设计
7.6.2 Proteus设计与仿真
7.6.3 总结与提示
7.7 I/O口的扩展
7.7.1 Proteus电路设计
7.7.2 源程序设计
7.7.3 Proteus调试与仿真
7.7.4 总结与提示
7.8 定时/计数器实验
7.8.1 Proteus电路设计
7.8.2 Proteus设计与仿真
7.8.3 总结与提示
7.9 外部数据存储器扩展
7.9.1 Proteus电路设计
7.9.2 Proteus调试与仿真
7.9.3 总结与提示
7.10 外部中断实验
7.10.1 Proteus电路设计
7.10.2 Proteus调试与仿真
7.10.3 总结与提示
7.11 单片机与PC机间的串行通信
7.11.1 Proteus电路设计
7.11.2 Proteus调试与仿真
7.11.3 总结与提示
7.12 单片机与步进电机的接口技术
7.12.1 Proteus电路设计
7.12.2 Proteus调试与仿真
7.12.3 总结与提示
7.13 单片机与直流电动机的接口技术
7.13.1 Proteus电路设计
7.13.2 Proteus调试与仿真
7.13.3 总结与提示
7.14 基于DAC0832数/模转换器的数控电源
7.14.1 Proteus电路设计
7.14.2 Proteus调试与仿真
7.14.3 总结与提示
7.15 基于ADC0808模/数转换器的数字电压表
7.15.1 Proteus电路设计
7.15.2 源程序设计
7.15.3 Proteus调试与仿真
7.15.4 总结与提示
第八章 单片机应用实验
实验1 闪烁灯
实验2 模拟开关灯
实验3 多路开关状态指示
实验4 广告灯设计
实验5 广告灯(利用取表方式)
实验6 报警器
实验7 I/O并行口直接驱动LED显示
实验8 按键识别方法之一
实验9 00~99计数器
实验10 动态数码显示技术
附录A 指令系统中常用符号说明
附录B 影响标志位设置的指令
附录C AT89S52指令表
附录D 片内RAM中20H~2FH共128位位地址表
附录E 特殊功能寄存器地址表
附录F Keil C51软件使用
附录G AT89S52单片机下载器软件使用
参考文献
章节摘录
与通用微机相比较,单片机在结果、指令设置上均有其独特之处,其主要特点如下: (1)单片机的ROM和RAM存储器是严格区分的。ROM称为程序储存器,用于存放程序、固定常数及数据表格。RAM则为数据存储器,用于存放用户数据。这样的结构主要是考虑到单片机在控制系统中有较大的程序储存空间,可把开发成功的程序固化在ROM中,而把少量的随机数据存放在RAM中。 (2)采用面向控制的指令系统。为满足控制的需要,单片机有更强的逻辑控制能力及微处理能力。 (3)单片机的I/O引脚通常是多功能的。由于单片机芯片主引脚数目有限,为了解决实际引脚数和需要的信号线的矛盾,采用引脚功能复用的方法。引脚的功能可由指令来设置或由机器状态来区分。 (4)单片机的外部扩展能力强。在内部的各种功能部分不能满足应用需求时,均可进行外部扩展(如扩展ROM、RAM、I/O接口、定时器/计数器、中断系统等),可与许多通用的微机接口芯片兼容,给应用系统设计带来极大的方便和灵活性。
图书封面
评论、评分、阅读与下载