手把手教你学51单片机-c语言版,手把手教你学51单片机(第2版 C语言版)

第1章如何学习单片机

1.1学什么类型的单片机

1.2学习单片机的最佳方法

1.3单片机学习的准备工作

1.4单片机开发软件环境搭建

1.5Keil基本概况介绍

1.6答读者问

第2章点亮你的LED

2.1单片机的内部资源

2.2单片机最小系统

2.2.1电源

2.2.2晶振

2.2.3复位电路

2.3LED小灯

2.4程序代码编写

2.4.1特殊功能寄存器和位定义

2.4.2新建一个工程

2.4.3编写点亮小灯的程序

2.5程序下载

2.6练习题

第3章硬件基础知识学习

3.1电磁干扰

3.2去耦电容的应用

3.3三极管在数字电路中的应用

3.3.1三极管的初步认识

3.3.2三极管的原理

3.3.3三极管的应用

3.474HC138三八译码器的应用

3.5LED闪烁程序

3.6练习题

第4章C语言基础以及流水灯的实现

4.1二进制、十进制和十六进制

4.2C语言变量类型和范围

4.3C语言基本运算符

4.4for循环语句

4.5while循环语句

4.6函数的简单介绍

4.7Keil软件延时

4.8流水灯程序

4.9练习题

第5章定时器与数码管基础

5.1逻辑电路与逻辑运算

5.2定时器的学习

5.2.1定时器的初步认识

5.2.2定时器的寄存器

5.2.3定时器的应用

5.3数码管的学习

5.3.1数码管的基本介绍

5.3.2数码管的真值表

5.3.3数码管的静态显示

5.4练习题

第6章中断与数码管动态显示

6.1C语言的数组

6.1.1数组的基本概念

6.1.2数组的声明

6.1.3数组的初始化

6.1.4数组的使用和赋值

6.2if语句

6.3switch语句

6.4数码管的动态显示

6.4.1动态显示的基本原理

6.4.2数码管显示消隐

6.5单片机中断系统

6.5.1中断的产生背景

6.5.2定时器中断的应用

6.5.3中断的优先级

6.6练习题

第7章变量进阶与点阵LED

7.1变量的作用域

7.1.1局部变量

7.1.2全局变量

7.2变量的存储类别

7.3点阵的初步认识

7.4点阵的图形显示

7.5点阵的动画显示

7.5.1点阵的纵向移动

7.5.2点阵的横向移动

7.6练习题

第8章函数进阶与按键

8.1单片机最小系统

8.1.1电源

8.1.2晶振

8.1.3复位电路

8.2函数的调用

8.3函数的形式参数和实际参数

8.4按键

8.4.1独立按键

8.4.2矩阵按键

8.4.3独立按键的扫描

8.4.4按键消抖

8.4.5矩阵按键的扫描

8.5简易加法计算器

8.6练习题

第9章步进电机与蜂鸣器

9.1单片机I/O口的结构

9.2上下拉电阻

9.328BYJ48型步进电机详解与实例

9.3.1电机的分类

9.3.228BYJ48型步进电机原理详解

9.3.3让电机转起来

9.3.4转动精度与深入分析

9.3.5编写实用程序的基础

9.3.6包含综合应用的实用程序

9.4蜂鸣器

9.5练习题

第10章实例练习与经验积累

10.1数字秒表实例

10.1.1不同数据类型间的相互转换

10.1.2定时时间精准性调整

10.1.3字节操作修改位的技巧

10.1.4数码管扫描函数算法改进

10.1.5秒表程序

10.2PWM知识与实例

10.3交通灯实例

10.451单片机RAM区域的划分

10.5长短按键的应用

10.6练习题

第11章UART串口通信

11.1串行通信的初步认识

11.2RS232通信接口

11.3USB转串口通信

11.4I/O口模拟UART串口通信

11.5UART串口通信的基本应用

11.5.1通信的三种基本类型

11.5.2UART模块介绍

11.5.3UART串口程序

11.6通信实例与ASCII码

11.7练习题

第12章指针基础与1602液晶的初步认识

12.1指针的概念与指针变量的声明

12.1.1变量的地址

12.1.2指针变量的声明

12.1.3指针的简单示例

12.2指向数组元素的指针

12.2.1指向数组元素的指针和运算法则

12.2.2指向数组元素指针的实例

12.3字符数组和字符指针

12.3.1常量和符号常量

12.3.2字符和字符串数组实例

12.41602液晶的认识

12.4.11602液晶的硬件接口介绍

12.4.21602液晶的读写时序介绍

12.4.31602液晶的指令介绍

12.4.41602液晶简单实例

12.5练习题

第13章1602液晶与串口的应用实例

13.1通信时序解析

13.21602整屏移动

13.3多.c文件的初步认识

13.4计算器实例

13.5串口通信机制和实用的串口例程

13.6练习题

第14章I2C总线与E2PROM

14.1I2C时序初步认识

14.2I2C寻址模式

14.3E2PROM的学习

14.3.1E2PROM单字节读写操作时序

14.3.2E2PROM多字节读写操作时序

14.3.3E2PROM的页写入

14.4I2C和E2PROM的综合实验学习

14.5练习题

第15章实时时钟DS1302

15.1BCD码的概念

15.2SPI时序初步认识

15.3实时时钟芯片DS1302

15.3.1DS1302的特点

15.3.2DS1302的硬件信息

15.3.3DS1302寄存器介绍

15.3.4DS1302通信时序介绍

15.3.5DS1302的BURST模式

15.4复合数据类型

15.4.1结构体数据类型

15.4.2共用体数据类型

15.4.3枚举数据类型

15.5电子钟实例

15.6练习题

第16章红外通信与DS18B20温度传感器

16.1红外线的基本原理

16.2红外遥控通信原理

16.3NEC协议红外遥控器

16.4温度传感器DS18B20

16.5练习题

第17章模数转换A/D与数模转换D/A

17.1A/D和D/A的基本概念

17.2A/D的主要指标

17.3PCF8591的硬件接口

17.4PCF8591的软件编程

17.5A/D差分输入信号

17.6D/A输出

17.7简易信号发生器实例

17.8练习题

第18章RS485通信与Modbus协议

18.1RS485通信

18.2Modbus通信协议介绍

18.2.1Modbus协议特点

18.2.2RTU协议帧数据

18.3Modbus多机通信例程

18.4练习题

第19章实践项目: 多功能电子钟

19.1类型说明

19.2头文件

19.3条件编译

19.4项目实战

19.4.1项目需求分析

19.4.2程序结构规划

19.4.3程序代码编写

19.5练习题

第20章扩展实例: 超声波测距*

20.1超声波测距原理

20.2超声波测距硬件准备

20.3超声波测距并在数码管上显示

20.4优化超声波测距的精度

附录A单片机开发常用工具

A.1万用表

A.1.1万用表的功能及类型

A.1.2万用表的使用方法

A.2示波器

A.2.1示波器的功能及类型

A.2.2示波器的使用

A.3逻辑分析仪

A.3.1什么是逻辑分析仪

A.3.2逻辑分析仪的参数

A.3.3逻辑分析仪的使用

A.3.4应用实例——分析UART、I2C、SPI

A.3.5数字电路应用中逻辑分析仪比之示波器的优势

A.4练习题

附录BASCII码字符表

附录CC语言运算符及优先级

附录DKST51开发板原理图429

你可能感兴趣的