本书以汇编语言和C51编程为主线,系统介绍MCS-51单片机的原理及应用。全书共10章,包括单片机基础知识、MCS-51单片机组成、MCS-51指令系统及汇编语言程序设计、单片机C语言程序设计、中断与定时、MCS-51单片机的串行通信、MCS-51单片机的并行扩展、MCS-51单片机的接口技术、C8051F41x单片机简介、MCS-51单片机应用系统设计与开发。内容深入浅出,理论适度,注重工程应用,选择了难度适中的例子和实用性较强的案例,便于读者学以致用。 本书可作为高等院校电气类、电子信息类、计算机类、机械类等相关专业的教材,也适合从事单片机应用开发的工程技术人员参考。
庄友谊,温州大学电气与电子工程学院副教授,多年来一直从事单片机原理及应用、数字电子技术、模拟电子技术、微机原理及接口技术等课程的教学工作。
第1章 单片机基础知识
1.1 微型计算机简述
1.1.1 微型计算机硬件系统
1.1.2 微型计算机软件系统
1.2 单片机概述
1.2.1 单片机的概念
1.2.2 单片机的发展概况
1.2.3 单片机的特性
1.2.4 单片机的发展趋势
1.2.5 单片机的应用
1.3 MCS-51单片机及其兼容单片机简介
1.3.1 MCS-51单片机
1.3.2 AT89系列单片机
1.3.3 STC系列单片机
1.3.4 C8051F系列单片机
1.4 计算机中的信息表示
1.4.1 机器数与机器数的表示形式
1.4.2 计算机的信息编码
本章小结
思考题与练习题1
第2章 MCS-51单片机组成
2.1 MCS-51单片机的硬件结构
2.1.1 MCS-51单片机的内部结构
2.1.2 MCS-51单片机的引脚功能
2.2 MCS-51单片机的内部存储器
2.2.1 内部数据存储器低128单元
2.2.2 内部数据存储器高128单元
2.2.3 堆栈
2.2.4 内部程序存储器
2.2.5 MCS-51单片机存储器的结构
2.3 MCS-51单片机I/O口电路及功能
2.3.1 P0口
2.3.2 P1口
2.3.3 P2口
2.3.4 P3口
2.3.5 I/O口的读-修改-写操作
2.3.6 I/O口的负载能力及接口要求
2.4 MCS-51单片机的时钟电路与时序
2.4.1 时钟电路
2.4.2 时序定时单位
2.4.3 典型指令时序
2.5 MCS-51单片机的复位方式和复位电路
2.5.1 复位
2.5.2 复位电路
2.6 低功耗操作方式
2.6.1 HMOS工艺单片机的掉电保护方式
2.6.2 CHMOS工艺单片机的低功耗方式
2.7 I/O口应用案例及Proteus仿真
2.7.1 P1口控灯
2.7.2 P1口循环控灯
本章小结
思考题与练习题2
第3章 MCS-51指令系统及汇编语言程序设计
3.1 指令系统概述
3.1.1 指令格式
3.1.2 指令系统的分类
3.1.3 指令描述符号意义的说明
3.2 寻址方式
3.3 MCS-51指令系统
3.3.1 数据传送类指令
3.3.2 算术运算类指令
3.3.3 逻辑运算及移位类指令
3.3.4 控制转移类指令
3.3.5 位操作类指令
3.4 汇编语言概述及伪指令
3.4.1 汇编语言的特点
3.4.2 汇编语言的语句格式
3.4.3 汇编语言的伪指令
3.5 汇编语言程序设计
3.5.1 顺序程序设计
3.5.2 分支程序设计
3.5.3 循环程序设计
3.5.4 子程序设计
3.6 常用程序的设计
3.6.1 数制转换程序
3.6.2 多字节无符号数的加减运算
3.6.3 软件定时程序
3.6.4 查表程序
3.6.5 极值查找程序
3.6.6 数据检索程序
3.6.7 数据排序程序
本章小结
思考题与练习题3
第4章 单片机C语言程序设计
4.1 C51概述
4.2 C51的基本语法
4.2.1 C51的标识符和关键字
4.2.2 C51数据类型
4.2.3 C51数据存储类型和存储模式
4.2.4 常量与变量
4.2.5 C51运算符、表达式及其规则
4.2.6 数组
4.2.7 指针
4.3 C51对绝对地址存储单元的访问
4.4 C51流程控制语句
4.4.1 选择语句
4.4.2 循环语句
4.5 C51函数
4.5.1 函数的定义和分类
4.5.2 函数的调用
4.5.3 C51的库函数
4.6 MCS-51单片机的键盘及LED显示编程案例
本章小结
思考题与练习题4
第5章 中断与定时
5.1 MCS-51单片机的中断系统
5.1.1 概述
5.1.2 MCS-51单片机的中断源
5.1.3 中断控制
5.1.4 中断处理过程
5.1.5 中断请求的撤销
5.1.6 中断编程
5.2 MCS-51单片机的定时器/计数器
5.2.1 定时器/计数器的功能
5.2.2 定时器/计数器的控制寄存器
5.2.3 方式0
5.2.4 方式1
5.2.5 方式2
5.2.6 方式3
5.2.7 用定时器/计数器进行外部中断扩展
5.3 中断与定时器/计数器综合应用举例
5.4 数字频率计设计案例及Proteus仿真
5.4.1 案例教学的目的、要求和教学方法
5.4.2 数字频率计的原理及硬件电路图
5.4.3 数字频率计的软件编程思路
5.4.4 案例思考题
本章小结
思考题与练习题5
第6章 MCS-51单片机的串行通信
6.1 串行通信基本常识
6.1.1 异步串行通信的字符格式
6.1.2 异步串行通信的传输速率
6.1.3 异步串行通信的信号形式
6.1.4 异步串行通信的数据通路方式
6.2 RS-232C接口标准及其接口芯片
6.2.1 RS-232C连接器
6.2.2 RS-232C接口的引脚定义
6.2.3 RS-232C主要引脚说明
6.2.4 电气特性
6.2.5 RS-232C接口的连接方式
6.2.6 串行口电路
6.3 MCS-51单片机的串行口及控制寄存器
6.3.1 MCS-51单片机串行口结构
6.3.2 串行通信控制寄存器
6.4 MCS-51单片机串行通信工作方式
6.4.1 串行工作方式0
6.4.2 串行工作方式1
6.4.3 串行工作方式2
6.4.4 串行工作方式3
6.5 多机通信
6.5.1 多机通信基本原理
6.5.2 多机通信的程序设计
6.5.3 简单应用举例
6.6 SPI总线技术
6.6.1 SPI总线结构
6.6.2 SPI串行扩展应用实例
6.7 I2C总线技术
6.7.1 I2C总线协议
6.7.2 I2C总线应用举例
6.8 PC机与单片机的通信案例
6.8.1 案例教学目的和教学要求
6.8.2 硬件连接电路图
6.8.3 PC机的软件编程思路
6.8.4 单片机的软件编程思路
本章小结
思考题与练习题6
第7章 MCS-51单片机的并行扩展
7.1 系统总线及总线构造
7.1.1 单片机扩展概述
7.1.2 单片机系统总线及其构造
7.2 存储器扩展
7.2.1 程序存储器扩展
7.2.2 数据存储器扩展
7.3 I/O口扩展
7.3.1 简单I/O口扩展
7.3.2 8255A可编程并行I/O口扩展
7.4 模拟霓虹灯设计案例及Proteus仿真
7.4.1 案例教学的目的、要求和教学方法
7.4.2 模拟霓虹灯的硬件电路图
7.4.3 模拟霓虹灯的软件编程思路
7.4.4 案例思考题
本章小结
思考题与练习题7
第8章 MCS-51单片机的接口技术
8.1 键盘接口技术
8.1.1 按键的特性
8.1.2 独立式键盘接口技术
8.1.3 行列式键盘接口技术
8.2 LED显示接口技术
8.2.1 LED显示原理
8.2.2 静态显示技术
8.2.3 动态显示技术
8.3 LCD显示接口技术
8.3.1 LCD1602液晶显示模块简介
8.3.2 LCD1602液晶显示模块存储器
8.3.3 LCD1602液晶显示模块指令
8.3.4 LCD显示器与单片机接口
8.4 单片机与D/A、A/D转换器的接口与应用
8.4.1 典型D/A转换器芯片DAC0832
8.4.2 DAC0832与单片机接口
8.4.3 典型A/D转换器芯片ADC0809
8.4.4 ADC0809与单片机接口
8.5 多通道模拟量数据采集系统设计案例及Proteus仿真
8.5.1 案例教学的目的、要求和教学方法
8.5.2 多通道模拟量数据采集系统功能与硬件电路图
8.5.3 多通道模拟量数据采集系统软件编程思路
8.5.4 案例思考题
本章小结
思考题与练习题8
第9章 C8051F41x单片机简介
9.1 C8051F41x概述
9.1.1 C8051F410系统内部结构
9.1.2 C8051F410系统引脚
9.2 C8051F41x存储器组织
9.2.1 程序存储器
9.2.2 内部数据存储器
9.2.3 片内外部数据存储器
9.3 C8051F41x可编程的I/O口
9.3.1 I/O口输入/输出
9.3.2 优先权交叉开关译码器
9.3.3 I/O口初始化
9.3.4 通用I/O口
9.4 C8051F41x中断系统
9.4.1 C8051F41x中断系统概述
9.4.2 中断寄存器说明
9.4.3 外部中断
9.5 C8051F41x内部定时器/计数器
9.5.1 概述
9.5.2 定时器/计数器T0、T1
9.5.3 定时器/计数器T2、T3
9.6 可编程定时器/计数器阵列(PCA)
9.6.1 PCA定时器/计数器
9.6.2 捕捉/比较模块
9.6.3 看门狗定时器方式
9.7 C8051F41x的串行口
9.7.1 通用串行口UART0
9.7.2 增强型串行口(SPI0)
9.7.3 SMBus接口
9.8 模数转换器ADC
9.8.1 12位ADC结构
9.8.2 ADC工作方式
9.8.3 可编程窗口检测器
9.9 数模转换器DAC
9.9.1 12位IDAC结构
9.9.2 IDA0输出更新
9.9.3 IDAC输出字格式
9.10 复位
9.11 电源管理方式
本章小结
思考题与练习题9
第10章 MCS-51单片机应用系统 设计与开发
10.1 单片机应用系统设计的一般步骤和方法
10.1.1 单片机应用系统的性能要求
10.1.2 设计步骤
10.1.3 硬件设计
10.1.4 软件设计
10.1.5 系统调试
10.2 单片机应用系统的抗干扰技术
10.2.1 硬件抗干扰技术
10.2.2 软件抗干扰技术
10.3 综合系统案例及Proteus仿真
10.3.1 交通信号灯的设计与实现
10.3.2 电子密码锁的设计与实现
10.3.3 案例思考题
本章小结
思考题与练习题10
附录A MCS-51指令一览表
附录B Keil C51软件的使用
附录C 基于Proteus的单片机系统仿真
参考文献