第1章 单片机应用系统仿真及实验平台 1
1.1单片机软件仿真开发工具Keil C51 1
1.1.1 Keil C51的工作环境 1
1.1.2工程创建 1
1.1.3工程的设置 5
1.1.4工程的调试运行 7
1.1.5存储空间资源的查看和修改 10
1.1.6变量的查看和修改 11
1.2单片机硬件仿真开发工具Proteus ISIS 12
1.2.1 Proteus ISIS的用户界面 12
1.2.2设置ProteusISIS工作环境 13
1.2.3电路原理图的设计与编辑 16
1.2.4 Proteus ISIS与Keil C51的联合使用 21
1.3开发板实验平台 24
本章小结 25
思考与练习 26
第2章 单片机C51语言基础 27
2.1 C51语言的基本知识 27
2.1.1标识符 27
2.1.2常量 29
2.1.3基本数据类型 31
2.1.4存储区域与存储模式 39
2.2运算符与表达式 42
2.2.1算术运算符与算术表达式 43
2.2.2赋值运算符与赋值表达式 45
2.2.3关系运算符、逻辑运算符及其表达式 48
2.2.4条件运算符与条件表达式 49
2.2.5逗号运算符与逗号表达式 51
2.3指针与绝对地址访问 52
2.3.1指针 52
2.3.2绝对地址访问 55
2.4实例:发光二极管流水广告灯 56
本章小结 59
思考与练习 59
第3章51系列单片机基本常识 60
3.1 51单片机的基本特点 60
3.2 51单片机的引脚 61
3.3 51单片机最小应用系统 64
3.4 51单片机内部结构 64
3.4.1 CPU 65
3.4.2存储器 67
3.4.3I/O端口 69
3.4.4定时器/计数器 72
3.4.5中断系统 73
3.5单片机时序 73
本章小结 75
思考与练习 75
第4章 单片机人机交互系统设计 76
4.1单片机的输入/输出端口 76
4.2 LED数码管显示器 77
4.2.1 LED数码管显示器简介 78
4.2.2静态显示编程 79
4.2.3动态显示编程 83
4.3 LED数码管点阵显示器 85
4.3.1字母、数字及图形的显示 85
4.3.2中文字符的显示 88
4.4液晶显示器 89
4.4.1点阵字符型LCD的内部结构 89
4.4.2点阵字符型LCD的指令系统 93
4.4.3点阵字符型LCD应用举例 96
4.5非编码键盘 102
4.5.1线性非编码键盘 103
4.5.2矩阵非编码键盘 106
本章小结 120
思考与练习 121
第5章 中断系统设计 123
5.1概述 123
5.2 51单片机中断系统 124
5.2.1中断系统结构 124
5.2.2中断响应 127
5.2.3外部中断控制数码管显示 129
5.2.4中断嵌套 131
5.3定时器/计数器 133
5.3.1定时器/计数器的控制寄存器 133
5.3.2定时器/计数器工作方式 134
5.3.3定时器/计数器应用 137
5.3.4定时器控制小灯闪烁 138
5.3.5计数器对外部脉冲计数 140
5.3.6频率计 141
本章小结 144
思考与练习 145
第6章 单片机串行通信系统设计 146
6.1串行通信基本原理 146
6.1.1异步串行通信的字符格式 146
6.1.2数据通信的传输方式 147
6.2 STC89C51单片机的串行口及控制寄存器 147
6.2.1串行口缓冲寄存器SBUF 147
6.2.2串行通信控制寄存器SCON 148
6.2.3电源控制寄存器PCON 149
6.3 STC89C51串行通信工作方式 149
6.3.1串行工作方式0 149
6.3.2串行工作方式1 150
6.3.3串行工作方式2 151
6.3.4串行工作方式3 151
6.4 M AX232接口电路设计 151
6.4.1典型串行接口协议 151
6.4.2 TTL RS232电平转换的典型芯片MAX232 153
6.4.3实例6-1:计算机与单片机通信 154
6.4.4实例6-2:基于Proteus的计算机与单片机通信 157
6.5 USB接口电路设计 160
6.5.1 USB总线协议 160
6.5.2设备端USB接口设计 163
本章小结 165
思考与练习 165
第7章 传感器和时钟模块设计 166
7.1光强检测 166
7.1.1光强传感器 166
7.1.2单片机光强检测系统设计 167
7.2温度检测 170
7.2.1温度传感器 170
7.2.2室温测量系统设计 174
7.2.3温度系统设计 178
7.3时钟 189
7.3.1 DS1302 189
7.3.2 DS1302时钟系统设计 192
7.3.3温度时钟系统设计 198
本章小结 206
思考与练习 206
第8章 A/D和D/A转换模块设计 207
8.1串行A/DTLC 1543接口电路设计 207
8.1.1概述 207
8.1.2工作过程 208
8.1.3工作时序 209
8.2 TLC5615接口电路设计 214
8.2.1概述 214
8.2.2 TLC5615的工作原理 214
8.2.3并行数模转换DAC0832模拟 224
8.2.4 ADC0804转换芯片 230
本章小结 233
思考与练习 233
第9章 无线收发模块设计 234
9.1红外模块基本原理 234
9.1.1红外遥控系统 234
9.1.2遥控信号的调制与解调 234
9.1.3遥控编码 235
9.1.4红外线信号传输协议 235
9.1.5红外线接收的解调专用电路——一体化的红外线接收头 236
9.1.6遥控信号的解码 237
9.1.7实例9-1:单片机接收遥控器按键值 237
9.1.8实例9-2:基于Proteus红外遥控 241
9.2无线收发模块及其应用 255
9.2.1无线收发模块RF2401 SE简介 255
9.2.2 RF2401 SE调试 256
9.2.3实例9-3:无线温度检测系统 256
本章小结 274
思考与练习 274
第10章 数据存储和看门狗模块设计 275
10.1 12C总线读写模块 275
10.1.1数据存储基本理论 275
10.1.2I2C总线及其应用 276
10.1.3AT24C02存储器的软硬件设计 278
10.1.4实例10-1:统计开机次数 279
10.1.5实例10-2:基于Proteus对AT24C02的读取 287
10.2 SPI总线及其应用 292
10.2.1 SPI总线基本理论 292
10.2.2看门狗电路原理 293
10.2.3 X5045的软、硬件设计 294
10.2.4实例10-3: X5045应用举例 296
10.2.5 93C46软硬件设计 301
10.2.6实例10-4: 93C46数据读取 302
本章小结 311
思考与练习 312
第11章 信号发生器设计 313
11.1设计要求 313
11.2设计原理 313
11.3硬件电路设计 314
11.3.1主控模块设计 314
11.3.2信号数据处理模块设计 315
11.3.3显示电路设计 318
11.4软件设计 319
本章小结 329
思考与练习 329
第12章 水温控制系统 330
12.1技术要求 330
12.2设计原理 330
12.3温度控制算法 331
12.3.1控制算法的确定 331
12.3.2 PID控制算法 332
12.3.3 PID参数的确定 333
12.4硬件电路设计 333
12.4.1主控电路 333
12.4.2温度采集电路 334
12.4.3温度控制电路 335
12.4.4显示电路 335
12.5软件设计 337
12.5.1主程序设计 337
12.5.2 PID控制程序 338
12.5.3按键子程序 338
12.5.4 DS18B20温度采集子程序 340
12.5.5温度比较子程序 342
12.5.6液晶显示程序 344
本章小结 347
思考与练习 348
第13章 智能电动车 349
13.1技术要求 349
13.2设计原理 350
13.3硬件电路设计 350
13.3.1传感器检测电路 351
13.3.2电机驱动电路 353
13.3.3声光指示电路 354
13.3.4计数电路 354
13.4软件设计 354
13.4.1程序流程图 355
13.4.2源程序 355
本章小结 360
思考与练习 360