单片机原理及接口技术 第2版
作者:张毅刚,王少军,付宁编著
出版时间:2015年版
内容简介
本书详细介绍了美国ATMEL公司的AT89S51单片机的硬件结构与工作原理,8051汇编语言指令系统,并从应用设计的角度介绍AT89S51单片机的各种硬件扩展接口设计、接口驱动程序设计以及AT89S51单片机应用系统设计,同时给出了较多的典型设计案例。本书还对AT89S51单片机应用系统设计中的各种流行器件也作以介绍。
目录
目 录第1章 单片机概述 11.1 单片机简介 11.2 单片机的发展历史 21.3 单片机的特点 21.4 单片机的应用 31.5 单片机的发展趋势 51.6 MCS-51系列与AT89S5x系列单片机 61.6.1 MCS-51系列单片机 61.6.2 AT89S5x系列单片机简介 71.7 各种衍生品种的8051单片机 101.7.1 STC系列单片机 101.7.2 C8051F×××单片机 111.7.3 ADμC812单片机 121.7.4 华邦W77系列、W78系列单片机 121.8 PIC系列单片机与AVR系列单片机 121.8.1 PIC系列单片机 131.8.2 AVR系列单片机 141.9 其他的嵌入式处理器简介 151.9.1 嵌入式DSP处理器 151.9.2 嵌入式微处理器 16思考题及习题1 16第2章 AT89S51单片机的片内硬件结构 182.1 AT89S51单片机的硬件组成 182.2 AT89S51的引脚功能 202.2.1 电源及时钟引脚 202.2.2 控制引脚 212.2.3 并行I/O口引脚 222.3 AT89S51的CPU 232.3.1 运算器 232.3.2 控制器 252.4 AT89S51单片机存储器的结构 252.4.1 程序存储器空间 262.4.2 数据存储器空间 272.4.3 特殊功能寄存器 282.4.4 位地址空间 312.5 AT89S51单片机的并行I/O端口 332.5.1 P0口 332.5.2 P1口 352.5.3 P2口 352.5.4 P3口 362.6 时钟电路与时序 382.6.1 时钟电路设计 382.6.2 时钟周期、机器周期、指令周期与指令时序 392.7 复位操作和复位电路 402.7.1 复位操作 402.7.2 复位电路设计 412.8 AT89S51单片机的最小应用系统 422.9 看门狗定时器(WDT)的使用 422.10 低功耗节电模式 432.10.1空闲模式 442.10.2 掉电运行模式 44思考题及习题2 45第3章 8051指令系统与编程基础 473.1 指令系统概述 473.2 指令格式 473.3 指令系统的寻址方式 483.4 8051指令系统分类介绍 513.4.1 数据传送类指令 523.4.2 算术运算类指令 563.4.3 逻辑操作类指令 613.4.4 控制转移类指令 643.4.5 位操作类指令 673.5 8051指令汇总 693.6 某些指令的说明 733.7 8051汇编语言程序设计基础 753.7.1 编程语言概述 753.7.2 汇编语言语句和格式 763.7.3 伪指令 783.7.4 汇编语言源程序的汇编 803.8 8051汇编语言程序设计举例 813.8.1 子程序的设计 813.8.2 查表程序设计 823.8.3 分支转移程序设计 853.8.4 循环程序设计 88思考题及习题3 91第4章 AT89S51单片机的中断系统 934.1 AT89S51中断技术概述 934.2 AT89S51中断系统结构 934.2..1 中断请求源 944.2.2 中断请求标志寄存器 944.3 中断允许与中断优先级的控制 964.3.1 中断允许寄存器IE 964.3.2 中断优先级寄存器IP 974.4 响应中断请求的条件 1004.5 外部中断的响应时间 1014.6 外部中断的触发方式选择 1014.6.1 电平触发方式 1014.6.2 跳沿触发方式 1024.7 中断请求的撤销 1024.8 中断服务子程序的设计 1034.9 多外部中断源系统设计 1064.9.1 中断和查询结合的方法 1074.9.2 用优先权编码器扩展外部中断源 108思考题及习题4 110第5章 I/O口应用-显示与开关/键盘输入 1135.1 单片机控制发光二极管的显示 1135.1.1 单片机与发光二极管的连接 1135.1.2 单片机I/O端口控制发光二极管的编程 1145.2 开关状态检测 1155.3 单片机控制LED数码管的显示 1165.3.1 LED数码管显示原理 1165.3.2 LED数码管的显示方式 1185.3.3 LED数码管静态显示设计 1205.3.4 LED数码管动态显示设计 1215.4 单片机控制LED点阵显示器显示 1235.4.1 LED点阵显示器结构与显示原理 1235.4.2 控制16×16 LED点阵显示屏的设计 1255.5 单片机控制LCD 1602液晶显示器的显示 1285.5.1 LCD 1602液晶显示模块简介 1295.5.2 单片机控制字符型LCD 1602的显示案例 1345.6 键盘接口设计 1375.6.1 键盘接口设计应解决的问题 1375.6.2 独立式键盘的设计 1385.6.3 矩阵式键盘的设计 1415.6.4 单片机与专用键盘/显示器芯片HD7279的接口设计 1465.7 AT89S51单片机与BCD码拨盘的接口设计 156思考题及习题5 157第6章 AT89S51单片机的定时器/计数器 1596.1 定时器/计数器的结构 1596.1.1 工作方式控制寄存器TMOD 1606.1.2 定时器/计数器控制寄存器TCON 1606.2 定时器/计数器的4种工作方式 1616.2.1 方式0 1616.2.2 方式1 1626.2.3 方式2 1626.2.4 方式3 1636.3 对外部输入的计数信号的要求 1656.4 定时器/计数器的编程和应用 1656.4.1 方式1的应用 1666.4.2 方式2的应用 1686.4.3 方式3的应用 1726.4.4 门控制位GATEx的应用—测量脉冲宽度 1736.4.5 实时时钟的设计 174思考题及习题6 176第7章 AT89S51单片机的串行口 1787.1 串行口的结构 1787.1.1 串行口控制寄存器SCON 1787.1.2 特殊功能寄存器PCON 1807.2 串行口的4种工作方式 1807.2.1 方式0 1807.2.2 方式1 1837.2.3 方式2 1857.2.4 方式3 1877.3 多机通信 1877.4 波特率的制定方法 1897.4.1 波特率的定义 1897.4.2 定时器T1产生波特率的计算 1897.5 串行口的应用 1917.5.1 串行通信接口标准 1917.5.2 串行通信设计需要考虑的问题 1947.5.3 双机串行通信软件编程 1957.5.4 PC机与单片机的点对点串行通信接口设计 2017.5.5 PC机与单片机与多个单片机的串行通信接口设计 202思考题及习题7 203第8章 AT89S51单片机外部存储器的并行扩展 2058.1 系统并行扩展结构 2058.2 地址空间分配和外部地址锁存器 2068.2.1 存储器地址空间分配 2078.2.2 外部地址锁存器 2108.3 静态数据存储器RAM的并行扩展 2128.3.1 常用的静态RAM(SRAM)芯片 2128.3.2 外扩数据存储器的读写操作时序 2138.3.3 AT89S51单片机与RAM的接口设计与软件编程 2148.4 片内Flash存储器的编程 2188.4.1 使用通用编程器的程序写入 2198.4.2 使用下载线的ISP编程 2198.5 E2PROM的并行扩展 2208.5.1 并行E2PROM芯片简介 2218.5.2 E2PROM的工作方式 2228.5.3 AT89S51单片机扩展E2PROM AT2864的设计 223思考题及习题8 224第9章 AT89S51单片机的I/O扩展 2269.1 I/O接口扩展概述 2269.1.1 扩展的I/O接口功能 2269.1.2 I/O端口的编址 2279.1.3 I/O数据的传送方式 2279.1.4 I/O接口电路 2289.2 AT89S51扩展I/O接口芯片82C55的设计 2289.2.1 82C55芯片简介 2289.2.2 工作方式选择控制字及端口PC置位/复位控制字 2309.2.3 82C55的3种工作方式 2329.2.4 AT89S51单片机与82C55的接口设计 2369.3 利用74LS