第1章 带你认识51单片机 1
1.1单片机的传奇三十年 1
1.2单片机初学者疑问 3
1.3 8051单片机的封装和引脚 4
1.4 8051单片机的内部结构 7
1.4.1 CPU 8
1.4.2存储器结构 10
1.4.3内部重要模块 12
1.4.4复位和周期 12
1.5学习单片机的必备基础知识 13
1.5.1数制 13
1.5.2数制间转换 15
1.5.3逻辑电平 16
1.5.4二进制的逻辑运算 16
1.6适合初学者学习的51单片机 18
1.7实验平台简介 19
1.7.1 HOT-51单片机实验板简介 19
1.7.2 HOT-51单片机实验板板载资源 20
第2章 Keil软件使用和Keil C51介绍 22
2.1 Keil入门 22
2.1.1 Keil工程的创建 22
2.1.2编写程序 24
2.1.3用Keil进行调试/仿真程序 27
2.2 Keil C51的基本知识 34
2.2.1常量与变量 34
2.2.2 Keil C51的数据类型 35
2.2.3 C51的运算符 38
2.2.4 C51的基础语句 42
2.2.5数组 46
2.2.6指针 48
2.2.7 C51的中断子程序 49
第3章 LED 50
3.1 LED简介 50
3.2实例——手把手讲解LED 53
3.2.1同时点亮多个LED 54
3.2.2单灯闪烁 57
3.2.3花样灯闪烁 58
3.2.4 12个LED灯顺时针点亮 59
3.2.5交通灯实验 61
第4章 数码管 63
4.1怎样才能点亮数码管 63
4.2数码管的驱动电路 66
4.2.1数码管的基本驱动电路 66
4.2.2驱动8位数码管 67
4.3实例——手把手讲解数码管 69
4.3.1共阴极数码管静态显示 69
4.3.2共阴极数码管动态显示 71
4.3.3数码管锁存实验 73
4.3.4数码管显示数据自加 75
4.3.5数码管显示英文并滚动显示 76
第5章 LED点阵 79
5.1认识LED点阵 79
5.2实例——手把手讲解8×8点阵 82
5.2.1在8×8LED点阵上显示“心”型 82
5.2.2在8×8LED点阵上从0显示到9 85
5.2.3在8×8LED点阵上显示箭头形状并移动 86
5.3 16×16LED点阵模块 88
5.3.1 16×16LED点阵模块电路图 88
5.3.2实例——手把手讲解16×16LED点阵模块显示汉字 92
第6章 按键 97
6.1按键简介 97
6.2实例——手把手讲解独立按键 98
6.2.1独立按键控制LED灯和8×8 LED点阵显示 99
6.2.2独立按键控制数码管显示数据加减 103
6.2.3独立按键的多种击键方式 105
6.3实例——手把手讲解矩阵键盘 109
第7章 MCS-51中断系统 114
7.1 MCS-51的中断系统简介 114
7.2中断允许寄存器IE 116
7.3中断优先级寄存器IP 117
7.4定时/计数器控制寄存器TCON 118
7.5外部中断系统的初始化过程 119
7.6实例——手把手讲解外部中断INT0和INT1的使用 120
第8章 MCS-51定时/计数器 125
8.1定时/计数器简介 125
8.1.1定时/计数器的寄存器 127
8.1.2定时/计数器的4种工作方式 128
8.1.3计数寄存器初值的计算 130
8.1.4定时/计数器的初始化步骤 131
8.2 AT89S52的定时/计数器T2 131
8.3实例——手把手讲解定时/计数器 135
8.3.1定时器0的工作方式0 135
8.3.2定时器0的工作方式1 138
8.3.3定时器0的工作方式2 139
8.3.4定时器2的使用 141
8.3.5用定时器设计时钟程序 142
第9章 MCS-51的串行通信 148
9.1串行通信基础 148
9.2 MCS-51的串行口 152
9.2.1串行口控制寄存器SCON 153
9.2.2串行口的工作方式 154
9.2.3串行通信4种方式波特率的计算 157
9.3实例——手把手讲解串口通信 158
9.3.1串行口方式0发送数据给74HC164控制LED灯 158
9.3.2串行口方式1发送数据到计算机 161
9.3.3串行口方式1从计算机接收数据 166
9.3.4两个单片机之间进行串行口通信 168
第10章 单片机的看门狗和电源控制 177
10.1单片机看门狗 177
10.2实例——手把手讲解看门狗 178
10.2.1 AT89S52的看门狗 178
10.2.2 STC89C52RC的看门狗 180
10.3单片机的电源控制 181
10.4实例——手把手讲解电源控制 182
第11章 1602液晶 185
11.1 1602液晶简介 185
11.2 1602液晶的指令 187
11.3 1602液晶时序 188
11.4实例——手把手讲解1602液晶显示字符 189
第12章 12864液晶 196
12.1 12864液晶简介 196
12.2 12864液晶指令 197
12.2.1基本指令集 198
12.2.2扩充指令集 200
12.3 12864液晶读/写时序 201
12.4显示坐标关系 202
12.5实例——手把手讲解12864液晶 203
12.5.1并行方式控制12864显示 203
12.5.2串行方式控制12864显示 210
第13章 存储芯片AT24C02 216
13.1 AT24C02简介 216
13.2 AT24C02内部结构 217
13.3 AT24C02基本时序分析(12C协议) 218
13.4 AT24C02的地址传送和数据传送基本规则 221
13.5读/写操作时序 222
13.6实例——手把手讲解控制AT24C02进行数据的存取 223
第14章 温度传感器DS18B20 233
14.1 DS181320简介 233
14.2 DS18B20的内部结构 234
14.3 DS18B20的命令 236
14.4工作时序分析(1-WIRE协议) 238
14.5实例——手把手讲解利用DS18B20测温度并在数码管显示 240
第15章 时钟芯片DS1302 246
15.1 DS1302简介 246
15.2 DS1302的寄存器 248
15.3 DS1302的控制字和数据读/写 250
15.4实例——手把手讲解控制DS1302在1602上显示日期和时间 251
第16章 模/数(数/模)转换芯片PCF8591 258
16.1 PCF8591简介 258
16.2 PCF8591芯片控制 260
16.2.1 PCF8951的地址 260
16.2.2 PCF8951的控制字 260
16.2.3 A/D转换 261
16.2.4 D/A转换 262
16.2.5参考电压和振荡器 263
16.2.6 PCF8591芯片读/写时序 263
16.3实例——手把手讲解PCF8591 264
第17章 电机 269
17.1直流电机 269
17.1.1直流电机简介 269
17.1.2直流电机的结构和工作原理 269
17.1.3直流电机的参数 271
17.1.4如何控制直流电机 271
17.1.5实例——手把手讲解利用PWM驱动直流电机调速 273
17.2步进电机 276
17.2.1步进电机简介 276
17.2.2步进电机的技术指标 278
17.2.3步进电机的主要特性和特点 279
17.2.4步进电机的工作原理 279
17.2.5实例——手把手讲解步进电机 281
17.3舵机 289
17.3.1舵机简介 289
17.3.2实例——手把手讲解舵机 290
第18章 红外线发射和接收 294
18.1红外线简介 294
18.2实例——手把手讲解红外线发射与接收 295
18.3实例——手把手讲解红外线避障 299
18.4红外线遥控解码实验 303
18.4.1 NEC编码简介 303
18.4.2红外遥控器解码 304
18.5实例——手把手讲解红外线遥控器解码 305
第19章 2.4 GHz无线通信芯nRF24L01 310
19.1 nRF24L01芯片简介 310
19.2 nRF24L01的功能描述 311
19.2.1工作模式 311
19.2.2 nRF24L01收发模式 312
19.2.3收发过程中的重要概念 314
19.2.4配置字 316
19.2.5 nRF24L01的一帧数据形式 320
19.3实例——手把手讲解nRF24L01 321
第20章 超声波测距 330
20.1 超声波测距原理 330
20.1.1超声波简介 330
20.1.2超声波测距原理 331
20.2超声波测距电路图 332
20.2.1常用发射和接收电路 332
20.2.2超声波测距模块 334
20.3实例——手把手讲解超声波测距 336
第21章 蜂鸣器和语音芯片 340
21.1蜂鸣器 340
21.1.1蜂鸣器的分类 340
21.1.2蜂鸣器驱动电路 341
21.2实例——手把手讲解蜂鸣器每隔ls间断发声 342
21.3语音芯片ISD4004 343
21.3.1 ISD4004芯片简介 344
21.3.2单片机利用SPI协议控制ISD4004芯片 346
21.4实例——手把手讲解ISD4004做公交报站系统 350
第22章 FM收音机 359
22.1 TEA5767芯片简介 359
22.2 TEA5767芯片的总线接口和控制寄存器 363
22.3 FM收音机模块 367
22.4实例——手把手讲解TEA5767芯片播放收音机电台 368
第23章 彩色液晶屏 377
23.1彩色液晶屏简介 377
23.2彩色液晶屏的种类 378
23.3彩色液晶屏的参数 379
23.4 TFT液晶的构成 380
23.5 TFT液晶的显示原理 382
23.6 ILI9341驱动芯片 383
23.6.1 IL19341驱动芯片简介 383
23.6.2 ILI9341驱动芯片引脚 384
23.6.3基本操作时序 385
23.6.4显示部分原理 387
23.6.5指令讲解 390
23.7触摸芯片XPT2046 394
23.8实例——手把手讲解2.4寸TFT彩屏液晶 397
参考文献 420