内容简介
本书共七个项目,内容包括单片机最小系统设计、流水灯系统设计、交通灯系统设计、电子万年历系统设计、数据采集与输出系统设计、串行通信系统设计及单片机应用系统设计。本书紧密结合高职高专的教育特点,通过17个任务的引领,使读者掌握单片机的应用技能以及项目开发与设计方法。
本书内容循序渐进,新颖实用,可作为高职高专电子、自动化、计算机等相关领域的教材,也可作为相关领域技术人员的参考书。
目录
项目一 单片机最小系统设计 1
1.1 单片机应用系统的组成 1
1.1.1 单片机概述 1
1.1.2 单片机应用系统的组成 2
1.2 MCS-51系列单片机组成结构 2
1.2.1 MCS-51系列单片机的内部结构 2
1.2.2 MCS-51系列单片机的引脚 4
1.2.3 MCS-51系列单片机I/O口结构 5
1.3 MCS-51系列单片机的存储器结构 10
1.3.1 程序存储器 10
1.3.2 片外数据存储器 11
1.3.3 片内数据存储器 11
1.4 单片机最小系统电路 14
1.4.1 单片机时钟电路 15
1.4.2 单片机复位电路 16
1.5 单片机系统开发软件 Keil C51 16
1.5.1 Keil C51软件概述 16
1.5.2 Keil C51软件的使用 17
任务1 点亮1盏LED小灯 20
习题1 22
项目二 流水灯系统设计 24
2.1 单片机的C语言 24
2.1.1 C语言的特点 24
2.1.2 C语言程序的基本结构及其流程图 25
2.2 C51的数据与运算 27
2.2.1 C51的数据与数据类型 27
2.2.2 常量与变量 29
2.2.3 C51的数据存储类型与8051存储器结构 30
2.2.4 8051特殊功能寄存器(SFR)及其C51定义 32
2.2.5 位变量(BIT)及其C51定义 33
2.2.6 C51运算符表达式及其规则 33
2.3 C51流程控制语句 39
2.3.1 表达式语句和复合语句 39
2.3.2 选择语句 40
2.3.3 循环语句 43
任务2 1盏LED小灯的闪烁控制 46
2.4 C语言的函数 48
2.4.1 函数分类和定义 48
2.4.2 函数调用 51
任务3 8盏LED小灯的闪烁控制 51
2.5 数组的概念 54
2.5.1 一维数组 55
2.5.2 二维数组 55
2.5.3 字符数组 56
任务4 8盏流水彩灯的设计 56
任务5 花样彩灯的设计 60
习题2 64
项目三 交通灯系统设计 66
3.1 单片机的中断系统 66
3.1.1 中断的概念 66
3.1.2 MCS-51中断系统的结构 66
3.1.3 中断的控制 67
3.1.4 中断处理过程 69
3.1.5 中断源扩展方法 71
任务6 可控流水彩灯的设计 72
3.2 定时/计数器 73
3.2.1 定时/计数器概述 74
3.2.2 定时/计数器的控制寄存器 75
3.2.3 定时/计数器的工作方式 77
3.2.4 定时/计数器的初始化 80
3.2.5 定时/计数器的应用实例 81
任务7 时间间隔1 s的流水彩灯设计 85
任务8 模拟交通灯(含特殊和紧急)控制系统设计 86
习题3 90
项目四 电子万年历系统设计 91
4.1 单片机与LED数码管接口 91
4.1.1 LED数码管的结构及原理 91
4.1.2 LED数码管的静态显示 92
4.1.3 LED数码管的动态显示 94
任务9 简易秒表的设计 96
4.2 单片机与字符型LCD液晶显示模块接口 99
4.2.1 LCD液晶显示器 99
4.2.2 字符型LCD液晶显示模块与单片机接口 99
4.2.3 字符型LCD液晶显示模块的应用 100
任务10 字符型LCD液晶显示广告牌控制 103
4.3 单片机与键盘接口 106
4.3.1 按键简介 106
4.3.2 独立式按键 107
4.3.3 矩阵式按键 111
任务11 具有简单控制功能的电子万年历设计 113
习题4 118
项目五 数据采集与输出系统设计 119
5.1 单片机数据采集A/D转换器 119
5.1.1 A/D转换器的基本知识 119
5.1.2 典型A/D转换器芯片ADC0809的结构与引脚 122
5.1.3 单片机与ADC0809的接口电路 123
任务12 简易数字电压表的设计 126
5.2 单片机输出控制D/A转换器 129
5.2.1 D/A转换器的基本知识 129
5.2.2 典型D/A转换器芯片DAC0832的结构与引脚 133
5.2.3 单片机与DAC0832的接口电路 134
任务13 简易信号发生器的设计 137
5.3 DS18B20温度采集芯片 142
5.3.1 DS18B20温度传感器简介 142
5.3.2 单片机与DS18B20的接口电路 147
任务14 带数显的温度计的设计 148
习题5 155
项目六 串行通信系统设计 157
6.1 串行通信概述 157
6.1.1 串行通信与并行通信 157
6.1.2 串行通信的制式 157
6.1.3 串行通信的分类 158
6.2 单片机的串行接口 159
6.2.1 串行口寄存器结构 159
6.2.2 串行口的工作方式 161
6.2.3 初始化 163
6.3 单片机通信 165
6.3.1 双机通信 165
6.3.2 多机通信 167
6.3.3 PC和单片机之间的通信 168
任务15 单片机之间的双机通信 170
6.4 I2C串行通信 171
6.4.1 I2C总线简介 171
6.4.2 I2C总线的通信规约 172
6.4.3 串行EEPROM的扩展 172
任务16 单片机扩展串行EEPROM 175
习题6 180
项目七 单片机应用系统设计 181
7.1 系统设计的原则和基本要求 181
7.1.1 系统设计的原则 181
7.1.2 系统设计的基本要求 182
7.2 单片机应用系统的设计过程 182
7.3 单片机应用系统的可靠性设计 187
7.3.1 电路的可靠性设计 187
7.3.2 软件的可靠性设计 189
任务17 搬运机器人 189
习题7 219
附录 常用的C51标准函数库 220
参考文献 224