关于我们
书单推荐
新书推荐
|
单片机原理及接口技术(第5版) 本书以89C51/S51为典型机,深入浅出地讲述单片机原理、接口及应用技术。主要内容包括: 微机基础知识、89C51/S51单片机硬件结构、指令系统、汇编语言程序设计知识、中断系统、定时器及应用、89C51/S51串行口通信及串行通信技术、89C51/S51单片机小系统及片外扩展、应用系统配置及接口技术、系统应用程序实例和C51 程序设计,以及无线单片机及其点到多点无线通信、RFID 技术与物联网的应用以及C51程序设计等。 本书内容新颖、实用,可用作大中专院校微机原理、单片机及接口技术的教材,也可供从 事单片机产品开发的工程技术人员参考。第5版前言 2016是我国单片机发展的三十周年。1986年10月底,我参加了在复旦大学举 行的第一次全国单片机学术交流会,这标 志 了 中 国 单 片 机 事 业 的 开 始。2016 年 11 月19日在北京航空航天大学召开了纪念三十周年的全国性会议,我作为历史的见证 者,参加了这次会议。会议回顾了历史,展望未来发展是一个非常好的机遇。 虽然 ARM 发展很快,但会议上很多代表仍然认为8位机,特别是51系列仍有 广阔的前景。本书2006年被教育部评为普通高等教育十 一 五国 家 级 规 划 教 材, 2008又被教育部评为教育部 2008 年度普通高等教育精品教材。从 1999 第 1 版 至今,已出4版,印刷44次。现对本教材再次修订出第5版。 本书以89C51/S51为典型机,片内具有硬件看门狗,抗干 扰 功 能 更 强。本 书 删 去 EPROM 扩展口及片外 RAM 芯片扩展的内容,用户可根据需要选择89系列不同 容量 FlashROM 的产品。为了节省 89C51/S51 的I/O 口线,选择了一些串口(SPI 或I2C)A/D、D/A、E2PROM、看门狗、键盘和显示器的实例。这样,89C51/S51在不 扩展片外I/O 口芯片的情况下,即可构成完整的测控系统。本书还增加了无线单片 机及其点到多点无线通信、RFID 技术与物联网的应用以及 C51程序设计的内容。 各章习题解答及考题库可在北京航空航天大学出版社出版的《单片机学习指导》 (与本书配套)一书中找到,敬请关注。 参加本教程编写的还有 刘 艳 玲、刘 晓 培、娄 文 涛、李 克 骄、沈 怡 琳、张 秋 燕、曹 文 嫣、李运等。 由于作者水平有限,难免出现错误和不妥之处,敬请同行及读者提出宝贵意见。 李朝青 天津理工大学电气电子工程学院 2017年3月8日 本教材还配有教学课件,需要用于教学的教师,请与北京航空航天大学出版社联系。 北京航空航天大学出版社联系方式如下: 电 话:010-82317035 传 真:010-82328026 E-mail:emsbook@buaacm.com.cn 第1章 微机基础知识………………………………………………………………… 1 1.1 微处理器、微机和单片机的概念……………………………………………… 1 1.1.1 微处理器(机)的组成…………………………………………………… 1 1.1.2 存储器和输入/输出接口………………………………………………… 5 1.2 微机的工作过程……………………………………………………………… 5 1.2.1 执行一条指令的顺序…………………………………………………… 6 1.2.2 执行一条指令的过程…………………………………………………… 7 1.2.3 执行一个程序的过程…………………………………………………… 8 1.3 常用数制和编码……………………………………………………………… 11 1.3.1 数制及数制间转换……………………………………………………… 12 1.3.2 计算机中常用编码……………………………………………………… 18 1.4 数据在计算机中的表示……………………………………………………… 19 1.4.1 有符号数………………………………………………………………… 19 1.4.2 无符号数………………………………………………………………… 20 1.5 89C51/S51单片机…………………………………………………………… 21 1.5.1 AT89C51/S51系列单片机…………………………………………… 22 1.5.2 STC89系列单片机…………………………………………………… 23 1.5.3 SST89系列单片机…………………………………………………… 23 1.6 思考题与习题………………………………………………………………… 24 第2章 89C51/S51单片机的硬件结构和原理…………………………………… 25 2.1 89C51/S51单片机的内部结构及特点……………………………………… 25 2.1.1 89C51/S51单片机的基本组成………………………………………… 25 2.1.2 89C51/S51单片机芯片内部结构……………………………………… 26 2.2 89C51/S51单片机的引脚及其功能………………………………………… 29 2.3 89C51/S51单片机的存储器配置…………………………………………… 34 2.3.1 程序存储器地址空间…………………………………………………… 35 2.3.2 数据存储器地址空间…………………………………………………… 37 2.4 89C51/S51CPU时序……………………………………………………… 44 2.5 复位操作……………………………………………………………………… 46 2.5.1 复位操作的主要功能…………………………………………………… 46 2.5.2 复位电路………………………………………………………………… 48 2.6 思考题与习题………………………………………………………………… 49 第3章 指令系统…………………………………………………………………… 50 3.1 汇编语言……………………………………………………………………… 50 3.1.1 指令和程序设计语言…………………………………………………… 50 3.1.2 指令格式………………………………………………………………… 51 3.2 寻址方式……………………………………………………………………… 52 3.2.1 7种寻址方式…………………………………………………………… 53 3.2.2 寻址空间及符号注释…………………………………………………… 57 3.3 89C51/S51单片机的指令系统……………………………………………… 58 3.3.1 数据传送指令…………………………………………………………… 59 3.3.2 算术运算指令…………………………………………………………… 63 3.3.3 逻辑操作指令…………………………………………………………… 67 3.3.4 控制程序转移类指令…………………………………………………… 69 3.3.5 位操作(布尔处理)类指令……………………………………………… 77 3.4 思考题与习题………………………………………………………………… 80 第4章 汇编语言程序设计知识…………………………………………………… 85 4.1 编程的步骤、方法和技巧…………………………………………………… 85 4.1.1 编程步骤………………………………………………………………… 85 4.1.2 编程的方法和技巧……………………………………………………… 87 4.1.3 汇编语言程序的基本结构……………………………………………… 88 4.2 伪指令………………………………………………………………………… 96 4.3 思考题与习题………………………………………………………………… 99 第5章 中断系统…………………………………………………………………… 100 5.1 微机的输入/输出方式……………………………………………………… 100 5.1.1 无条件传送方式……………………………………………………… 100 5.1.2 查询传送方式………………………………………………………… 100 5.1.3 直接存储器存取(DMA)方式………………………………………… 101 5.2 中断的概念………………………………………………………………… 101 5.3 89C51/S51中断系统结构及中断控制…………………………………… 103 5.3.1 89C51/S51中断源…………………………………………………… 104 5.3.2 中断控制……………………………………………………………… 104 5.4 中断响应及中断处理过程………………………………………………… 109 5.4.1 中断响应……………………………………………………………… 109 5.4.2 中断处理……………………………………………………………… 111 5.4.3 中断返回……………………………………………………………… 112 5.4.4 关于具体的中断服务程序…………………………………………… 112 5.5 中断程序举例……………………………………………………………… 113 5.5.1 主程序………………………………………………………………… 113 5.5.2 中断服务程序………………………………………………………… 114 5.6 思考题与习题……………………………………………………………… 117 第6章 定时器及应用……………………………………………………………… 119 6.1 定时器概述………………………………………………………………… 119 6.1.1 什么是计数和定时…………………………………………………… 119 6.1.2 定时器/计数器的组成………………………………………………… 120 6.2 定时器的控制……………………………………………………………… 121 6.2.1 工作模式寄存器TMOD …………………………………………… 121 6.2.2 控制寄存器TCON …………………………………………………… 122 6.3 定时器的4种模式及应用………………………………………………… 123 6.3.1 模式1及应用………………………………………………………… 124 6.3.2 模式2及应用………………………………………………………… 125 6.3.3 模式3及应用………………………………………………………… 128 6.3.4 综合应用举例………………………………………………………… 129 6.4 思考题与习题……………………………………………………………… 136 第7章 89C51/S51串行口及串行通信技术……………………………………… 138 7.1 串行通信基本知识………………………………………………………… 138 7.1.1 数据通信……………………………………………………………… 138 7.1.2 串行通信的传输方式………………………………………………… 139 7.1.3 异步通信和同步通信………………………………………………… 140 7.1.4 串行通信的过程及通信协议………………………………………… 142 7.2 串行口及应用……………………………………………………………… 144 7.2.1 89C51/S51串行口…………………………………………………… 144 7.2.2 89C51/S51串行口的应用…………………………………………… 156 7.3 89C51/S51与89C51/S51点对点异步通信……………………………… 161 7.3.1 通信协议……………………………………………………………… 161 7.3.2 波特率设置…………………………………………………………… 161 7.3.3 通信程序举例………………………………………………………… 163 7.4 89C51/S51与PC机间通信……………………………………………… 167 7.4.1 单片机与PC机通信的接口电路…………………………………… 167 7.4.2 PC机通信软件……………………………………………………… 168 7.4.3 89C51通信软件设计………………………………………………… 173 7.5 无线单片机及其点到多点无线通信……………………………………… 177 7.5.1 无线单片机…………………………………………………………… 177 7.5.2 无线单片机实现点到多点的无线通信……………………………… 178 7.5.3 多点无线测温系统…………………………………………………… 179 7.6 RFID技术与物联网的应用……………………………………………… 181 7.6.1 物联网定义…………………………………………………………… 181 7.6.2 RFID技术…………………………………………………………… 181 7.7 思考题与习题……………………………………………………………… 184 第8章 单片机小系统及片外扩展………………………………………………… 185 8.1 串行扩展总线接口技术…………………………………………………… 185 8.1.1 SPI串行外设接口总线……………………………………………… 185 8.1.2 I2C总线……………………………………………………………… 191 8.1.3 单总线………………………………………………………………… 191 8.2 并行扩展三总线的产生…………………………………………………… 197 8.2.1 片外三总线结构……………………………………………………… 197 8.2.2 系统扩展的实现……………………………………………………… 198 8.3 扩展数据存储器…………………………………………………………… 199 8.4 简单并行I/O口的扩展…………………………………………………… 199 8.4.1 I/O口的直接输入/输出……………………………………………… 199 8.4.2 简单I/O接口的扩展方法…………………………………………… 200 8.5 思考题与习题……………………………………………………………… 202 第9章 应用系统配置及接口技术………………………………………………… 204 9.1 人机通道配置与接口技术………………………………………………… 204 9.1.1 键盘接口及处理程序………………………………………………… 204 9.1.2 LED显示器接口及显示程序………………………………………… 212 9.1.3 串行口控制的键盘/LED显示器接口电路………………………… 216 9.2 系统前向通道中的A/D转换器及接口技术…………………………… 220 9.2.1 8位串行A/D芯片TLC0831与单片机接口及编程……………… 220 9.2.2 8位2通道串行A/D芯片ADC0832与单片机接口及编程…………… 222 9.2.3 10位单通道串行输出A/D芯片TLC1549接口及编程…………… 224 9.2.4 12位串行A/D芯片AD7893与单片机接口及编程……………… 227 9.2.5 16位低速串行A/D芯片AD7705与单片机接口及编程…………… 230 9.2.6 16位高速串行A/D芯片AD7683与单片机接口及编程…………… 235 9.2.7 8位并行输出A/D芯片ADC0809与单片机接口及编程…………… 239 9.3 系统后向通道配置及接口技术…………………………………………… 242 9.3.1 后向通道中的功率开关器件及接口………………………………… 243 9.3.2 双向晶闸管(可控硅)温度控制系统………………………………… 246 9.3.3 串行输入D/A芯片TLC5615接口技术…………………………… 246 9.3.4 并行输入D/A芯片及接口技术……………………………………… 251 9.4 思考题与习题……………………………………………………………… 255 第10章 系统实用程序…………………………………………………………… 257 10.1 主程序和子程序的概念…………………………………………………… 257 10.1.1 主程序………………………………………………………………… 257 10.1.2 子程序及参数传递…………………………………………………… 257 10.1.3 中断服务子程序……………………………………………………… 259 10.2 数据采集及简单控制程序………………………………………………… 260 10.2.1 数据采集程序………………………………………………………… 260 10.2.2 航标灯控制程序……………………………………………………… 260 10.2.3 水位控制程序………………………………………………………… 262 10.2.4 蜂鸣音报警子程序…………………………………………………… 265 10.3 数据处理程序……………………………………………………………… 265 10.3.1 排序程序……………………………………………………………… 266 10.3.2 数字滤波程序………………………………………………………… 266 10.3.3 标度变换(工程量变换)……………………………………………… 267 10.4 代码转换程序……………………………………………………………… 270 10.5 抗干扰技术………………………………………………………………… 272 10.5.1 软件陷阱技术………………………………………………………… 272 10.5.2 软件看门狗…………………………………………………………… 275 10.5.3 单片机片内硬件看门狗……………………………………………… 277 10.6 最短程序…………………………………………………………………… 279 第11章 C51程序设计…………………………………………………………… 280 11.1 C51程序设计基础………………………………………………………… 280 11.1.1 C51的标识符和关键字……………………………………………… 280 11.1.2 C51的数据类型……………………………………………………… 282 11.1.3 C51变量的存储方式………………………………………………… 283 11.1.4 C51运算符、表达式及规则………………………………………… 287 11.2 C51语句…………………………………………………………………… 289 11.2.1 说明语句……………………………………………………………… 289 11.2.2 表达式语句…………………………………………………………… 289 11.2.3 复合语句……………………………………………………………… 290 11.2.4 条件语句……………………………………………………………… 290 11.2.5 开关与跳转语句……………………………………………………… 291 11.2.6 循环语句……………………………………………………………… 293 11.2.7 函数调用语句………………………………………………………… 294 11.2.8 返回语句……………………………………………………………… 294 11.2.9 空语句………………………………………………………………… 295 11.3 C51的流程控制结构…………………………………………………… 295 11.4 C51函数………………………………………………………………… 295 11.4.1 函数的定义…………………………………………………………… 296 11.4.2 函数的调用…………………………………………………………… 296 11.5 数组和指针……………………………………………………………… 300 11.5.1 数组的定义和引用…………………………………………………… 300 11.5.2 字符数组……………………………………………………………… 301 11.5.3 数组元素赋初值……………………………………………………… 302 11.5.4 数组作为函数的参数………………………………………………… 302 11.5.5 指针的概念…………………………………………………………… 303 11.5.6 数组的指针…………………………………………………………… 306 11.5.7 指针的地址计算……………………………………………………… 307 11.5.8 指针数组与指针型指针……………………………………………… 308 11.6 思考题与习题……………………………………………………………… 309 附录A 80C51指令表……………………………………………………………… 311 附录B 89C51指令矩阵(汇编/反汇编表) ……………………………………… 316 附录C 8255A可编程外围并行接口芯片及接口………………………………… 317 参考文献……………………………………………………………………………… 325
你还可能感兴趣
我要评论
|