内容简介
第1章 单片机基础知识
1.1单片机概述
1.2单片机特点
1.3单片机的构成结构
1.3.1单片机外部引脚及其功能
1.3.2单片机内部结构
1.3.3 MCS-51单片机的工作时序
1.4 MCS-51单片机工作方式
1.4.1复位方式
1.4.2程序执行方式
1.4.3省电工作方式
1.5单片机内部资源
1.5.1定时器/计数器基本结构
1.5.2中断系统
1.5.3 MCS-51单片机内部存储结构
1.5.4 MCS-51的串行通信口
第2章 单片机C语言程序设计方法
2.1单片机C语言设计方法及优点
2.1.1 C语言的特点
2.1.2算法概念
2.1.3结构化程序设计方法
2.2 C语言程序基本结构
2.2.1顺序结构
2.2.2选择结构
2.2.3循环结构
2.3 C语言数据类型及表达式
2.3.1 C51基本数据类型
2.3.2常量和变量
2.3.3变量及其存储模式
2.3.4重新定义数据类型
2.3.5 C51中使用变量的原则
2.3.6运算符与表达式
2.3.7关系运算符
2.3.8逻辑运算符
2.3.9位运算符
2.3.10 sizeof运算符
2.4程序流程控制
2.4.1循环控制
2.4.2条件分支控制
2.4.3无条件转移语句(goto)
2.5数组
2.5.1一维数组
2.5.2二维数组
2.5.3字符数组
2.5.4数组的运用
2.5.5数组的存储方式
2.6指针
2.6.1指针的概念
2.6.2指针的定义
2.6.3指针变量的引用
2.6.4数组指针和指向数组的指针变量
2.6.5指针的地址计算
2.6.6 C51中的指针类型
2.7结构体
2.7.1结构体的定义和引用
2.7.2结构体数组
2.7.3指向结构体数据的指针
2.8枚举
2.9共用体
2.10 51单片机内部资源在C51中的定义
2.10.1特殊功能寄存器定义
2.10.2并行接口定义
2.11 C51函数
2.11.1函数的定义
2.11.2函数的调用
2.11.3函数的嵌套和递归调用
2.12模块化编程方法
2.13 C和ASM混合编程
2.14程序的优化方法
2.14.1程序结构的优化
2.14.2代码的优化
第3章LED基本程序实验
3.1实验说明
3.2硬件原理详解
3.3程序设计
3.4实验总结
3.5课后习题
第4章LED PWM调光实验
4.1实验说明
4.2 PWM简介
4.3程序设计
4.4实验总结
4.5课后习题
第5章4位7段数码管动态扫描实验
5.1实验说明
5.2硬件原理详解
5.2.1数码管内部结构及硬件原理图
5.2.2数码管硬件设计方法
5.3单片机驱动数码管的方法
5.4程序设计
5.4.1静态驱动数码管实例
5.4.2动态扫描驱动数码实例
5.5实验总结
5.6课后习题
第6章 按键扫描实验
6.1实验说明
6.2硬件原理
6.2.1硬件原理图
6.2.2按键时序分析
6.3多种类型按键识别方法
6.3.1独立按键识别
6.3.2矩阵键盘识别方法
6.3.3键盘长按、短按识别
6.4实验总结
6.5课后习题
第7章 单片机小电子琴
7.1实验说明
7.2硬件原理详解
7.2.1硬件原理图
7.2.2蜂鸣器工作原理
7.2.3单片机驱动蜂鸣器方法
7.3小电子琴设计实验
7.3.1程序流程
7.3.2程序说明
7.4实验总结
7.5课后习题
第8章LCD1602液晶显示器实验
8.1实验说明
8.2硬件原理详解
8.2.1硬件原理图
8.2.2 LCD1602结构及引脚功能
8.2.3 LCD1602显示指令系统
8.2.4 LCD1602工作时序
8.2.5 LCD1602 8位总线工作方式
8.2.6 LCD1602 4位总线工作方式
8.3 LCD1602初始化程序设计
8.3.1程序流程
8.3.2程序说明
8.4单个字符程序设计
8.4.1程序流程
8.4.2程序说明
8.5一行字符程序设计
8.5.1程序流程
8.5.2程序说明
8.6实验总结
8.7课后习题
第9章LCD3310液晶显示器实验
9.1实验说明
9.2硬件原理详解
9.2.1硬件原理图
9.2.2 LCD3310结构及引脚功能
9.2.3 LCD3310显示指令系统
9.2.4 LCD3310工作时序
9.3 LCD3310初始化程序设计
9.3.1程序流程
9.3.2程序说明
9.4字符显示程序设计
9.4.1字符的取模方式
9.4.2程序流程
9.4.3程序说明
9.5图形程序设计
9.5.1图形的取模方式
9.5.2程序流程
9.5.3程序说明
9.6实验总结
9.7课后习题
第10章LCD12864液晶显示器实验
10.1实验说明
10.2硬件原理详解
10.2.1硬件原理图
10.2.2 LCD128X64结构及引脚功能
10.2.3 LCD128X64显示指令系统
10.2.4 LCD128X64工作时序
10.2.5 LCD128X64 8位总线工作方式
10.2.6 LCD128X64 4位总线工作方式
10.2.7 LCD128X64串行通信工作方式
10.3字符程序设计
10.3.1程序流程
10.3.2程序说明
10.4图形程序设计
10.4.1程序流程
10.4.2程序说明
10.5实验总结
10.6课后习题
第11章 温度检测DS18B20实验
11.1实验说明
11.2硬件原理详解
11.2.1 DS18B20引脚、封装及其特性
11.2.2 DS18B20内部结构
11.2.3 DS18B20的应用电路
11.3单总线工作时序
11.3.1总线复位
11.3.2写数据位
11.3.3读数据位
11.4 DS18B20的操作
11.4.1初始化
11.4.2 ROM操作命令
11.4.3功能命令
11.4.4 DS18B20的命令序列
11.4.5 DS18B20的温度数据结构
11.5 DS18B20的温度检测试验
11.6实验总结
11.7课后练习
第12章 时钟芯片DS1302实验
12.1实验说明
12.2硬件原理图详解
12.2.1硬件原理图
12.2.2 DS1302的引脚与结构
12.2.3 DS1302工作时序
12.2.4 DS1302寄存器
12.3 DS1302时钟程序设计
12.3.1 DS1302的底层驱动
12.3.2 DS1302的各种操作
12.3.3 DS1302的应用演示
12.4实验总结
12.5课后练习
第13章I2C总线存储器24C08
13.1实验说明
13.2 I2C总线介绍
13.2.1 I2C总线的基本原理
13.2.2 I2C协议的基本概念
13.2.3 I2C总线的数据传输
13.3存储器24C08
13.3.1 24C08的引脚及应用原理图
13.3.2 24C08操作方式
13.4 24C08的存储实验
13.5实验总结
13.6课后习题
第14章A/D转换 ADC0832实验
14.1实验说明
14.2硬件原理图详解
14.2.1 ADC0832简介
14.2.2 ADC0832引脚及硬件连接
14.2.3 ADC0832的工作时序
14.3 C51对ADC0832控制的实现
14.3.1程序流程及其程序实现
14.3.2 ADC0832程序转换实验
14.4实验总结
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.4实验总结
15.5课后习题
第16章PS/2键盘接口
16.1实验说明
16.2 PS/2接口硬件
16.2.1接口简介
16.2.2通信协议简介
16.3单片机识别PS/2键盘方法
16.4键盘的编码和解码
16.4.1 PS/2键盘的编码
16.4.2 PS/2键盘的解码
16.4.3键盘按键的显示
16.5实验总结
16.6课后练习
第17章STC单片机内部EEPROM实验
17.1实验说明
17.2 EEPROM介绍
17.2.1 STC89C52内部EEPROM资源
17.2.2 STC89C52内部EEPROM读写方法
17.2.3 STC89C52EEPROM读写实验
17.3实验总结
17.4课后练习
第18章 串口通信试验
18.1实验说明
18.2硬件原理详解
18.2.1硬件原理图
18.2.2串口通信电路工作原理
18.3串口和计算机通信实验
18.3.1程序设计方法
18.3.2实验程序说明
18.4实验总结
18.5课后习题
第19章 综合实验1:定时器全功能LCD1602时钟实验
19.1实验说明
19.2硬件原理详解
19.2.1硬件原理图
19.2.2程序设计要点
19.3时钟设计实验
19.3.1按键读取
19.3.2按键处理
19.3.3时间显示
19.3.4闪动显示
19.3.5闹铃判断与响应
19.3.6数据存储与读取
19.4实验总结
19.5课后习题
第20章 综合实验2:红外遥控万年历实验
20.1实验说明
20.2硬件原理详解
20.2.1硬件原理图
20.2.2程序设计要点
20.3公历到农历转换
20.3.1公历到农历转换的基本原理
20.3.2公历到农历转换程序流程
20.3.3公历转换农历程序说明
20.4红外遥控
20.4.1红外遥控流程图
20.4.2红外遥控程序
20.5实验总结
20.6课后习题
第21章 综合实验3:单片机演奏实验
21.1实验说明
21.2硬件原理详解
21.2.1硬件原理图
21.2.2蜂鸣器演奏歌曲
21.3程序设计
21.3.1乐谱的转换
21.3.2程序流程
21.3.3程序说明
21.4实验总结
21.5课后习题
第22章 综合实验4:基于PC键盘的英文打字机
22.1实验说明
22.2硬件原理详解
22.2.1硬件原理图
22.2.2程序设计要点
22.3英文打字机设计实验
22.3.1实现思路
22.3.2程序实现
22.4实验总结
22.5课后习题
第23章 综合实验5:简易电压数据采集系统
23.1实验说明
23.2硬件电路原理
23.3数据通信协议设计
23.4程序设计
23.4.1主函数程序设计
23.4.2串口中断接收设计
23.5上位机简介
23.6实验总结
23.7课后习题
第24章 综合实验6:基于wJ-V2.0实验板的电池充电器设计
24.1实验说明
24.2硬件原理详解
24.2.1硬件原理图
24.2.2硬件设计原理
24.2.3程序设计要点
24.3电池充电器设计实验
24.3.1程序主流程
24.3.2获取电池内阻
24.3.3计算电压电流及显示
24.4实验总结
24.5课后习题
第25章 综合实验7:步进电机驱动
25.1实验说明
25.2步进电机介绍
25.2.1步进电机的特点
25.2.2步进电机的工作方式
25.3步进电机的驱动方式
25.4步进电机驱动的硬件原理图
25.5单片机驱动步进电机的实现
25.5.1步进电机的方向控制
25.5.2步进电机的速度控制
25.5.3软件驱动步进电机的实现
25.6步进电机驱动实验
25.7实验总结
25.8课后习题
第26章 综合实验8:驱动16 X 16LED显示屏
26.1实验说明
26.2硬件原理及设计
26.2.1 LED显示屏简介
26.2.2显示原理
26.3 16 X 16点阵的软件实现
26.3.1基本点阵的显示
26.3.2 LED点阵的花样显示
26.4实验总结
26.5课后习题
第27章 综合实验9:基于HT9200A的DTMF信号输出设计实验
27.1实验说明
27.2硬件原理详解
27.2.1硬件原理图
27.2.2 DTMF工作原理
27.2.3 HT9200A内部结构
27.2.4 HT9200A工作时序
27.2.5单片机驱动HT9200A方法
27.3 DTMF驱动实验
27.3.1程序流程
27.3.2程序说明
27.4实验总结
27.5课后习题
参考文献