第1篇 入门篇 2
第1章 基础知识必备 2
1.1 单片机概述 2
1.1.1 什么是单片机 2
1.1.2 单片机标号信息及封装类型 2
1.1.3 单片机能做什么 5
1.1.4 如何开始学习单片机 6
1.2 51单片机外部引脚介绍 7
1.3 电平特性 10
1.4 二进制和十六进制 11
1.4.1 二进制 11
1.4.2 十六进制 12
1.5 二进制的逻辑运算 13
1.6 单片机的C51基础知识介绍 14
1.6.1 利用C语言开发单片机的优点 14
1.6.2 C51中的基本数据类型 14
1.6.3 C51数据类型扩充定义 15
1.6.4 C51中常用的头文件 16
1.6.5 C51中的运算符 16
1.6.6 C51中的基础语句 17
1.6.7 学习单片机应该掌握的主要内容 17
第2章 Keil软件使用及流水灯设计 18
2.1 Keil工程建立及常用按钮介绍 18
2.1.1 Keil工程的建立 18
2.1.2 常用按钮 21
2.2 点亮第一个发光二极管 22
2.3 while语句 32
2.4 for语句及简单延时语句 33
2.5 Keil仿真及延时语句的精确计算 35
2.6 不带参数函数的写法及调用 39
2.7 带参数函数的写法及调用 40
2.8 利用C51库函数实现流水灯 41
第2篇 内外部资源操作篇 46
第3章 数码管显示原理及应用实现 46
3.1 数码管显示原理 46
3.2 数码管静态显示 47
3.3 数码管动态显示 51
3.4 中断概念 53
3.5 单片机的定时器中断 57
第4章 键盘检测原理及应用实现 65
4.1 独立键盘检测 65
4.2 矩阵键盘检测 70
第5章 A/D和D/A工作原理 78
5.1 模拟量与数字量概述 78
5.2 A/D转换原理及参数指标 79
5.3 ADC0804工作原理及其实现方法 86
5.4 D/A转换原理及其参数指标 91
5.5 DAC0832工作原理及实现方法 97
5.6 DAC0832输出电流转换成电压的方法 101
第6章 串行口通信原理及操作流程 103
6.1 并行与串行基本通信方式 103
6.2 RS-232电平与TTL电平的转换 105
6.3 波特率与定时器初值的关系 108
6.4 51单片机串行口结构描述 111
6.5 串行口方式1编程与实现 113
6.6 串行口打印在调试程序中的应用 116
第7章 通用型1602/12232/12864液晶操作方法 123
7.1 液晶概述 123
7.2 常用1602液晶操作实例 124
7.3 常用12232液晶操作实例 130
7.4 常用12864液晶操作实例 139
第8章 I2C总线AT24C02芯片应用 148
8.1 I2C总线概述 148
8.2 单片机模拟I2C总线通信 150
8.3 E2PROM AT24C02与单片机的通信实例 153
第9章 基础运放电路专题 160
9.1 运放概述及参数介绍 160
9.2 反相放大器 161
9.3 同相放大器 162
9.4 电压跟随器 163
9.5 加法器 163
9.6 差分放大器 163
9.7 微分器 164
9.8 积分器 165
9.9 比较器 165
第3篇 提高篇 170
第10章 定时器/计数器应用提高 170
10.1 方式0应用 170
10.2 方式2应用 171
10.3 方式3应用 173
10.4 52单片机定时器2介绍 175
10.5 计数器应用 180
第11章 串行口应用提高 184
11.1 方式0应用 184
11.2 方式2和方式3应用 186
11.3 单片机双机通信 188
11.4 单片机多机通信 195
第12章 指针 203
12.1 指针和指针变量 203
12.1.1 内存单元、地址和指针 203
12.1.2 指针变量的定义、赋值与引用 204
12.2 指针变量的运算 205
12.3 指针与数组 207
12.3.1 指针与一维数组 207
12.3.2 指针与多维数组 209
12.4 指针与函数 210
12.4.1 指针作为函数的参数 210
12.4.2 指向函数的指针 212
12.4.3 指针型函数 213
12.5 指针与字符串 214
12.5.1 字符串的表达形式 214
12.5.2 字符指针作为函数参数 215
12.5.3 使用字符指针与字符数组的区别 216
12.6 指针数组与命令行参数 216
12.6.1 指针数组的定义和使用 216
12.6.2 指向指针的指针 218
12.6.3 指针数组作为main()函数的命令行参数 219
12.7 指针小结 220
12.7.1 指针概念综述 220
12.7.2 指针运算小结 221
12.7.3 等价表达式 222
12.8 C51中指针的使用 223
12.8.1 指针变量的定义 223
12.8.2 指针应用 224
第4篇 实战篇 228
第13章 利用51单片机的定时器设计一个时钟 228
13.1 如何从矩阵键盘中分解出独立按键 228
13.2 原理图分析 229
13.3 实例讲解 230
第14章 用DS12C887芯片设计高精度时钟 238
14.1 时钟芯片概述 238
14.2 DS12C887时钟芯片介绍 238
14.3 如何用TX-1C实验板扩展本实验 243
14.4 原理图分析 244
14.5 实例讲解 245
第15章 用DS18B20温度传感器设计温控系统 255
15.1 温度传感器概述 255
15.2 DS18B20温度传感器介绍 256
15.3 实例讲解 261
第16章 太阳能充/放电控制器 267
16.1 控制器原理图分析 268
16.2 控制器板上元件介绍 271
16.3 实例讲解 273
第17章 VC、VB(MSCOMM控件)与单片机通信实现温度显示 289
17.1 VC MSCOMM控件与单片机通信实现温度显示 289
17.2 VB MSCOMM控件与单片机通信实现温度显示 295
第18章 单片机内部ADC做电容感应触摸按键 299
18.1 应用单片机内部ADC做电容感应触摸按键原理 299
18.2 实例参考程序 300
第5篇 拓展篇 306
第19章 用Altium Designer 14绘制电路图 306
19.1 绘制电路板概述 306
19.2 建立工程 307
19.3 制作元件库 311
19.4 添加封装及制作PCB封装库 314
19.5 项目编译及生成PCB 317
19.6 布线电气特性设置 320
19.7 自动布线和手动布线 324
第20章 常用电子元器件 327
20.1 二极管 327
20.2 电容 330
20.3 场效应管 335
20.4 光耦 338
20.5 蜂鸣器 340
20.6 继电器 341
20.7 自恢复保险 345
20.8 瞬态电压抑制器 346
20.9 晶闸管(可控硅) 349
20.10 电荷泵 350
第21章 直流稳压电源专题 352
21.1 整流电路 352
21.2 滤波电路 354
21.3 稳压电路 356
21.4 集成稳压模块的使用 358
21.5 串联开关型稳压电源 363
第22章 运放扩展专题 365
22.1 有源滤波器 365
22.2 仪表放大器 367
22.3 程控增益放大器 368
22.4 自动增益控制放大器 370
22.5 运算放大器的选型 372
第23章 STC8系列单片机介绍 374
23.1 STC8单片机的优势 374
23.2 ADC数模转换 374
23.3 PCA/CCP/PWM应用 376
23.4 同步串行外设接口SPI 379
23.5 I2C总线 383
第24章 电机专题 388
24.1 直流电机原理及应用 388
24.2 步进电机原理及应用 394
24.3 舵机原理及其应用 405
第25章 基于Wi-Fi的物联网应用 411
25.1 物联网系统架构 411
25.2 常用的物联网无线传输技术 412
25.3 IoT云平台 413
25.4 基于Wi-Fi的嵌入式设备入网方式 416
25.5 微软Azure系列IoT物联网开发板 421
附录A 天祥电子开发实验板简介 423
A.1 TX-1C51单片机开发板 423
A.2 AVR单片机开发板 424
A.3 PIC单片机开发板 425
A.4 TX-2440A ARM9嵌入式系统开发板 426
A.5 TX-51STAR单片机综合实验箱 427
附录B 北京海克智动主要产品简介 429
参考文献 432