编辑推荐

51单片机C语言程序设计教程》从开发的角度,从零开始手把手地带大家学习单片机技术。
基于单片机的*小系统来介绍单片机的基础知识。
以单片机应用开发为主导,循序渐进地讲解单片机常用模块的使用及其编程方法。
通过实践深入理解数字电路的概念、C语言的基本知识以及C语言如何同实际电路发生联系。
讲解单片机应用的扩展知识好编程技巧,单片机项目的开发流程及其方法。
51单片机C语言程序设计教程》配有课件、示例代码和19个教学视频。

内容简介

51单片机C语言程序设计教程》遵循由浅入深、循序渐进的原则,讲解单片机开发经典案例。《51单片机C语言程序设计教程》以YL51单片机开发板为平台,通过案例逐个讲解开发板上各个器件模块的使用及其编程方法,包括单片机*小系统、数码管显示原理、中断与定时器、数模\模数转换工作原理、LCD液晶显示、串行口通信、步进电机驱动原理、PWM脉宽调制与直流电机等内容。

作者简介

王云,从事单片机研发工作多年,具有丰富的单片机、嵌入式系统的软件和硬件研发经验;曾研发自动控制器、数据采集仪等多款产品,现从事单片机培训工作,主讲了系列视频课程——云龙51单片机实训课程。该课程因其通俗易懂的语言、现场互动的教学风格获得了读者的一致好评,在网上广为流传。

目录

第1章初步认识单片机1
1.1单片机的特点及应用2
1.2应该学什么样的单片机2
1.3如何学好单片机2
1.4学前准备和单片机学习开发环境的建立3
1.5课后作业3

第2章单片机最小系统及Keil软件介绍4
2.1单片机概述5
2.1.1各大公司MCS51单片机简介5
2.1.2单片机标号信息及封装类型5
2.1.3单片机引脚功能介绍9
2.2单片机最小系统12
2.2.1电源电路13
2.2.2时钟振荡电路13
2.2.3复位电路14
2.3如何点亮一个发光二极管14
2.3.1硬件电路构成14
2.3.2Keil建立工程文件16
2.3.3编写点亮一个发光二极管的C程序代码20
2.3.4程序下载、观察结果23
2.3.5知识点讲解25
2.4课后作业28

第3章C51基础知识及流水灯设计29
3.1C51的特点及优势30
3.2C51数据类型30
3.2.1C51的基本数据类型30
3.2.2C51的扩充数据类型31
3.2.3特殊功能寄存器声明及位定义32
3.3C51的基本运算33
3.3.1二进制与十六进制33
3.3.2C51赋值运算符及其表达式34
3.3.3C51算术运算符及其表达式35
3.3.4C51关系运算符及其表达式35
3.3.5C51逻辑运算符及其表达式36
3.3.6C51位操作及其表达式36
3.4C51程序的基本语句37
3.4.1if选择语句37
3.4.2while循环语句39
3.4.3for循环语句40
3.4.4switch/case多分支选择语句41
3.4.5do…while循环语句42
3.5C51函数43
3.5.1函数的定义43
3.5.2函数的声明及调用44
3.5.3变量的作用域45
3.6C51应用编程实例(流水灯设计)46
3.6.1闪烁的LED47
3.6.2花样流水灯50
3.7课后作业52

第4章数码管显示原理及静态显示53
4.1数码管的结构和显示原理54
4.2数码管在YL51开发板上的应用55
4.3数组的定义及调用方法58
4.3.1数组的定义方式58
4.3.2数组初始化赋值及调用59
4.3.3应用举例59
4.4课后作业62

第5章中断与定时器63
5.1单片机中断64
5.1.1中断的概念64
5.1.2MCS-51中断系统的结构65
5.1.3单片机中断应用举例68
5.2定时器/计数器69
5.2.1定时器/计数器的结构69
5.2.2定时/计数器应用举例72
5.3课后作业73

第6章数码管动态显示与定时器应用74
6.1数码管动态显示的基本原理75
6.2实例讲解数码管动态显示原理75
6.3课后作业85

第7章按键学习:独立按键和矩阵按键86
7.1键盘的分类87
7.2独立键盘检测原理及应用87
7.3矩阵键盘检测原理及应用91
7.4课后作业94

第8章数模转换(D/A)工作原理及应用95
8.1D/A转换的工作原理及分类96
8.1.1权电阻解码网络D/A转换器96
8.1.2T型电阻解码网络D/A转换器97
8.1.3D/A转换器的主要性能指标99
8.2DAC0832芯片及其与单片机接口99
8.2.1DAC0832芯片简介99
8.2.2DAC0832芯片工作方式101
8.3课后作业105

第9章模数转换(A/D)工作原理及应用106
9.1A/D转换的工作原理及分类107
9.1.1A/D转换的一般过程107
9.1.2A/D转换器分类108
9.1.3A/D转换器的主要技术指标111
9.2ADC0804芯片及其应用112
9.2.1ADC0804芯片简介112
9.2.2ADC0804芯片应用112
9.3课后作业117

第10章LCD液晶显示原理及应用118
10.1LCD液晶基础知识119
10.21602液晶介绍与实例分析120
10.2.11602液晶硬件接口介绍120
10.2.21602液晶时序操作介绍121
10.2.31602液晶实例演示125
10.312864液晶介绍与实例分析131
10.3.112864液晶硬件接口介绍131
10.3.212864液晶时序操作介绍132
10.3.312864液晶实例演示138
10.4课后作业141

