单片机控制技术与应用(刘靖)(第二版)
¥29.80定价
作者: 刘靖
出版时间:2017年7月
出版社:化学工业出版社
- 化学工业出版社
- 9787122265043
- 140297
- 2017年7月
- 高职自动化与电气
- 未分类
- 高职自动化与电气
- 高职
内容简介
本书从单片机51系列入手,系统介绍了单片机的知识,包括单片机的内部结构、指令系统、中断系统、定时器/计数器、模拟量输入与实时控制输出等,进而介绍了单片机控制技术。本书遵循以工作任务(项目)为导向的教学方法,每个学习情境中都设有若干个具体工作任务,通过这些任务的完成,使学生对单片机知识有一个总体的了解。
本书可作为高职高专院校机电一体化、电气自动化、新能源等相关专业的教材,也可作为中职学校机电一体化、电气自动化、新能源等相关专业的教材。
本书可作为高职高专院校机电一体化、电气自动化、新能源等相关专业的教材,也可作为中职学校机电一体化、电气自动化、新能源等相关专业的教材。
目录
学习情境一 单片机的发展和应用领域 1
1.1 初识单片机 1
1.1.1 什么是单片机 1
1.1.2 单片机发展历史与高速SOC单片机C8051F 2
1.1.3 Cygnal C8051F系列单片机特点 2
1.1.4 有关C8051系列CPU 3
1.2 单片机介绍 4
1.2.1 MCS-51单片机基本功能介绍 5
1.2.2 CIP-51单片机基本功能介绍 5
1.3 单片机学习相关知识 7
1.3.1 数制和编码 7
1.3.2 逻辑运算 9
1.3.3 真值与机器数 9
1.3.4 原码、反码、补码 9
1.3.5 BCD码 10
1.3.6 常用逻辑元件及功率输出元件 11
思考题 15
学习情境二 单片机内部结构 16
2.1 MCS-51单片机基本组成及引脚功能 16
2.1.1 单片机的基本组成 16
2.1.2 单片机的引脚及其功能 17
2.1.3 MCS-51单片机的存储器 19
2.2 CIP-51单片机基本功能介绍 26
2.3 单片机复位 27
2.3.1 通电复位 28
2.3.2 断电复位 28
2.3.3 外部复位 29
2.3.4 软件强制复位 29
2.3.5 时钟丢失检测器复位 29
2.3.6 比较器0复位 29
2.3.7 外部CNVSTR引脚复位 30
2.3.8 看门狗定时器复位 30
思考题 31
学习情境三 单片机指令系统 32
3.1 指令 32
3.2 程序设计语言 32
3.3 Cygnal(80C51)单片机指令 33
3.4 汇编语言的特点 37
3.5 汇编指令的格式 37
3.6 指令系统符号的意义 38
3.7 寻址方式 38
3.8 Cygnal系列单片机指令 39
3.8.1 数据传送和交换类指令 39
3.8.2 算术操作类指令(24) 42
3.8.3 逻辑运算指令 45
3.8.4 控制转移类指令 46
3.8.5 位操作指令 48
思考题 49
学习情境四 实现交通灯自动控制 53
4.1 汇编语言程序设计概述 53
4.2 伪指令 54
4.3 单片机汇编语言程序的基本结构形式 54
4.4 Cygnal单片机汇编语言程序设计举例 60
思考题 67
学习情境五 在电机控制中应用中断 68
5.1 中断系统的概述 68
5.1.1 中断原理介绍 68
5.1.2 使用中断的好处 69
5.2 单片机中断系统结构 70
5.2.1 中断源 70
5.2.2 中断控制系统中的特殊功能寄存器(SFR) 71
5.3 中断响应 74
5.3.1 中断响应条件 74
5.3.2 中断响应过程 74
5.3.3 中断响应时间 74
5.4 外部中断方式的选择 75
5.4.1 电平触发方式 75
5.4.2 脉冲触发方式 75
5.5 中断程序设计 75
5.5.1 中断初始化程序 75
5.5.2 中断服务程序 76
思考题 77
学习情境六 电机转速控制与定时器/计数器 79
6.1 定时器/计数器工作原理及结构 79
6.1.1 定时器/计数器结构 80
6.1.2 定时器/计数器控制寄存器 81
6.2 定时器/计数器工作方式 82
6.2.1 方式0:13位定时器/计数器 82
6.2.2 方式1:16位定时器/计数器 83
6.2.3 方式2:8位自动重装载的定时器/计数器 83
6.2.4 方式3:两个8位定时器/计数器(仅定时器0) 84
6.2.5 定时器/计数器的定时/计数范围 85
6.3 单片机定时器/计数器的应用 85
6.3.1 定时器/计数器的编程和使用方法 85
6.3.2 定时器/计数器的应用实例 86
6.4 门控位的应用 90
思考题 92
学习情境七 模拟量输入与实时控制输出 94
7.1 模拟量与数字量概述 94
7.2 A/D转换原理 95
7.3 A/D转换器及参数指标 96
7.4 典型A/D转换器芯片ADC0809 99
7.4.1 ADC0809的内部结构及工作原理 99
7.4.2 ADC0809典型应用 101
7.4.3 应用举例 103
7.5 D/A 转换接口电路 106
7.5.1 D/A 转换器的技术性能指标 106
7.5.2 典型D/A 转换器芯片DAC0832 107
学习情境八 PWM波输出 109
8.1 PWM波的产生原理 110
8.2 PWM波变频控制原理 111
8.2.1 PWM脉宽调制基本知识 111
8.2.2 软件产生PWM波的调速原理 112
8.2.3 实现任务的软件方式之一 112
8.3 Cygnal可编程计数器阵列 115
8.4 Cygnal的PCA计数器/定时器 115
8.5 Cygnal的捕捉/比较模块 117
8.5.1 边沿触发的捕捉方式 118
8.5.2 软件定时器(比较)方式 118
8.5.3 高速输出方式 119
8.5.4 频率输出方式 120
8.5.5 8位脉宽调制器方式 121
8.5.6 16位脉宽调制器方式 121
8.6 PCA0寄存器说明 122
思考题 125
学习情境九 串行外设通信SPI0与UART 126
9.1 串行通信基础知识 126
9.2 MCS-51单片机串行口结构及工作方式 128
9.3 串行口的应用 132
9.4 串行外设接口总线(SPI0) 138
9.4.1 信号说明 138
9.4.2 SPI0操作 139
9.4.3 串行时钟时序 141
9.4.4 SPI特殊功能寄存器 141
9.5 UART0 144
9.5.1 UART0工作方式 144
9.5.2 多机通信 148
9.5.3 帧错误和传输错误检测 149
9.5.4 UART0特殊功能寄存器 150
思考题 151
学习情境十 集成开发环境 153
10.1 系列单片机下载使用 153
10.1.1 ByteBlaster下载线电路 153
10.1.2 AT89S系列的ISP方法 153
10.2 AVR系列的ISP方法 155
10.3 工具箱 156
10.4 硬件连接 156
10.5 软件安装 156
10.6 Silabs集成开发环境 157
10.6.1 系统要求 157
10.6.2 汇编程序和连接程序 157
10.6.3 评估版C51C编译器 157
10.6.4 在SilabsIDE上使用Keil8051软件工具 157
10.6.5 源程序实例 158
10.6.6 寄存器定义文件(头文件) 158
10.7 目标板 158
10.7.1 系统时钟源 158
10.7.2 按键和发光二极管 159
10.7.3 串口J5 159
10.7.4 模拟输入输出口J11和J20 159
10.7.5 外扩I/O连接器(J24) 160
10.7.6 电源检测器禁止跳线器J23 161
10.7.7 目标板JTAG接口J4 161
10.7.8 I/O 接口连接器(J12~J19) 161
10.7.9 VREF连接器(J22) 162
10.8 串行适配器 162
10.9 U-EC5操作指南 162
10.9.1 U-EC5调试适配器操作说明 163
10.9.2 应用专用软件(U-EC5中文编程软件)快速烧录C8051FMCU操作说明 167
10.10 在5V系统中应用3.3V Cygnal单片机解决方案 171
10.10.1 电源选择 171
10.10.2 用5V输出驱动3V输入 172
10.10.3 用3V输出驱动5V输入 172
学习情境十一 单片机知识扩展 174
11.1 嵌入式系统 174
11.2 ARM 开发基础知识 174
11.2.1 ARM简介 174
11.2.2 ARM微处理器特点 175
11.2.3 ARM应用领域 175
11.2.4 ARM内核 175
11.2.5 开发工具 176
11.2.6 开发流程 178
11.3 DSP基础知识 179
11.3.1 DSP芯片 179
11.3.2 DSP系统的运算量 180
11.3.3 DSP系统的特点 181
11.3.4 DSP芯片的应用 181
参考文献 182
1.1 初识单片机 1
1.1.1 什么是单片机 1
1.1.2 单片机发展历史与高速SOC单片机C8051F 2
1.1.3 Cygnal C8051F系列单片机特点 2
1.1.4 有关C8051系列CPU 3
1.2 单片机介绍 4
1.2.1 MCS-51单片机基本功能介绍 5
1.2.2 CIP-51单片机基本功能介绍 5
1.3 单片机学习相关知识 7
1.3.1 数制和编码 7
1.3.2 逻辑运算 9
1.3.3 真值与机器数 9
1.3.4 原码、反码、补码 9
1.3.5 BCD码 10
1.3.6 常用逻辑元件及功率输出元件 11
思考题 15
学习情境二 单片机内部结构 16
2.1 MCS-51单片机基本组成及引脚功能 16
2.1.1 单片机的基本组成 16
2.1.2 单片机的引脚及其功能 17
2.1.3 MCS-51单片机的存储器 19
2.2 CIP-51单片机基本功能介绍 26
2.3 单片机复位 27
2.3.1 通电复位 28
2.3.2 断电复位 28
2.3.3 外部复位 29
2.3.4 软件强制复位 29
2.3.5 时钟丢失检测器复位 29
2.3.6 比较器0复位 29
2.3.7 外部CNVSTR引脚复位 30
2.3.8 看门狗定时器复位 30
思考题 31
学习情境三 单片机指令系统 32
3.1 指令 32
3.2 程序设计语言 32
3.3 Cygnal(80C51)单片机指令 33
3.4 汇编语言的特点 37
3.5 汇编指令的格式 37
3.6 指令系统符号的意义 38
3.7 寻址方式 38
3.8 Cygnal系列单片机指令 39
3.8.1 数据传送和交换类指令 39
3.8.2 算术操作类指令(24) 42
3.8.3 逻辑运算指令 45
3.8.4 控制转移类指令 46
3.8.5 位操作指令 48
思考题 49
学习情境四 实现交通灯自动控制 53
4.1 汇编语言程序设计概述 53
4.2 伪指令 54
4.3 单片机汇编语言程序的基本结构形式 54
4.4 Cygnal单片机汇编语言程序设计举例 60
思考题 67
学习情境五 在电机控制中应用中断 68
5.1 中断系统的概述 68
5.1.1 中断原理介绍 68
5.1.2 使用中断的好处 69
5.2 单片机中断系统结构 70
5.2.1 中断源 70
5.2.2 中断控制系统中的特殊功能寄存器(SFR) 71
5.3 中断响应 74
5.3.1 中断响应条件 74
5.3.2 中断响应过程 74
5.3.3 中断响应时间 74
5.4 外部中断方式的选择 75
5.4.1 电平触发方式 75
5.4.2 脉冲触发方式 75
5.5 中断程序设计 75
5.5.1 中断初始化程序 75
5.5.2 中断服务程序 76
思考题 77
学习情境六 电机转速控制与定时器/计数器 79
6.1 定时器/计数器工作原理及结构 79
6.1.1 定时器/计数器结构 80
6.1.2 定时器/计数器控制寄存器 81
6.2 定时器/计数器工作方式 82
6.2.1 方式0:13位定时器/计数器 82
6.2.2 方式1:16位定时器/计数器 83
6.2.3 方式2:8位自动重装载的定时器/计数器 83
6.2.4 方式3:两个8位定时器/计数器(仅定时器0) 84
6.2.5 定时器/计数器的定时/计数范围 85
6.3 单片机定时器/计数器的应用 85
6.3.1 定时器/计数器的编程和使用方法 85
6.3.2 定时器/计数器的应用实例 86
6.4 门控位的应用 90
思考题 92
学习情境七 模拟量输入与实时控制输出 94
7.1 模拟量与数字量概述 94
7.2 A/D转换原理 95
7.3 A/D转换器及参数指标 96
7.4 典型A/D转换器芯片ADC0809 99
7.4.1 ADC0809的内部结构及工作原理 99
7.4.2 ADC0809典型应用 101
7.4.3 应用举例 103
7.5 D/A 转换接口电路 106
7.5.1 D/A 转换器的技术性能指标 106
7.5.2 典型D/A 转换器芯片DAC0832 107
学习情境八 PWM波输出 109
8.1 PWM波的产生原理 110
8.2 PWM波变频控制原理 111
8.2.1 PWM脉宽调制基本知识 111
8.2.2 软件产生PWM波的调速原理 112
8.2.3 实现任务的软件方式之一 112
8.3 Cygnal可编程计数器阵列 115
8.4 Cygnal的PCA计数器/定时器 115
8.5 Cygnal的捕捉/比较模块 117
8.5.1 边沿触发的捕捉方式 118
8.5.2 软件定时器(比较)方式 118
8.5.3 高速输出方式 119
8.5.4 频率输出方式 120
8.5.5 8位脉宽调制器方式 121
8.5.6 16位脉宽调制器方式 121
8.6 PCA0寄存器说明 122
思考题 125
学习情境九 串行外设通信SPI0与UART 126
9.1 串行通信基础知识 126
9.2 MCS-51单片机串行口结构及工作方式 128
9.3 串行口的应用 132
9.4 串行外设接口总线(SPI0) 138
9.4.1 信号说明 138
9.4.2 SPI0操作 139
9.4.3 串行时钟时序 141
9.4.4 SPI特殊功能寄存器 141
9.5 UART0 144
9.5.1 UART0工作方式 144
9.5.2 多机通信 148
9.5.3 帧错误和传输错误检测 149
9.5.4 UART0特殊功能寄存器 150
思考题 151
学习情境十 集成开发环境 153
10.1 系列单片机下载使用 153
10.1.1 ByteBlaster下载线电路 153
10.1.2 AT89S系列的ISP方法 153
10.2 AVR系列的ISP方法 155
10.3 工具箱 156
10.4 硬件连接 156
10.5 软件安装 156
10.6 Silabs集成开发环境 157
10.6.1 系统要求 157
10.6.2 汇编程序和连接程序 157
10.6.3 评估版C51C编译器 157
10.6.4 在SilabsIDE上使用Keil8051软件工具 157
10.6.5 源程序实例 158
10.6.6 寄存器定义文件(头文件) 158
10.7 目标板 158
10.7.1 系统时钟源 158
10.7.2 按键和发光二极管 159
10.7.3 串口J5 159
10.7.4 模拟输入输出口J11和J20 159
10.7.5 外扩I/O连接器(J24) 160
10.7.6 电源检测器禁止跳线器J23 161
10.7.7 目标板JTAG接口J4 161
10.7.8 I/O 接口连接器(J12~J19) 161
10.7.9 VREF连接器(J22) 162
10.8 串行适配器 162
10.9 U-EC5操作指南 162
10.9.1 U-EC5调试适配器操作说明 163
10.9.2 应用专用软件(U-EC5中文编程软件)快速烧录C8051FMCU操作说明 167
10.10 在5V系统中应用3.3V Cygnal单片机解决方案 171
10.10.1 电源选择 171
10.10.2 用5V输出驱动3V输入 172
10.10.3 用3V输出驱动5V输入 172
学习情境十一 单片机知识扩展 174
11.1 嵌入式系统 174
11.2 ARM 开发基础知识 174
11.2.1 ARM简介 174
11.2.2 ARM微处理器特点 175
11.2.3 ARM应用领域 175
11.2.4 ARM内核 175
11.2.5 开发工具 176
11.2.6 开发流程 178
11.3 DSP基础知识 179
11.3.1 DSP芯片 179
11.3.2 DSP系统的运算量 180
11.3.3 DSP系统的特点 181
11.3.4 DSP芯片的应用 181
参考文献 182