第一部分 单片机 3
案例1 单片机控制电源检测系统电路 3
1.1 设计任务与要求 3
1.2 题目剖析(分析) 3
1.3 方案论证 4
1.4 系统硬件设计 4
1.4.1 单片机系统 4
1.4.2 单片机电源系统 5
1.4.3 接口转换电路 5
1.4.4 绘制原理图 6
1.5 系统软件设计 10
1.5.1 单片机软件的实现 10
1.5.2 计算机关机软件的实现 20
1.6 测试方案与测试结果 25
案例2 基于单片机控制液晶屏键盘接口电路设计与实现 26
2.1 设计任务与要求 26
2.2 题目剖析(分析) 26
2.3 系统硬件设计 27
2.3.1 单片机AT89C51芯片 27
2.3.2 液晶驱动控制器HD44780U 27
2.3.3 硬件电路 29
2.4 系统软件设计 30
2.4.1 HD44780U的指令集 30
2.4.2 HD44780控制以及时序 30
2.4.3 程序及流程 32
2.4.4 主程序流程 38
2.5 测试方案与测试结果 39
案例3 基于单片机控制液晶屏的设计和实现 40
3.1 设计任务与要求 40
3.2 总体设计 40
3.3 80C51单片机的硬件设计 41
3.3.1 总线型DIP40引脚封装 41
3.3.2 80C51的数据传送指令 42
3.4 内置SED1520图形液晶显示模块 42
3.4.1 显示模块的电路特性 42
3.4.2 控制部 42
3.4.3 驱动部 42
3.4.4 接口部 44
3.4.5 指令系统 45
3.4.6 内置SED1520图形液晶显示模块的接口技术 46
3.5 软件编程部分 46
3.6 汉字库内码转换 52
3.7 编程调试及仿真 52
3.7.1 编程调试及仿真软件介绍 52
3.7.2 编译器设置及使用 53
3.8 总结 53
案例4 用串行口扩展键盘驱动数码管显示 54
4.1 设计任务与要求 54
4.2 题目剖析(分析) 54
4.3 系统硬件设计 54
4.3.1 键盘扫描电路 55
4.3.2 显示器电路 55
4.4 系统软件设计 57
4.4.1 电路总体软件设计 57
4.4.2 扫描键值 58
4.4.3 数码管显示器 59
4.4.4 总体软件实现 59
4.5 测试方案与测试结果 62
案例5 基于单片机控制的定时器电路设计 63
5.1 设计任务与要求 63
5.2 系统硬件设计 63
5.2.1 AT89C51单片机 63
5.2.2 DS12887 64
5.2.3 74LS164寄存器 64
5.2.4 数码显示器 64
5.2.5 电路的连接 65
5.2.6 绘制原理图文件 65
5.2.7 绘制电路板 66
5.2.8 绘图过程中的问题 67
5.3 系统软件设计 67
5.3.1 工作原理与软件编程 67
5.3.2 软件流程 68
5.4 测试方案与测试结果 68
案例6 基于单片机控制倒计时器的设计 69
6.1 设计任务与要求 69
6.2 系统硬件设计 69
6.3 软件编程设计 70
6.4 设计中的问题及心得 71
案例7 基于单片机控制的液晶温度计的设计 72
7.1 设计任务与要求 72
7.2 系统硬件设计 72
7.2.1 工作原理框图 72
7.2.2 工作原理简述 73
7.3 电路组成部分 73
7.3.1 温度传感器 73
7.3.2 单片机控制电路 74
7.3.3 液晶显示电路 75
7.3.4 硬件电路设计图 76
7.4 软件设计 78
7.4.1 主程序流程图 78
7.4.2 读入温度子程序及流程图 78
7.4.3 显示温度子程序及流程图 78
7.5 总结 79
案例8 基于单片机控制的数字温度计的数码管显示 80
8.1 设计任务与要求 80
8.2 系统硬件设计 80
8.2.1 系统工作原理 80
8.2.2 硬件电路组成 80
8.2.3 数字温度传感器DS18B20 82
8.2.4 单片机AT89C51 82
8.2.5 MAX7219简介 83
8.3 系统软件设计 83
8.3.1 基于AT89C51和DS18B20温度系统主流程图 83
8.3.2 DS18B20温度测量系统软件 83
8.3.3 单片机获取温度信息方法 83
8.3.4 DS18B20初始化程序 84
8.3.5 DS18B20的读时序 85
8.3.6 DS18B20的写时序 86
8.3.7 DS18B20的控制程序 87
8.3.8 MAX7219驱动数码管系统软件 88
8.4 总语 91
案例9 基于单片机控制的LED汉字显示系统的设计与实现 93
9.1 设计任务与要求 93
9.2 题目剖析 94
9.3 方案论证 94
9.4 系统硬件设计 95
9.5 系统软件设计 98
9.6 系统的调试 100
9.7 测试方案与测试结果 100
案例10 基于GSM短消息汽车防盗系统——GSM模块的硬件设计 102
10.1 设计任务与要求 102
10.2 总体功能 102
10.2.1 监控功能 103
10.2.2 报警功能 103
10.3 硬件单元设计 104
10.3.1 ECU系统部分 104
10.3.2 电源转换电路 104
10.3.3 短消息检测与控制电路部分 105
10.3.4 串行口RS-232与TTL电平转换电路部分 108
10.3.5 SIM卡 109
10.4 整体电路图 110
10.5 硬件系统的仿真 112
10.5.1 Proteus简介 112
10.5.2 仿真过程 112
10.5.3 仿真结果 113
10.6 硬件调试及调试中遇到的问题 113
10.6.1 硬件调试 113
10.6.2 调试中遇到的问题 114
10.7 设计展望与总结 115
案例11 基于GSM短信息的汽车防盗系统——Visual Basic调试程序设计 116
11.1 设计任务 116
11.2 接口介绍 116
11.2.1 TC35i 116
11.2.2 RS-232介绍 116
11.3 软件设计 117
11.3.1 软件设计工具 117
11.3.2 说明窗体 118
11.3.3 属性窗体 118
11.3.4 GSM_SIM窗体 120
案例12 基于AT89C51的多功能定时闹钟设计 130
12.1 设计任务 130
12.2 系统设计 130
12.2.1 系统功能 130
12.2.2 系统总体设计方案 130
12.3 主控器AT89C51的介绍 131
12.4 系统子功能模块的硬件设计 132
12.4.1 单片机外接时钟电路 132
12.4.2 专用时钟电路 133
12.4.3 温度采集模块 133
12.4.4 LED显示模块 135
12.4.5 单片机复位电路 137
12.4.6 按键电路模块 137
12.5 系统整体硬件电路 138
12.6 系统电路在Proteus下的仿真 138
12.7 硬件电路的焊接与调试 139
12.7.1 PCB板图及设计 139
12.7.2 焊接与调试 140
12.8 总结 141
案例13 简易电子秤 142
13.1 设计任务与要求 142
13.2 题目剖析 142
13.3 方案论证 142
13.4 系统硬件设计 143
13.5 系统软件设计 150
13.6 系统调试 152
13.7 测试方案与测试结果 152
案例14 电子密码锁 153
14.1 设计任务与要求 153
14.2 题目剖析 153
14.3 方案论证 154
14.4 系统硬件设计 154
14.5 系统软件设计 159
14.6 系统调试 168
14.7 测试方案与测试结果 170
案例15 人体脉搏测量仪 171
15.1 设计任务与要求 171
15.2 题目剖析 171
15.3 方案论证 172
15.4 系统硬件设计 172
15.5 系统软件设计 179
15.6 系统调试 180
15.7 测试方案与测试结果 183
案例16 线病房呼叫系统 185
16.1 设计任务与要求 185
16.2 题目剖析 185
16.3 方案论证 186
16.4 系统硬件设计 186
16.5 系统软件设计 198
16.6 系统调试 202
16.7 测试方案与测试结果 202
案例17 智能交通控制系统 203
17.1 设计任务与要求 203
17.2 题目剖析 203
17.3 方案论证 204
17.4 系统硬件设计 204
17.5 系统软件设计 209
17.6 系统调试 213
17.7 测试方案与测试结果 215
案例18 自动温度测控系统 216
18.1 设计任务与要求 216
18.2 题目剖析 216
18.3 方案论证 216
18.4 系统硬件设计 217
18.5 系统软件设计 224
18.6 系统调试 230
18.7 测试方案与测试结果 230
案例19 CRC加卷积交织编码器的设计与分析 234
19.1 设计任务与要求 234
19.2 题目剖析 234
19.3 系统原理 235
19.4 系统软件整体设计思路 237
19.5 VHDL语言实现整个编码器的设计 239
案例20 基于单片机的数字时钟的设计 245
20.1 设计任务与要求 245
20.2 题目剖析 245
20.3 方案论证 245
20.4 系统硬件设计 246
20.5 系统软件设计 248
20.6 系统的调试 249
20.7 测试方案与测试结果 249
案例21 基于单片机的数字温度计的设计 250
21.1 设计任务与要求 250
21.1 题目剖析 250
21.3 方案论证 250
21.4 系统硬件设计 251
21.1 系统软件设计 254
21.6 系统的调试 258
21.7 测试方案与测试结果 258
案例22 基于单片机和CPLD的数字频率计的设计 259
22.1 设计任务与要求 259
22.2 题目剖析 259
22.3 方案论证 259
22.4 系统硬件设计 260
22.5 系统软件设计 262
22.6 系统的调试 265
22.7 测试方案与测试结果 266
案例23 基于单片机控制的函数波形发生器设计 267
23.1 设计任务与要求 267
23.2 题目剖析 267
23.3 方案论证 267
23.4 系统硬件设计 268
23.5 系统软件设计 272
23.6 系统的调试 273
23.7 测试方案与测试结果 273
第二部分 EDA 277
案例24 利用EDA技术实现流水灯的设计 277
24.1 设计任务与要求 277
24.2 题目剖析 277
24.3 系统硬件设计 278
24.4 系统软件设计 279
24.4.1 十进制计数器 280
24.4.2 4位二进制计数器 281
24.4.3 译码器 281
24.4.4 四输入与非门 282
24.4.5 4位移位寄存器 283
24.4.6 8位移位寄存器 283
24.4.7 顶层源程序 284
24.5 系统的调试 286
24.5.1 第一种流水灯的实现 286
24.5.2 第二种流水灯的实现 287
24.5.3 第三种流水灯的实现 287
24.5.4 第四种流水灯的实现 287
24.6 测试方案与测试结果 287
24.6.1 软件测试 287
24.6.2 硬件测试 290
24.6.3 小结 291
案例25 基于VHDL语言实现汉字显示的设计 292
25.1 设计任务与要求 292
25.2 题目剖析 292
25.3 系统硬件设计 292
25.3.1 LED点阵显示原理 293
25.3.2 3-8译码器 294
25.3.3 四输入与非门和八输入与非门 296
25.3.4 画工作原理图流程 296
25.3.5 电路工作原理 299
25.3.6 PCB电路板图 299
25.4 软件设计 300
25.4.1 软件编程VHDL 300
25.4.2 程序描述 302
25.4.3 编程下载 303
25.4.4 仿真波形 307
25.5 小结 307
案例26 数控移相正弦信号发生器 309
26.1 设计任务与要求 309
26.2 题目剖析 309
26.3 方案论证 310
26.4 系统硬件设计 311
26.5 系统软件设计 312
26.6 系统调试 318
26.7 测试方案与测试结果 318
第三部分 其他 323
案例27 地下水自动监测系统 323
27.1 设计任务 323
27.2 系统总体结构 323
27.2.1 系统组成 323
27.2.2 地下水采集系统 325
27.2.3 工作原理 327
27.3 通信系统 328
27.3.1 数据传输系统结构 328
27.3.2 通信系统组网结构 329
27.3.3 宏电GPRS通信模块 330
27.3.4 宏电移动路由器 330
27.4 系统供电 331
27.4.1 测站现场电源配置 331
27.4.2 测站现场电源结构 331
27.4.3 供电系统配置 332
27.5 防雷保护系统 332
案例28 电信原始数据采集系统 334
28.1 设计任务与要求 334
28.2 电信原始数据采集系统简介 334
28.3 相关技术 335
28.3.1 Java语言 335
28.3.2 Socket简介 335
28.3.3 JDBC简介 335
28.3.4 XML技术 336
28.3.5 IDE工具 336
28.3.6 Oracle数据库10g 336
28.4 系统设计 336
28.4.1 采集系统的基本工作框架 336
28.4.2 各模块的设计与实现 337
28.4.3 部分关键代码 340
28.5 小结 342
案例29 基于Java语言模拟ATM系统 343
29.1 设计任务 343
29.2 引言 343
29.3 模拟ATM系统思想 344
29.4 开发软件环境简介 344
29.4.1 Java语言和编程环境简介 344
29.4.2 Java的环境配置 345
29.4.3 MyEclipse开发工具简介 346
29.5 用户需求分析 347
29.5.1 功能需求 347
29.5.2 性能需求 347
29.6 总体设计 347
29.6.1 业务逻辑层的设计 348
29.6.2 表示层的设计 352
29.6.3 文件层的设计简介 360
29.7 系统流程图设计 360
29.8 小结 361
案例30 宿舍管理系统 362
30.1 设计任务 362
30.2 软件工具简介 362
30.2.1 Java 362
30.2.2 Servlet 363
30.2.3 Oracle 364
30.3 需求分析 364
30.3.1 数据需求 364
30.3.2 功能需求 365
30.4 总体设计 365
30.4.1 功能模块设计 365
30.4.2 系统功能结构图 365
30.4.3 运行过程设计 365
30.4.4 系统流程图 366
30.4.5 数据库设计 366
30.4.6 数据库表设计 366
30.4.7 系统界面设计 367
30.5 软件的运行与安装 377
30.5.1 应用程序的构建、部署 377
30.5.2 系统运行过程 377
30.6 结论 377
案例31 基于Web的网上问卷调查系统 378
31.1 设计任务 378
31.2 引言 378
31.3 网上问卷调查技术与发展简介 379
31.3.1 问卷调查的特点 379
31.3.2 网上问卷调查的特点 379
31.3.3 网上问卷的基本解决方案 380
31.3.4 Struts概述 380
31.4 开发工具及系统架构简介 381
31.4.1 编程语言简介 381
31.4.2 J2EE平台简介 381
31.4.3 数据库简介 382
31.5 系统分析与设计 383
31.5.1 系统需求分析 383
31.5.2 系统结构总框架设计 383
31.5.3 系统结构流程设计 383
31.5.4 数据库设计 384
31.5.5 系统的安全性能 386
31.6 超级管理员模块 386
31.6.1 登录的实现 386
31.6.2 调查管理模块的设计 386
31.6.3 调查搜索模块 387
31.6.4 老师管理模块 388
31.6.5 管理员管理模块 388
31.6.6 课程管理模块 389
31.6.7 班级管理模块 389
31.6.8 问卷调查部分 389
31.7 管理员模块 390
31.7.1 审核调查 390
31.7.2 搜索调查 390
31.7.3 统计报表 391
31.7.4 密码修改 391
31.8 教师模块 391
31.9 结论 391
案例32 仓储调度系统 392
32.1 设计任务 392
32.2 引言 392
32.3 系统架构及开发环境简介 393
32.3.1 C/S结构简介 393
32.3.2 开发环境 393
32.3.3 JDBC技术介绍 394
32.3.4 Oracle简介 394
32.4 系统功能需求分析 394
32.4.1 设计思想 394
32.4.2 系统功能需求 394
32.4.3 系统模块功能需求 395
32.4.4 系统整体流程设计 396
32.5 数据库设计 397
32.5.1 数据库功能概述 397
32.5.2 数据库逻辑关系 397
32.5.3 数据字典表 397
32.5.4 建表语句 398
32.6 系统的实现 399
32.6.1 系统的源文件及JDBC技术的使用 399
32.6.2 系统功能的实现 399
32.7 小结 403
参考文献 404