温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
单片
微机
原理
接口
技术
电子信息科学与工程类专业规划教材广东省高等学校本科精品课程广东省精品开放资源共享课程单片微机原理与接口技术(第 版)主编宋跃副主编石伟黄辉蒋业文参编任斌雷瑞庭摇王照平 北京 内 容 简 介 本书以 80C51 系列单片机为典型机介绍微机基本理论与原理,实现将微机原理的学习和具体的单片机应用实践密切结合。本书从计算机基础知识入手,全面介绍微机的基本组成和原理,重点讲述 80C51 系列单片机的结构、指令系统、程序设计以及常用的接口技术,对 8086 系统和 C51 语言分设两章介绍,一些最新实用的接口技术和接口芯片的使用穿插在相关的章节中介绍。本书(含习题)以汇编语言为主、C51 为辅来讲述程序的设计方法与技巧,对 Proteus8、Vision4 软件、C51 语言作基本介绍,其应用与汇编有机穿插在各章教学案例及习题中,C51 与汇编编程在教学案例中交叉出现,对典型或重要知识点案例通常给出汇编语言与 C51 对应的源程序及软件仿真过程。本书选材规范,通俗易懂,每章都配有小结、思考题及习题。本书可作为高等院校电气与电子信息类专业“微机原理”与“单片机技术”的教材,也可作为高职高专相关专业的教材,同时可作为学习单片机应用基础的培训教材和自学参考书。未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目(CIP)数据 单片微机原理与接口技术/宋跃主编.2 版.北京:电子工业出版社,2015.8 电子信息科学与工程类专业规划教材 ISBN 978-7-121-26617-1.单.宋.单片微型计算机基础理论高等学校教材单片微型计算机接口技术高等学校教材 .TP368.1 中国版本图书馆 CIP 数据核字(2015)第 159857 号 责任编辑:凌 毅 印 刷:装 订:出版发行:电子工业出版社 北京市海淀区万寿路 173 信箱 邮编 100036 开 本:7871 092 1/16 印张:20 字数:538 千字 版 次:2011 年 7 月第 1 版 2015 年 8 月第 2 版 印 次:2015 年 8 月第 1 次印刷 印 数:3 000 册 定价:39.80 元 凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(010)88254888。质量投诉请发邮件至 ,盗版侵权举报请发邮件至 。服务热线:(010)88258888。III 再 版 前 言“微机原理及应用”是高等学校电气与电子信息类各专业的计算机硬件基础课程,“单片机与接口技术”是上述各专业的应用技术课程,目前地方院校电子、通信、控制、电气、自动化等专业学生在就业见习时,单片机的设计开发已被企业视为毕业生必备的基本能力。在目前教学时大量压缩的情况下,“微机原理及应用”作为学科基础课程和“单片机与接口技术”作为实践动手要求很高的专业课程,同时分学期前后开设,在学时安排上势必存在一定的困难,由于两门课程存在衔接关系,所以很难保证不在教学内容上出现重复和遗漏。如何既要让学生学习掌握微机的基本理论和原理,为后续课程(EDA设计、ARM、嵌入式系统、DSP 等课程以及自主性学习与研究)打下较扎实的理论基础,又要让学生真正掌握单片机的应用技术(包括原理、接口技术、最新设计技术等),以提高学生的实验实践能力、创新创业(就业)能力,这对以培养应用型人才为主的一般院校的本科教学来说极为重要,为此我们试探着编写满足这种要求的教材。本教材第1 版经过4 年多的教学实践,为更好实现以上目标和服务于应用型大学教学,在听取专家和用户使用意见后,历时一年多修订出版第2 版。本书主要面向教学型、教学研究型的大学教学,旨在将“微机原理及应用”和“单片机与接口技术”两门课程合二为一,在较系统讲述微机基本理论和原理的同时,突出单片机(以 80C51为典型机)应用的技术性、实用性、前沿性,以满足本科教学“质量工程”的需要。本书由东莞理工学院宋跃教授担任主编,湖南工业大学石伟副教授、五邑大学黄辉副教授、佛山科技学院蒋业文副教授任副主编。编写分工如下:宋跃编写第2 章、第4 章、第7 章、8.4.1 节,石伟编写第 1 章、第 6 章,黄辉编写第 9 章、第 10 章,蒋业文编写第 8 章,东莞理工学院任斌教授编写第3 章、第5 章,东莞理工学院雷瑞庭老师编写第11 章、1.5 节、12.4 节,黄河科技学院王照平副教授编写第12 章,东莞理工学院彭超博士、余炽业高级实验师提供协助。本书是广东省高等学校本科精品课程和广东省精品开放资源共享课程配套教材,精品课程网址:http:/ 设计制作以及程序的仿真与实验等工作,在此向以上各位表示感谢。本书按照 80 学时组织编写,具体教学内容可根据实际情况取舍。本书配有电子课件、程序源代码、思考题及习题参考解答、STC 单片机参考资料等,读者可登录华信教育资源网 下载。由于作者水平有限,书中肯定存在错误和不足之处,敬请各位同仁不吝批评指正,不胜感谢。作 者 2015 年 7 月 V目 录 第 1 章 微机基础知识 1 1.1 计算机中负数的表示和运算 1 1.1.1 机器数 1 1.1.2 机器数的原码、反码和补码 1 1.1.3 补码加减运算 2 1.1.4 原码乘除运算 3 1.2 微机中的常用编码 3 1.2.1 ASCII 码 3 1.2.2 非 ASCII 编码 4 1.2.3 BCD 码 4 1.3 微机概述 5 1.3.1 微型计算机的发展 5 1.3.2 微型计算机的基本组成 5 1.3.3 微处理器的基本组成 6 1.3.4 微机系统的程序存储与控制 6 1.4 单片微型计算机概述 6 1.4.1 单片机的发展过程及产品 近况 7 1.4.2 单片机的特点及应用领域 7 1.4.3 单片机的供应状态 8 1.5 单片机应用的开发仿真工具 9 1.5.1 Keil C51 Vision 集成开发 环境简介 9 1.5.2 Proteus Design Suite 软件介绍 15 本章小结 23 思考题及习题 23 第 2 章 微型计算机的存储器 24 2.1 微型计算机存储器概述 24 2.2 只读存储器 26 2.2.1 只读存储器的结构及分类 26 2.2.2 只读存储器典型产品举例 29 2.3 随机存储器 30 2.3.1 静态基本存储电路 32 2.3.2 动态基本存储电路 33 2.3.3 RAM 芯片介绍 33 2.4 Flash 存储器 34 2.4.1 Flash 类型及应用 34 2.4.2 NOR 和 NAND Flash 存储器的 使用区别 35 2.4.3 闪存 AT29LV040A 芯片介绍 36 2.5 存储器的组成与扩展 37 2.5.1 存储器芯片的选择 37 2.5.2 存储器的扩展 38 本章小结 41 思考题及习题 42 第 3 章 80C51 的结构和原理 43 3.1 80C51 系列概述 43 3.1.1 MCS-51 系列 43 3.1.2 80C51 系列 43 3.1.3 80C51 的应用模式 43 3.2 80C51 典型产品资源配置与引脚 44 3.2.1 80C51 典型产品资源配置 44 3.2.2 引脚信号 45 3.3 80C51 系列单片机的结构 46 3.3.1 80C51 单片机逻辑结构 46 3.3.2 80C51 单片机内部结构 46 3.4 80C51 内部数据存储器(内部 RAM)48 3.4.1 80C51 的内部数据存储器 48 3.4.2 专用寄存器的位寻址 53 3.5 80C51 内部程序存储器(内部 ROM)53 3.5.1 片内与片外程序存储器的 选择 54 3.5.2 程序存储器的几个特殊单元 55 3.6 80C51 单片机输入/输出(I/O)口 55 3.6.1 P0 口 55 3.6.2 P1 口 56 3.6.3 P2 口 56 3.6.4 P3 口 57 3.7 单片机的工作方式 58 3.7.1 复位及复位电路 58 3.7.2 时钟电路和时序 58 3.7.3 单片机的低功耗方式 60 VI3.8 单片机执行指令的过程 61 本章小结 62 思考题及习题 62 第 4 章 80C51 的指令系统 64 4.1 指令的基本格式及常用符号 64 4.1.1 指令的字节数 65 4.1.2 指令的执行时间 65 4.1.3 汇编语言的语句结构 65 4.2 80C51 的寻址方式 66 4.2.1 立即寻址 66 4.2.2 直接寻址 66 4.2.3 寄存器寻址 67 4.2.4 寄存器间接寻址 67 4.2.5 变址寻址 68 4.2.6 相对寻址 68 4.2.7 位寻址 69 4.3 数据传送类指令 70 4.3.1 一般传送指令 70 4.3.2 特殊传送指令 72 4.4 算术运算类指令 74 4.4.1 不带进位加法指令及 BCD 码 加法调整指令 75 4.4.2 带进位加法指令 77 4.4.3 加 1 指令 77 4.4.4 带借位减法指令 77 4.4.5 减 1 指令 78 4.4.6 乘、除法指令 78 4.5 逻辑运算类指令 78 4.5.1 逻辑与指令 79 4.5.2 逻辑或指令 79 4.5.3 逻辑异或指令 80 4.5.4 累加器清零及取反指令 80 4.5.5 移位指令 80 4.6 控制转移类指令 81 4.6.1 无条件转移指令 82 4.6.2 条件转移指令 83 4.6.3 调用及返回指令 84 4.7 布尔变量操作指令 85 4.7.1 位传送指令 86 4.7.2 位置位指令 86 4.7.3 位运算指令 87 4.7.4 位控制转移指令 87 本章小结 88 思考题及习题 88 第 5 章 80C51 的汇编语言程序设计 91 5.1 程序编制的方法和技巧 91 5.1.1 程序编制的步骤 91 5.1.2 程序编制的方法和技巧 92 5.1.3 汇编语言的语句种类及 指令格式 92 5.2 源程序的编辑和汇编 94 5.3 汇编语言程序设计和基本程序结构 95 5.3.1 顺序程序设计 95 5.3.2 分支程序 95 5.3.3 循环程序 99 5.3.4 子程序及其调用 100 5.4 常用程序举例 105 5.4.1 算术运算程序 105 5.4.2 代码转换 106 5.4.3 I/O 操作 108 5.5 简单 I/O 设备的并口直接驱动示例 109 本章小结 111 思考题及习题 112 第 6 章 51 单片机的 C 语言程序设计 113 6.1 单片机 C 语言概述 113 6.1.1 C51 的程序结构 113 6.1.2 C51 编译器介绍 113 6.1.3 C51 语言和汇编语言的关系 113 6.2 C51 的数据类型 114 6.2.1 C51 的数据类型 114 6.2.2 C51 数据的存储类型 115 6.2.3 8051 单片机特殊功能寄存 器的 C51 定义 116 6.3 C51 的运算符和表达式 116 6.3.1 赋值运算符 116 6.3.2 算术运算符 117 6.3.3 关系运算符 117 6.3.4 逻辑运算符 118 6.3.5 位运算符 118 6.3.6 其他运算符 118 6.4 C51 流程控制语句 121 6.4.1 条件语句 121 VII6.4.2 循环语句 122 6.4.3 开关语句 123 6.4.4 break、continue 和 goto 语句 123 6.5 C51 的构造数据类型 124 6.5.1 数组 124 6.5.2 指针 125 6.5.3 结构 127 6.5.4 枚举 128 6.6 C51 的函数 128 6.6.1 C51 函数定义 129 6.6.2 C51 函数调用 130 6.6.3 混合编程简介 130 6.6.4 混合编程形式 132 6.6.5 C51 库函数 133 6.7 C51 中