选择特殊符号
选择搜索类型
请输入搜索
工程技术的电子化、集成化和系统化促进了电子工程技术的发展,同时也促进了电子工程技术在社会各行业中的广泛应用,从近年的人才招聘市场来看,电子工程师的人才需求更是一路走高。
电子工程师如此紧俏,除需求不断走高,人才供不应求外,另一重要原因则是电子工程师的门槛相对而言比较高,这个高门槛则来自于工程师的“经验”和“实践”!
因此,为了满足读者学习和工作需要,解决各种工作中的专业问题,我们紧紧围绕“经验”和“实践”,精心策划组织了此套丛书。
1.丛书范围
现代电子科学技术的一个特点是多学科交叉,因此,工程师应当了解、掌握2门以上的相关学科,知识既精深又广博是优秀的工程师成长为某领域专家的重要标志。本丛书内容涉及软件开发、研发电子以及嵌入式项目开发等,包括单片机、USB接口、ARM、CPLD/FPGA、DSP、移动通信系统等。
2.读者对象
本套书面向各领域的初、中级用户。具体为高校计算机、电子信息、通信工程、自动化控制专业在校大学生,以及从事电子开发和应用行业的科研人员。
3.内容组织形式
本套书紧紧围绕“经验”和“实践”,首先介绍一些相关的基础知识,然后根据不同的模块或应用领域,分篇安排应用程序实例的精讲。基础知识用来为一些初级读者打下一定的知识功底;基础好一点的读者则可以跳过这一部分,直接进入实例的学习。
4.实例特色
在应用实例的安排上,着重突出“应用”和“实用”两个基本原则,安排具有代表性、技术领先性,以及应用广泛的典型实例,让读者学习借鉴。这些实例是从作者多年程序开发项目中挑选出的,也是经验的归纳与总结。
在应用实例的讲解上,既介绍了设计原理、基本步骤和流程,也穿插了一些经验、技巧与注意事项。特别在程序设计思路上,在决定项目开发的质量和成功与否的细节上,尽可能地用简洁的语言来清晰阐述大众易于理解的概念和思想;同时,程序代码部分做了很详细的中文注释,有利于读者举一反三,快速应用和提高。
5.光盘内容
本套书的光盘中包含了丰富的实例原图文件和程序源代码,读者稍加修改便可应用于自己的工作中或者完成自己的课题(毕业设计),物超所值。读者使用之前,最好先将光盘内容全部复制到电脑硬盘中,以便于以后可以直接调用,而不需要反复使用光盘,提高操作速度和学习效率。
6.学习指南
对于有一定基础的读者,建议直接从实例部分入手,边看边上机练习,这样印象会比较深,效果更好。基础差一点的读者请先详细学习书中基础部分的理论知识,然后再进行应用实例的学习。在学习中,尽量做到反复理解和演练,以达到融会贯通、举一反三的功效;特别希望尽量和自己的工作设计联系起来,以达到“即学即会,学以致用”的最大化境界。
本套书主要偏重于实用性,具有很强的工程实践指导性。期望读者在学习中顺利、如意!
第一篇 基础知识篇
第1章 51单片机开发的基础知识 2
1.1 51单片机的硬件结构 2
1.1.1 功能模块 2
1.1.2 CPU 2
1.1.3 并行I/O端口 4
1.1.4 存储器结构 6
1.1.5 定时/计数器 10
1.1.6 串行口 14
1.1.7 中断系统 20
1.2 51单片机的指令系统 22
1.2.1 寻址方式 22
1.2.2 指令说明 26
1.2.3 指令系统表 29
1.3 本章总结 32
第2章 C语言程序各语句
第2章 用法与意义 33
2.1 数据结构 33
2.1.1 数据类型 34
2.1.2 变量与常量 36
2.1.3 数组 40
2.1.4 指针 44
2.1.5 结构 47
2.1.6 共用体 51
2.1.7 枚举 52
2.2 运算符与表达式 53
2.2.1 运算符分类与优先级 53
2.2.2 算术运算符与表达式 54
2.2.3 关系运算符与表达式 55
2.2.4 逻辑运算符与表达式 55
2.2.5 位操作运算符与表达式 55
2.2.6 赋值运算符与表达式 56
2.3 程序结构与函数 57
2.3.1 程序结构 57
2.3.2 函数 58
2.4 流程控制语句 64
2.4.1 选择语句 65
2.4.2 循环语句 68
2.4.3 转移语句 70
2.5 本章总结 72
第3章 Keil 8051 C编译器 73
3.1 Keil编译器简介 73
3.2 使用Keil开发应用软件 74
3.2.1 建立工程 75
3.2.2 工程的设置 77
3.2.3 编译与连接 79
3.3 dScope for Windows的使用 80
3.3.1 如何启动 80
3.3.2 如何调试 81
3.3.3 调试窗口 83
3.4 本章总结 85
第二篇 输入/输出系统设计
第 4章 单片机实现液晶显示 88
4.1 实例说明 88
4.2 设计思路分析 88
4.2.1 液晶显示模块 88
4.2.2 液晶显示工作原理 89
4.2.3 设计思路 91
4.3 硬件电路设计 91
4.3.1 器件选取 91
4.3.2 电源模块 92
4.3.3 液晶显示模块 93
4.3.4 单片机模块 95
4.4 软件设计 96
4.4.1 液晶控制驱动器指令集 96
4.4.2 程序说明 97
4.5 实例总结 100
第5章 基于MAX7219的8位
第5章 数码管显示 101
5.1 实例说明 101
5.2 设计思路分析 101
5.2.1 LED显示驱动芯片的选取 101
5.2.2 MAX7219的工作原理 102
5.3 硬件电路设计 103
5.3.1 主要器件 103
5.3.2 电路原理图 104
5.4 软件设计 106
5.4.1 MAX7219的工作时序
5.4.1 和寄存器描述 106
5.4.2 程序说明 108
5.5 实例总结 111
第6章 键盘输入实例——实现
第6章 44键盘 112
6.1 实例说明 112
6.2 设计思路分析 112
6.3 硬件电路设计 113
6.4 软件设计 114
6.5 实例总结 118
第7章 单片机实现语音录放 119
7.1 实例说明 119
7.2 设计思路分析 120
7.2.1 语音芯片选取 120
7.2.2 语音芯片ISD2560简介 120
7.3 硬件电路设计 121
7.3.1 主要器件 121
7.3.2 电路原理图及说明 124
7.4 软件设计 125
7.4.1 程序流程 125
7.4.2 程序说明 126
7.5 实例总结 128
第三篇 数据采集系统设计
第8章 基于MAX197的
第8章 并行A/D转换 130
8.1 实例说明 130
8.2 设计思路分析 130
8.2.1 A/D转换原理 131
8.2.2 如何选择A/D转换器件 131
8.2.3 A/D转换器对电源
8.2.3 电路的要求 132
8.3 硬件电路设计 133
8.3.1 主要器件 133
8.3.2 电路原理图及说明 136
8.4 软件设计 138
8.4.1 MAX197控制字 138
8.4.2 程序流程 139
8.4.3 程序说明 140
8.5 实例总结 141
第9章 基于TLC549的
第9章 串行A/D转换 142
9.1 实例说明 142
9.2 设计思路分析 142
9.2.1 芯片选取 143
9.2.2 工作原理 143
9.3 硬件电路设计 145
9.3.1 主要器件 145
9.3.2 电路原理图及说明 145
9.4 软件设计 146
9.4.1 转换过程和时序要求 147
9.4.2 程序流程 147
9.4.3 程序说明 148
9.5 实例总结 149
第10章 基于MAX527的
第10章 并行D/A转换 150
10.1 实例说明 150
10.2 设计思路分析 150
10.2.1 D/A转换原理 151
10.2.2 如何选择D/A转换器件 151
10.2.3 D/A转换器对电源
10.2.3 电路的要求 152
10.3 硬件电路设计 152
10.3.1 主要器件 152
10.3.2 电路原理图及说明 154
10.4 软件设计 156
10.4.1 MAX527的地址和
10.4.1 重要引脚 156
10.4.2 程序流程 157
10.4.3 程序说明 158
10.5 实例总结 159
第11章 基于MAX517的
第11章 串行D/A转换 160
11.1 实例说明 160
11.2 设计思路分析 160
11.2.1 芯片选取 161
11.2.2 工作原理 161
11.3 硬件电路设计 162
11.3.1 主要器件 162
11.3.2 电路原理图及说明 163
11.4 软件设计 164
11.4.1 时序要求和转换过程 164
11.4.2 程序说明 165
11.5 实例总结 167
第12章 基于SHT71数字温/湿度
第12章 传感器的采集实现 168
12.1 实例说明 168
12.2 设计思路分析 168
12.2.1 SHT71性能概述 168
12.2.2 SHT71的功能说明 169
12.2.3 SHT71的引脚尺寸和说明 170
12.3 硬件电路设计 171
12.4 软件设计 172
12.4.1 SHT71的操作方法 172
12.4.2 程序流程 173
12.4.3 源程序清单 174
12.5 实例总结 181
第13章 基于DS1624的数字
第13章 温度计设计 182
13.1 实例说明 182
13.2 设计思路分析 182
13.2.1 DS1624简介 183
13.2.2 DS1624基本特性 183
13.2.3 DS1624工作原理 183
13.2.4 DS1624工作方式 186
13.2.5 DS1624的指令集 186
13.3 硬件电路设计 187
13.3.1 硬件设计 187
13.3.2 原理图及其说明 187
13.4 软件设计 188
13.4.1 程序流程 188
13.4.2 程序说明 189
13.5 实例总结 194
第四篇 控制系统设计
第14章 基于DS12C887的实时
第14章 日历时钟显示系统设计 196
14.1 实例说明 196
14.2 设计思路分析 197
14.2.1 选择合适的日历时钟芯片 197
14.2.2 如何由DS12C887芯片
14.2.2 获取时间信息 197
14.3 硬件电路设计 198
14.3.1 结构框图 198
14.3.2 主要器件 198
14.3.3 电路原理图及说明 200
14.4 软件设计 202
14.4.1 DS12C877的内存空间 202
14.4.2 程序流程 204
14.4.3 程序代码及说明 205
14.5 实例总结 207
第15章 单片机控制的
第15章 步进电机系统 208
15.1 实例说明 208
15.2 设计思路分析 208
15.2.1 步进电机的工作原理 209
15.2.2 步进电机的控制 211
15.2.3 脉冲分配与驱动
15.2.3 芯片的选取 212
15.3 硬件电路设计 213
15.3.1 结构框图 213
15.3.2 主要器件 214
15.3.3 电路原理图及说明 215
15.4 软件设计 217
15.4.1 程序流程 217
15.4.2 程序说明 218
15.5 实例总结 220
第16章 基于MAX1898的智能
第16章 充电器设计 222
16.1 实例说明 222
16.2 设计思路分析 223
16.2.1 为何需要实现充电器的
16.2.1 智能化 223
16.2.2 如何选择电池充电芯片 223
16.2.3 MAX1898的充电
16.2.1 工作原理 224
16.3 硬件电路设计 226
16.3.1 主要器件 226
16.3.2 电路原理图及说明 227
16.4 软件设计 230
16.4.1 程序流程 230
16.4.2 程序说明 231
16.5 实例总结 232
第五篇 存储系统与外设扩展
第17章 基于NOR Flash AM29LV320
第17章 的数据存储 234
17.1 实例说明 234
17.2 设计思路分析 235
17.2.1 芯片AM29LV320 235
17.2.2 具体设计思路 237
17.3 硬件电路设计 237
17.4 软件设计 239
17.4.1 AM29LV320的命令
17.4.1 与状态 240
17.4.2 串行异步数据传输 256
17.4.3 程序代码说明 256
17.5 实例总结 265
第18章 基于XC95144的串口扩展 266
18.1 实例说明 266
18.2 设计思路分析 267
18.2.1 串口发送的设计 267
18.2.2 串口接收的设计 269
18.2.3 串口模块的设计 271
18.3 硬件电路设计 273
18.4 软件设计 275
18.4.1 CPLD的设计原理图 275
18.4.2 C51单片机程序代码说明 277
18.5 实例总结 279
第19章 基于8255扩展并行口 280
19.1 实例说明 280
19.2 设计思路分析 280
19.2.1 并行口扩展的原理 280
19.2.2 芯片选择 281
19.3 硬件电路设计 284
19.4 软件设计 286
19.5 实例总结 289
第六篇 信号与算法实现
第20章 单片机实现智能
第20章 信号发生器 292
20.1 实例说明 292
20.2 设计思路分析 293
20.2.1 信号发生芯片MAX038 293
20.2.2 如何在单片机系统中
20.2.2 使用MAX038 294
20.3 硬件电路设计 295
20.3.1 主要器件 295
20.3.2 电路原理图及说明 296
20.4 软件设计 298
20.4.1 程序流程 298
20.4.2 程序说明 299
20.5 实例总结 301
第21章 单片机实现步进式
第21章 PWM信号输出 302
21.1 实例说明 302
21.2 设计思路分析 302
21.2.1 PWM控制 303
21.2.2 选择合适的外部计数芯片 303
21.3 硬件电路设计 304
21.3.1 主要器件 304
21.3.2 电路原理图及说明 305
21.4 软件设计 306
21.4.1 8254的内部控制字
21.4.1 和计数寄存器 306
21.4.2 程序说明 308
21.5 实例总结 309
第22章 单片机实现CRC算法 310
22.1 实例说明 310
22.2 CRC原理 311
22.3 算法设计与程序实现 312
22.3.1 按位计算CRC 312
22.3.2 按字节计算CRC 313
22.3.3 按半字节计算CRC 316
22.3.4 主程序及测试结果 317
22.4 实例总结 318
第23章 单片机实现软件滤波 319
23.1 实例说明 319
23.2 设计思路分析 319
23.3 软件设计 322
23.4 实例总结 326
第七篇 通信传输系统设计
第24章 单片机实现点对点的
第24章 数据传输 328
24.1 实例说明 328
24.2 设计思路分析 328
24.2.1 串行通信基本原理 329
24.2.2 接口电平转换 330
24.3 硬件电路设计 331
24.3.1 结构框图 331
24.3.2 主要器件 331
24.3.2 电路原理图及说明 332
24.4 软件设计 333
24.4.1 协议设计 334
24.4.2 主机程序流程及代码 335
24.4.3 从机程序流程及代码 338
24.5 实例总结 340
第25章 单片机实现点对多点的
第25章 数据传输 341
25.1 实例说明 341
25.2 设计思路分析 342
25.2.1 如何实现从机识别 342
25.2.2 51单片机串口的
25.2.2 多机通信功能 342
25.3 硬件电路设计 343
25.4 软件设计 344
25.4.1 协议设计 344
25.4.2 主机程序流程及代码 344
25.4.3 从机程序流程及代码 348
25.5 实例总结 351
第26章 单片机实现以太网接口 352
26.1 实例说明 352
26.2 设计思路分析 353
26.2.1 以太网协议 353
26.2.2 选择合适的以太网
26.2.2 控制芯片 354
26.3 硬件电路设计 355
26.3.1 主要器件 355
26.3.2 电路原理图及说明 358
26.4 软件设计 360
26.4.1 地址空间与寄存器 360
26.4.2 程序说明 362
26.5 实例总结 365
第27章 单片机实现I2C总线通信 366
27.1 实例说明 366
27.2 设计思路分析 367
27.2.1 I2C总线的工作原理 367
27.2.2 I2C总线的通信时序 367
27.3 硬件电路设计 369
27.4 软件设计 369
27.4.1 程序流程 370
27.4.2 程序说明 370
27.5 实例总结 374
第28章 单片机实现RS-485
第28章 总线现场监测系统 375
28.1 实例说明 375
28.2 设计思路分析 376
28.2.1 RS-485总线 376
28.2.2 RS-485总线驱动芯片选取 379
28.2.3 MAX481构成的RS-485
28.2.3 总线网络 381
28.3 硬件电路设计 381
28.3.1 RS-232/485总线转接卡 381
28.3.2 带有RS-485总线接口的
28.3.2 单片机系统 382
28.4 软件设计 383
28.4.1 通信协议设计 384
28.4.2 程序流程 385
28.4.3 程序说明 386
28.5 实例总结 390
第29章 CAN总线接口通信设计 391
29.1 实例说明 391
29.2 设计原理与思路 391
29.2.1 CAN总线及CAN
29.2.1 总线协议简介 391
29.3 芯片选型 395
29.4 硬件电路设计 397
29.4.1 结构框图 397
29.4.2 主要器件说明 398
29.5 电路原理图及其说明 401
29.6 软件设计 403
29.6.1 程序总体思路说明 403
29.6.2 程序流程图 403
29.6.3 主要源程序清单和注释 406
29.7 实例总结 413
第八篇 电源监控与抗干扰设计
第30章 单片机监控电路设计 416
30.1 实例说明 416
30.2 设计思路分析 417
30.2.1 一种简单的单片机上
30.2.1 电复位电路 417
30.2.2 单片机监控芯片的选取 418
30.3 硬件电路设计 419
30.3.1 原理图设计 420
30.3.2 监控芯片的外围电路设计 420
30.4 软件设计 421
30.5 实例总结 422
第31章 光电隔离电路设计 423
31.1 实例说明 423
31.2 设计思路分析 424
31.2.1 光耦器件的工作原理 424
31.2.2 光耦器件的典型应用 425
31.2.3 如何选择光耦器件 427
31.3 硬件电路设计 428
31.3.1 主要器件 428
31.3.2 电路原理图及说明 428
31.4 实例总结 431
附录A 汇编语言与C语言的
附录A 混合编程 432
附录B 实例配套实验箱 451
本书通过大量的典型实例,详细介绍了51单片机各种C语言应用专题程序设计的流程、方法、技巧及设计思想。全书共分31章,第1章~第3章为基础知识,介绍了51单片机开发的硬件结构、指令系统、C语言设计以及Keil 8051 C编译器知识;第4章~第31章为本书的重点,通过28个典型的C语言应用实例,详细介绍了51单片机的各种应用开发和使用技术,包括输入/输出、数据采集、控制系统、存储系统与外设扩展、信号与算法实现、网络通信与传输、电源监控与抗干扰设计。全书实例丰富、代表性强,涉及领域广,每个例子都调试通过,都有具体的设计思路、硬件电路、软件设计以及程序代码分析,同时附录里专门提供了本书实例配套实验箱内容,对于读者学习51单片机的应用开发提供了良好的参考和指导价值。本书语言简洁,层次清晰,书中的所有程序代码都使用C语言实现,简单易学、易懂。本书适合计算机、自动化、电子及硬件等相关专业的学生进行学习,同时也可供从事51单片机开发的科研设计人员参考使用。
本书配有一张光盘,光盘里包括了书中所有的程序代码和电路图,读者稍加修改即可用于自己的设计,物超所值。
#include<reg51.h>#define uint unsigned int#define uchar unsigned charsbit spk=P3^0;sbit k0=P3^...
你没有电路怎么出程序啊,首先要有测温的,设定温度的,之后就是去控制压缩机工作与否的。这些出来了就简单了,只要读出温度---比较---控制压缩机工作与否,这样就能达到设定温度的恒温了
加减一加法器,通过P1口输入一个八位无符号数,P2口输入另
1976年,Intel公司推出第一款8位单片机MCS-48,宣告了单片机时代的到来。在短短几十年里,单片机技术获得了长足的发展,在越来越广泛的领域内大显身手。
随着科学技术的日新月异,单片机也从一开始的8位单片机发展到16位、32位等诸多系列,其中51系列单片机由于其灵活方便、价格便宜的优点,在众多制造厂商的支持下发展成为具有上百个品种的大家族,迄今为止,其他任何一个单片机系列均未发展到如此的规模。
单片机系统的开发是硬件、软件相结合的过程。要完成单片机系统的开发,不仅需要掌握编程技术,还需要针对实际应用选择合理的单片机芯片和外围器件,并以此为基础,设计硬件电路。事实证明,通过具体的实例来学习单片机系统的开发是一条科学的途径,本书作者根据多年积累的单片机开发经验编写此书,旨在通过介绍各种典型的单片机系统的开发实例来为读者提供开发单片机系统的一条“捷径”。
本书内容
本书以第1版为基础,另外增加了C语言程序设计基础、存储系统与外设扩展、CAN总线通信、软件滤波设计等实例内容,使其在内容上更加的全面。与此同时,剔除了第1版中一些理论上正确、但实际因为市场芯片停产而无法实现的例子(包括:单片机实现GPS定位、实现接触式IC卡读写、实现非接触式IC卡读写、基于双口RAM的单片机间通信、实现短距离无线传输),补充一些新的例子内容,这样读者选择本书,将可以通过实验箱全部调试成功,完全达到学以致用的目的。
本书共分为31章,主要内容安排如下:
篇 名 内容介绍 页 码
第一篇
基础知识篇 包括第1~3章,介绍了51单片机的硬件结构和指令系统、C语言设计,以及Keil 8051 C 编译器知识 1
第4~33章全部为C语言应用程序设计实例,其中又根据不同的应用领域分为7篇 第二篇
输入/输出系统设计 包括第4~7章,由4个实例构成,涵盖了51单片机系统主要输入/输出方法的实现 87
第三篇
数据采集系统设计 包括第8~13章,由6个实例构成,介绍了51单片机在数据采集领域的应用,包括A/D与D/A转换、基于SHT71数字温/湿度传感器的采集实现,以及 基于DS1624的数字温度计 129
第四篇
控制系统设计 包括第14~16章,由3个实例构成,介绍了51单片机在控制领域的应用,包括步进电机控制、智能充电器、日历时钟 195
第五篇
存储系统与外设扩展 包括第17~19章,由3个实例构成,包括基于NOR Flash的数据存储实例、基于XC95144的串口扩展,以及基于8255扩展并行口 233
第六篇
信号与算法实现 包括第20~23章,,由4个实例构成,介绍了51单片机在信号与算法领域的应用,包括智能信号发生器、步进式PWM信号、CRC算法,以及软件滤波的实现 291
第七篇
通信传输系统设计 包括第24~29章,由6个实例构成,介绍了51单片机在通信传输领域的应用,包括232串口传输、以太网接口、I2C总线传输、485总线传输,以及CAN总线接口通信设计 327
第八篇
电源监控与抗干扰设计 包括第30,31章,由2个实例构成,包括单片机监控电路设计、 光电隔离输出接口电路设计实例 415
本书特点
本书作者长期从事51单片机方面的系统设计工作,曾经开发过许多51单片机应用设计的项目。具有丰富的实践经验,从而保证了本书良好的实用性和指导性。归纳本书,主要具有以下一些特点:
(1)在第1版基础上,增加了C语言程序设计基础、存储系统与外设扩展、CAN总线通信、软件滤波设计等实例内容,在内容上更加的全面。
(2)本书提供了28个典型设计实例,例子种类丰富,覆盖领域广,代表性强,可成为大多数51单片机开发人员的参考手册。
(3)本书不但详细介绍了实例的硬件接口设计,也对实例的程序代码做了重点分析,提供了深入的程序设计思想,利于读者举一反三。
(4)本书盘书结合,光盘中附有丰富的实例硬件图源文件和程序源代码,读者稍加修改,便可应用于自己的工作中去,物超所值。
(5)广东无忧电子开发网专门为本书提供了C51实验箱的实验验证,这一实验箱很适合教学使用,也是很好的通用开发板,可供从事51单片机开发的广大科研人员使用;实验箱可以使用ATMEL微控制器,也可使用其他厂商的C51系列单片机。读者在使用实验箱中如果有疑问、困难、意见与建议,可以发邮件进行交流咨询。同时有关本实验箱的C51程序设计的完善和更新,读者可以通过登录无忧电子开发网进行了解。
本书由戴佳、戴卫恒、刘博文编写。另外,秦龙、苗龙、田莉、钱林杰、张晓平、王渝梅、金成江、李志江、肖毅、刘轶、刘云志、廖日坤、金镇、李宁宇、黄小慧、廖济林、庞丽梅、邱远彬、黄乘传、黄小欢等在资料收集、整理和技术支持方面做了大量的工作,在此一并向他们表示感谢!
由于时间仓促,再加之作者的水平有限,书中难免存在一些不足之处,欢迎广大读者批评和指正。
基于51单片机室内攀岩机的程序设计
在倡导全民健身的今天,我们带来一种方便快捷安全的健身装置_室内攀岩机,通过模拟真实岩壁,使室内攀岩成为了可能.我们将程序设计和硬件设计结合起来,不仅创新了室内攀岩机的结构、控制了攀岩壁的机械安装角度和攀岩面的运动速度,还调节了运动的难易程度以适用不同使用群体,使室内攀岩运动成为家庭运动的一种新理念、新可能.
89C51单片机论文
89C51单片机论文 摘要:为了方便初学者使用单片机的各种片内资源以及 一些常用的外围扩展芯片,设计开发了基于 51系列单片机 的系统板。同时,该板还可做为学习各种仿真器所需的目标 板。 关键词: 89c51 单片机; tlc 2543 ; tlc5615 the development and application based on 51 series mcu system board li li,shao xinhui (changcheng institute of metrology&measurement,avic,beijing100095,china) abstract:in order to facilitate the beginner to use all kinds of microcontroller chip internal resources
《51单片机C语言应用程序设计实例精讲》通过大量的实例,介绍了51单片机各种C语言应用专题程序设计的流程、方法、技巧及设计思想。全书共分31章,第1章~第3章为基础知识,介绍了51单片机开发的硬件结构、指令系统、C语言设计以及Keil8051C编译器知识;第4章~第31章为本书的重点,通过28个典型的C语言应用实例,介绍了51单片机的各种应用开发和使用技术,包括输入,输出、数据采集,控制系统、存储系统与外设扩展、信号与算法实现、网络通信与传输、电源监控与抗干扰设计。全书实例丰富,每个例子都调试通过,都有具体的设计思路、硬件电路、软件设计以及程序代码分析,同时附录里专门提供了实例配套实验箱内容,对于读者学习51单片机的应用开发提供了参考和指导价值 。
《51单片机C语言应用程序设计实例精讲》中的所有程序代码都使用C语言实现,简单易学、易懂。《51单片机C语言应用程序设计实例精讲》适合计算机、自动化、电子及硬件等相关专业的学生进行学习,同时也可供从事51单片机开发的科研设计人员参考使用。
《51单片机C语言应用程序设计实例精讲》配有一张光盘,光盘里包括了书中所有的程序代码和电路图,读者稍加修改即可用于自己的设计,物超所值。
第1章51单片机开发的基础知识
1.151单片机的硬件结构
1.1.1功能模块
1.1.2CPU
1.1.3并行I/O端口
1.1.4存储嚣结构
1.1.5定时/计数器
1.1.6串行口
1.1.7中断系统
1.251单片机的指令系统
1.2.1寻址方式
1.2.2指令说明
1.2.3指令系统表
1.3本章总结
第2章C语言程序各语句用法与意义
2.1数据结构
2.1.1数据类型
2.1.2变量与常量
2.1.3数组
2.1.4指针
2.1.5结构
2.1.6共用体
2.1.7枚举
2.2运算符与表达式
2.2.1运算符分类与优先级
2.2.2算术运算符与表达式
2.2.3关系运算符与表达式
2.2.4逻辑运算符与表达式
2.2.5位操作运算符与表达式
2.2.6赋值运算符与表达式
2.3程序结构与函数
2.3.1程序结构
2.3.2函数
2.4流程控制语句
2.4.1选择语句
2.4.2循环语句
2.4.3转移语句
2.5本章总结
第3章Keil8051C编译器
3.1Keil编译器简介
3.2使用Keil开发应用软件
3.2.1建立工程
3.2.2工程的设置
3.2.3编译与连接
3.3dScopeforWindows的使用
3.3.1如何启动
3.3.2如何调试
3.3.3调试窗口
3.4本章总结
第4章单片机实现液晶显示
4.1实例说明
4.2设计思路分析
4.2.1液晶显示模块
4.2.2液晶显示工作原理
4.2.3设计思路
4.3硬件电路设计
4.3.1器件选取
4.3.2电源模块
4.3.3液晶显示模块
4.3.4单片机模块
4.4软件设计
4.4.1液晶控制驱动嚣指令集
4.4.2程序说明
4.5实例总结
第5章基于MAX7219的8位数码管显示
5.1实例说明
5.2设计思路分析
5.2.1LED显示驱动芯片的选取
5.2.2MAX7219的工作原理
5.3硬件电路设计
5.3.1主要器件
5.3.2电路原理图
5.4软件设计
5.4.1MAX7219的工作时序和寄存器描述
5.4.2程序说明
5.5实例总结
第6章键盘输入实例——实现4x4键盘
6.1实例说明
6.2设计思路分析
6.3硬件电路设计
6.4软件设计
6.5实例总结
第7章单片机实现语音录放
7.1实例说明
7.2设计思路分析
7.2.1语音芯片选取
7.2.2语音芯片1SD2560简介
7.3硬件电路设计
7.3.1主要器件
7.3.2电路原理图及说明
7.4软件设计
7.4.1程序流程
7.4.2程序说明
7.5实例总结
第8章基于MAX197的并行A/D转换
8.1实例说明
8.2设计思路分析
8.2.1A/D转换原理
8.2.2如何选择A/D转换器件
8.2.3A/D转换器对电源电路的要求
8.3硬件电路设计
8.3.1主要器件
8.3.2电路原理图及说明
8.4软件设计
8.4.1MAX197控制字
8.4.2程序流程
8.4.3程序说明
8.5实例总结
第9章基于TLC549的串行A/D转换
9.1实例说明
9.2设计思路分析
9.2.1芯片选取
9.2.2工作原理
9.3硬件电路设计
9.3.1主要器件
9.3.2电路原理图及说明
9.4软件设计
9.4.1转换过程和时序要求
9.4.2程序流程
9.4.3程序说明
9.5实例总结
第10章基于MAX527的并行D/A转换
10.1实例说明
10.2设计思路分析
10.2.1D/A转换原理
10.2.2如何选择D/A转换器件
10.2.3D/A转换器对电源电路的要求
10.3硬件电路设计
10.3.1主要器件
10.3.2电路原理图及说明
10.4软件设计
10.4.1MAX527的地址和重要引脚
10.4.2程序流程
10.4.3程序说明
10.5实例总结
第11章基于MAX517的串行D/A转换
11.1实例说明
11.2设计思路分析
11.2.1芯片选取
11.2.2工作原理
11.3硬件电路设计
11.3.1主要器件
11.3.2电路原理图及说明
11.4软件设计
11.4.1时序要求和转换过程
11.4.2程序说明
11.5实例总结
第12章基于SHT71数字温/湿度传感器的采集实现
12.1实例说明
12.2设计思路分析
12.2.1SHT71性能概述
12.2.2SHT71的功能说明
12.2.3SHT71的引脚尺寸和说明
12.3硬件电路设计
12.4软件设计
12.4.1SHT71的操作方法
12.42程序流程
12.4.3源程序清单
12.5实例总结
第13章基于DS1624的数字温度计设计
13.1实例说明
13.1.2设计思路分析
13.2.1DS1624简介
13.2.2DS1624基本特性
13.2.3DS1624工作原理
13.2.4DS1624工作方式
13.2.5DS1624的指令集
13.3硬件电路设计
13.3.1硬件设计
13.3.2原理科及其说明
13.4软件设计
13.4.1程序流程
13.4.2程序说明
13.5实例总结
第14章基于DS12C887的实时日历时钟显示系统设计
14.1实例说明
14.2设计思路分析
14.2.1选择合适的日历时钟芯片7
14.2.2如何由DS12C887芯片获取时间信息
14.3硬件电路设计
14.3.1结构框图
14.3.2主要器件
14.3.3电路原理图及说明
14.4软件设计
14.4.1DS12C877的内存空间
14.4.2程序流程
14.4.3程序代码及说明
14.5实例总结
第15章单片机控制的步进电机系统
15.1实例说明
15.2设计思路分析
15.2.1步进电机的工作原理
15.2.2步进电机的控制
15.2.3脉冲分配与驱动芯片的选取
15.3硬件电路设计
15.3.1结构框图
15.3.2主要器件
15.3.3电路原理图厦说明
15.4软件设计
15.4.1程序流程
15.4.2程序说明
15.5实例总结
第16章基于MAX1898的智能充电器设计
16.1实例说明
16.2设计思路分析
16.2.1为何需要实现充电器的智能化
16.2.2如何选择电池充电芯片
16.2.3MAX1898的充电工作原理
16.3硬件电路设计
16.3.1主要器件
16.3.2电路原理图及说明
16.4软件设计
16.4.1程序流程
16.4.2程序说明
16.5实例总结
第17章基于NORFlashAM29LV320的数据存储
17.1实例说明
17.2设计思路分析
17.2.1芯片AM29LV320
17.2.2具体设计思路
17.3硬件电路设计
17.4软件设计
17.4.1AM29LV320的命令与状态
17.4.2串行异步数据传输
17.4.3程序代码说明
17.5实例总结
第18章基于XC95144的串口扩展
18.1实例说明
18.2设计思路分析
18.2.1串口发送的设计
18.2.2串口接收的设计
18.2.3串口模块的设计l
18.3硬件电路设计
18.4软件设计
18.4.1CPLD的设计原理图
18.4.2C51单片机程序代码说明
18.5实例总结
第19章基于8255扩展并行口
19.1实例说明
19.2设计思路分析
19.2.1并行口扩展的原理
19.2.2芯片选择
19.3硬件电路设计
19.4软件设计
19.5实例总结
第20章单片机实现智能信号发生器
第21章单片机实现步进式PWM信号输出
第22章单片机实现CRC算法
第23章单片机实现软件滤波
第七篇通信传输系统设计
第24章单片机实现点对点的数据传输
第25章单片机实现点对多点的数据传输
第26章单片机实现以太网接口
第27章单片机实现1C总线通信
第28章单片机实现RS-485总线现场监测系统
第29章CAN总线接口通信设计
第八篇电源监控与抗干扰设计
第30章单片机监控电路设计
第31章光电隔离电路设计
附录A汇编语言与C语言的混合编程
附录B实例配套实验箱
本书首先介绍了C语言的基本知识,使读者能使用C语言进行程序设计;然后介绍了30个开发例子。全书主要通过实例的形式来介绍MSP430单片机在不同领域中的应用,从而使读者掌握MSP430单片机开发的流程、方法、技巧及设计思想。全书语言简洁,层次清晰,本书的所有程序代码都使用C语言实现,简单易学、易懂。本书比较适合计算机、自动化、电子及硬件等相关专业的院校学生进行学习,同时也可供从事单片机开发的科研设计人员参考使用。
本书通过大量的典型实例形式,详细介绍了MSP430单片机各种C语言应用专题程序设计的流程、方法、技巧及设计理念。全书共分31章,其中第1章简单介绍了开发MSP430的C语言的基础知识,第2章至第31章为本书的重点,通过30个典型的C语言专题应用实例,详细介绍了MSP430单片机的各种应用开发和使用技术。实例丰富,代表性强,涉及领域广,每个例子都有具体的硬件电路设计和程序设计,对读者有较高的学习和参考价值。