第11章串行口通信原理及应用142
11.1通信基础知识143
11.1.1并行通信143
11.1.2串行通信143
11.2串行通信的分类144
11.2.1异步通信144
11.2.2同步通信145
11.2.3串行通信方式145
11.3串行通信接口标准146
11.3.1RS232接口146
11.3.2RS232串行口通信电路147
11.3.3USB转串行口通信电路147
11.480C51串行口的结构148
11.4.180C51串行口基本工作原理148
11.4.280C51串行口的控制寄存器149
11.4.380C51串行口的工作方式151
11.5波特率的计算154
11.6实例讲解155
11.7课后作业160

第12章I2C总线原理和模块化编程方法161
12.1I2C总线概述162
12.1.1I2C总线简介162
12.1.2I2C器件接口162
12.2I2C总线的数据传送163
12.2.1I2C总线数据操作有效性规定163
12.2.2I2C总线的数据传送格式163
12.3单片机的普通I/O口模拟I2C通信165
12.3.1I2C总线信号时序分析165
12.3.2I2C总线基本操作时序分析167
12.4I2C器件AT24C02的应用169
12.4.1I2C器件AT24C02简介169
12.4.2I2C器件AT24C02的读/写时序170
12.4.3用模块化编程对AT24C02进行操作173
12.5课后作业179

第13章红外通信原理及应用180
13.1红外线简介181
13.1.1红外线181
13.1.2红外信号发生电路181
13.1.3红外信号接收电路181
13.2红外通信原理182
13.2.1红外基带信号发送协议182
13.2.2红外基带信号调制184
13.2.3红外信号解调185
13.3红外解码实例介绍186
13.4课后作业190

第14章DS18B20测温原理及应用191
14.1DS18B20简介192
14.1.1DS18B20封装及引脚说明192
14.1.2功能特性192
14.1.3两种供电方式193
14.2DS18B20内部结构及功能193
14.2.1DS18B20内部结构193
14.2.2功能介绍194
14.3单总线简介196
14.3.1单总线概述196
14.3.2单总线信号类型196
14.4DS18B20时序过程198
14.4.1单总线初始化198
14.4.2ROM操作命令198
14.4.3存储器操作命令198
14.4.4数理处理199
14.5DS18B20应用实例199
14.6课后作业203

第15章步进电机驱动原理及应用204
15.1步进电机概述205
15.1.1步进电机的认识205
15.1.2步进电机分类205
15.1.3步进电机的主要技术指标205
15.2步进电机工作原理206
15.2.1步进电机的驱动206
15.2.2步进电机的励磁方式207
15.328BYJ-48步进电机应用208
15.3.128BYJ-48步进电机参数209
15.3.228BYJ-48步进电机驱动电路209
15.3.3步进电机应用实例211
15.4课后作业213

第16章LED点阵驱动原理及应用214
16.1LED点阵简介215
16.1.1认识8×8点阵模块215
16.1.28×8点阵与单片机连接217
16.2点阵的显示原理217
16.2.1点阵的静态显示218
16.2.2点阵的动态显示219
16.3点阵取模软件介绍222
16.3.1使用演示223
16.3.2术语介绍225
16.3.3应用举例225
16.4课后作业228

第17章DS1302实时时钟与SPI通信原理229
17.1DS1302简介230
17.1.1功能特点230
17.1.2封装及引脚230
17.1.3DS1302的主要性能指标230
17.1.4DS1302与单片机连接电路231
17.2DS1302的寄存器及片内RAM231
17.2.1与日历、时钟相关寄存器232
17.2.2BCD码简介233
17.2.3控制寄存器233
17.2.4写保护寄存器234
17.2.5充电寄存器234
17.3DS1302数据读写时序及SPI通信原理235
17.3.1单字节写操作235
17.3.2单字节读操作235
17.4DS1302实例操作236
17.5课后作业241

第18章蜂鸣器与继电器驱动原理及应用242
18.1蜂鸣器简介243
18.1.1蜂鸣器分类243
18.1.2有源蜂鸣器和无源蜂鸣器的特点243
18.1.3蜂鸣器选用基本要点244
18.1.4驱动电路244
18.2蜂鸣器应用实例244
18.3继电器简介245
18.3.1继电器工作原理246
18.3.2继电器常用参数246
18.3.3继电器的控制电路247
18.4继电器应用实例248
18.5课后作业252

第19章PWM脉宽调制与直流电机调速253
19.1PWM简介254
19.1.1脉冲宽度调制(PWM)原理254
19.1.2占空比的概念254
19.2PWM应用实例255
19.2.1直流电机介绍255
19.2.2直流电机PWM调速原理257
19.3课后作业261

第20章单片机系统设计——多功能万年历262
20.1项目功能概述263
20.2原理图构建263
20.3程序代码设计265

第21章常用电子制作工具289
21.1焊接工具及材料290
21.1.1电烙铁290
21.1.2焊锡丝291
21.1.3辅助焊接工具291
21.2测量工具292
21.2.1万用表292
21.2.2示波器295

附录300
附录1C语言优先级详细列表301
附录2ASCII表303

参考文献304

其他推荐