简介
这是一本介绍51单片机及其系统设计项目实践知识的教学用书。书中简要介绍了51单片机的基本结构、系统扩展方法、C51程序设计基础知识、STC单片机及项目用开发板功能、Keil C51及ISP软件应用的相关知识; 重点引入了14个单片机项目,介绍单片机应用系统设计方法,这些项目涵盖了数码管、LCD、A/D和D/A、串行通信、数字钟、温度计、直流电机和步进电机控制及红外数据传输等单片机系统的多个应用领域; 最后列出了4个综合实例项目,给出了详细的基于STC单片机的工业控制系统设计过程。
目录
基础知识篇
单元1单片机概述
1.1单片机的发展
1.2MCS51系列单片机简介
1.3单片机的应用模式和应用领域
1.4如何使用这本书
单元2MCS51单片机内部结构
2.1内部结构与引脚功能
2.1.1内部结构
2.1.2CPU部件及特殊功能寄存器
2.1.2引脚功能
2.2并行I/O(输入/输出)接口
2.2.1输入功能
2.2.2输出功能及负载配置
2.3存储器配置方法
2.3.1程序存储器配置
2.3.2数据存储器配置
2.4时钟电路与CPU时序
2.4.1时钟电路
2.4.2CPU时序
单元3MCS51单片机的系统资源
3.1中断系统和外部中断
3.1.1中断技术概述
3.1.2MCS51单片机中断系统
3.1.3中断服务函数
3.2定时器/计数器
3.2.1定时器/计数器的结构及工作原理
3.2.2定时器/计数器的4种工作方式
3.3串行通信
3.3.1串行通信的概念
3.3.2MCS51单片机的串行口结构
3.3.3MCS51单片机串行通信工作方式
3.3.4MCS51单片机串行口波特率的选择
单元4STC单片机内部资源和PMY单片机开发板简介
4.1STC单片机系统资源和特点
4.1.1STC单片机的特点和选型
4.1.2STC单片机减少对外部电磁辐射的三大措施
4.1.3STC89C52 RC单片机的特殊功能寄存器
4.2PMY单片机开发板介绍
单元5Keil C51程序设计基础
5.1标识符和关键字
5.2C51的数据类型
5.2.1整型(int)
5.2.2实型数据
5.2.3字符型数据(char)
5.2.4指针型(*)
5.2.5bit位标量
5.2.6各类数值型数据之间的混合运算
5.3C51的数据存储类型
5.3.1data区
5.3.2bdata区
5.3.3idata区
5.3.4pdata区
5.3.5xdata区
5.3.6code区
5.3.7C51的存储模式
5.3.8C51对单片机资源的定义
5.4C51的基本运算
5.4.1算术运算符和算术表达式
5.4.2关系运算符
5.4.3逻辑运算符
5.4.4位运算
5.5C51的基本语句
5.5.1条件语句
5.5.2循环语句
5.5.3break、continue和goto语句
5.6C51的函数
5.6.1函数的分类与定义
5.6.2C51的中断服务函数
5.7数组与指针
5.7.1数组
5.7.2指针
5.8C51的预处理命令
5.8.1宏定义
5.8.2文件包含
5.8.3条件编译
单元6Keil C51和STCISP软件的使用
6.1Keil C51软件的使用
6.1.1启动Keil C51软件
6.1.2简单程序的调试
6.2用STCISP软件将HEX文件写入单片机芯片
6.2.1项目开发板和STC下载线的配置
6.2.2将HEX文件写入单片机芯片
基础项目篇
项目1单片机端口输入/输出控制(按键和点灯)
1.1项目目标设计
1.2项目任务
1.3系统板上的硬件连线设置
1.4程序流程图
1.5C语言源程序
1.6系统构成和程序分析
1.6.1项目硬件系统介绍
1.6.2系统时钟发生电路
1.6.3系统复位电路
1.6.4单片机的端口控制方法
1.6.5reg51.h头文件
1.6.6uchar、uint和sbit
1.6.7main主函数
1.6.8延时函数的说明
1.7项目扩展任务
项目2流水灯控制
2.1项目目标设计
2.2项目任务
2.3系统板上的硬件连线
2.4程序流程图
2.5C语言源程序
2.6系统构成和程序分析
2.6.182C55并行扩展接口芯片的特点和引脚介绍
2.6.282C55的内部结构与引脚功能
2.6.382C55的控制字与工作方式
2.6.4开发板上82C55的系统连接和控制方法
2.6.5其他头文件
2.7项目扩展任务
项目3七段数码管和4×4键盘控制
3.1项目目标设计
3.2项目任务
3.3系统板上硬件连线
3.4程序流程图
3.5C语言源程序
3.6系统构成和程序分析
3.6.1ZLG7290接口键盘及LED驱动管理芯片简介
3.6.2对ZLG7290头文件的修改
3.6.3ZLG7290软件包的函数使用说明
3.7项目扩展任务
项目4继电器和直流小电机正反转控制
4.1项目目标设计
4.2项目任务
4.3系统板上硬件连线
4.4程序流程图
4.5C语言源程序
4.6系统构成和程序分析
4.6.1关于键盘与显示头文件的包含说明
4.6.2TA7267BP的功能和直流电机控制
4.6.3继电器的功能
4.6.4开发板的SRD继电器连接
4.6.5外部中断1的程序分析
4.6.6关于中断
4.7项目扩展任务
项目5A/D转换
5.1项目目标设计
5.2项目任务
5.3系统板上硬件连线
5.4程序流程图
5.5C语言源程序
5.6系统构成和程序分析
5.6.1ADC0809数/模转换芯片的特点及引脚介绍
5.6.2A/D转换模块的原理与读取程序分析
5.6.3读取数据的程序处理
5.7项目扩展任务
项目6光电传感器和蜂鸣器控制
6.1项目目标设计
6.2项目任务
6.3系统板上硬件连线
6.4程序流程图
6.5C语言源程序
6.6系统构成和程序分析
6.6.1光电传感器的介绍
6.6.2蜂鸣器简介
6.6.3项目程序分析
6.7项目扩展任务
项目7简易数字信号发生器
7.1项目目标设计
7.2项目任务
7.3系统板上硬件连线
7.4程序流程图
7.5C语言源程序
7.6系统构成和程序分析
7.6.1DAC0832内部引脚功能和受控方式
7.6.2为什么模拟输出电压从参考电压输入端Vref引出
7.6.3确定DAC0832总线地址
7.6.4定时器T0和外部中断1的关系
7.6.5项目结果分析
7.7项目扩展任务
项目81602液晶显示控制
8.1项目目标设计
8.2项目任务
8.3系统板上硬件连线
8.4程序流程图
8.5C语言源程序
8.6系统构成和程序分析
8.6.11602字符型液晶显示器引脚及功能介绍
8.6.21602字符型液晶显示器基本指令及操作时序
8.6.31602字符型液晶显示器的显存及字库
8.6.4项目系统及程序分析
8.7项目扩展任务
项目9串行通信
9.1项目目标设计
9.2项目任务
9.3系统板上硬件连线
9.4程序流程图
9.5C语言源程序
9.6系统构成和程序分析
9.6.1定时器T1的作用
9.6.2串行数据的发送和接收
9.6.3MAX232简介
9.7项目扩展任务
项目10数字钟设计
10.1项目目标设计
10.2项目任务
10.3系统板上硬件连线
10.4程序流程图
10.5C语言源程序
10.6系统构成和程序分析
10.6.1PCF8563时钟芯片功能介绍
10.6.2IIC总线的启动和停止实现
10.6.3IIC总线字节的接收和发送实现
10.6.4IIC总线写和读数据的实现
10.7项目扩展任务
项目11EEPROM器件24C02读写控制
11.1项目目标设计
11.2项目任务
11.3系统板上硬件连线
11.4程序流程图
11.5C语言源程序
11.6系统构成和程序分析
11.6.1EEPROM器件24C02简介
11.6.2关于项目的一些说明
11.6.3如何在项目中实现24C02的读写
11.7项目扩展任务
项目12温度传感器
12.1项目目标设计
12.2项目任务
12.3系统板上硬件连线
12.4程序流程图
12.5C语言源程序
12.6系统构成和程序分析
12.6.1温度传感器DS18B20的介绍
12.6.2温度传感器DS18B20的引脚分配和内部功能
12.6.3温度传感器DS18B20内部存储器分配
12.6.4温度传感器DS18B20的寄生电源和硬件接法
12.6.5温度传感器DS18B20的程序编制方法
12.7项目扩展任务
项目13步进电机控制
13.1项目目标设计
13.2项目任务
13.3系统板上硬件连线
13.4程序流程图
13.5C语言源程序
13.6系统构成和程序分析
13.6.1步进电机的结构和工作原理
13.6.2TA8435H步进电机驱动芯片
13.6.3TA8435H对两相步进电机的细分控制
13.6.4开发板上两相步进电机转速调节的实现
13.6.5开发板上两相步进电机启动控制
13.6.6开发板上两相步进电机正反转控制
13.6.7开发板上两相步进电机的细分控制
13.7项目扩展任务
项目14红外数据传输
14.1项目目标设计
14.2项目任务
14.3系统板上硬件连线
14.4程序流程图
14.5C语言源程序
14.5.1发送程序
14.5.2接收程序
14.6系统构成和程序分析
14.6.1红外线的基本知识
14.6.2MAX3100的引脚及内部功能
14.6.3项目系统功能图及外部中断1的作用
14.6.4通过SPI总线向MAX3100写控制字
14.6.5SPI通信的程序实现
14.6.6红外发送程序分析
14.6.7红外接收程序分析
14.7项目扩展任务
单元1单片机概述
1.1单片机的发展
1.2MCS51系列单片机简介
1.3单片机的应用模式和应用领域
1.4如何使用这本书
单元2MCS51单片机内部结构
2.1内部结构与引脚功能
2.1.1内部结构
2.1.2CPU部件及特殊功能寄存器
2.1.2引脚功能
2.2并行I/O(输入/输出)接口
2.2.1输入功能
2.2.2输出功能及负载配置
2.3存储器配置方法
2.3.1程序存储器配置
2.3.2数据存储器配置
2.4时钟电路与CPU时序
2.4.1时钟电路
2.4.2CPU时序
单元3MCS51单片机的系统资源
3.1中断系统和外部中断
3.1.1中断技术概述
3.1.2MCS51单片机中断系统
3.1.3中断服务函数
3.2定时器/计数器
3.2.1定时器/计数器的结构及工作原理
3.2.2定时器/计数器的4种工作方式
3.3串行通信
3.3.1串行通信的概念
3.3.2MCS51单片机的串行口结构
3.3.3MCS51单片机串行通信工作方式
3.3.4MCS51单片机串行口波特率的选择
单元4STC单片机内部资源和PMY单片机开发板简介
4.1STC单片机系统资源和特点
4.1.1STC单片机的特点和选型
4.1.2STC单片机减少对外部电磁辐射的三大措施
4.1.3STC89C52 RC单片机的特殊功能寄存器
4.2PMY单片机开发板介绍
单元5Keil C51程序设计基础
5.1标识符和关键字
5.2C51的数据类型
5.2.1整型(int)
5.2.2实型数据
5.2.3字符型数据(char)
5.2.4指针型(*)
5.2.5bit位标量
5.2.6各类数值型数据之间的混合运算
5.3C51的数据存储类型
5.3.1data区
5.3.2bdata区
5.3.3idata区
5.3.4pdata区
5.3.5xdata区
5.3.6code区
5.3.7C51的存储模式
5.3.8C51对单片机资源的定义
5.4C51的基本运算
5.4.1算术运算符和算术表达式
5.4.2关系运算符
5.4.3逻辑运算符
5.4.4位运算
5.5C51的基本语句
5.5.1条件语句
5.5.2循环语句
5.5.3break、continue和goto语句
5.6C51的函数
5.6.1函数的分类与定义
5.6.2C51的中断服务函数
5.7数组与指针
5.7.1数组
5.7.2指针
5.8C51的预处理命令
5.8.1宏定义
5.8.2文件包含
5.8.3条件编译
单元6Keil C51和STCISP软件的使用
6.1Keil C51软件的使用
6.1.1启动Keil C51软件
6.1.2简单程序的调试
6.2用STCISP软件将HEX文件写入单片机芯片
6.2.1项目开发板和STC下载线的配置
6.2.2将HEX文件写入单片机芯片
基础项目篇
项目1单片机端口输入/输出控制(按键和点灯)
1.1项目目标设计
1.2项目任务
1.3系统板上的硬件连线设置
1.4程序流程图
1.5C语言源程序
1.6系统构成和程序分析
1.6.1项目硬件系统介绍
1.6.2系统时钟发生电路
1.6.3系统复位电路
1.6.4单片机的端口控制方法
1.6.5reg51.h头文件
1.6.6uchar、uint和sbit
1.6.7main主函数
1.6.8延时函数的说明
1.7项目扩展任务
项目2流水灯控制
2.1项目目标设计
2.2项目任务
2.3系统板上的硬件连线
2.4程序流程图
2.5C语言源程序
2.6系统构成和程序分析
2.6.182C55并行扩展接口芯片的特点和引脚介绍
2.6.282C55的内部结构与引脚功能
2.6.382C55的控制字与工作方式
2.6.4开发板上82C55的系统连接和控制方法
2.6.5其他头文件
2.7项目扩展任务
项目3七段数码管和4×4键盘控制
3.1项目目标设计
3.2项目任务
3.3系统板上硬件连线
3.4程序流程图
3.5C语言源程序
3.6系统构成和程序分析
3.6.1ZLG7290接口键盘及LED驱动管理芯片简介
3.6.2对ZLG7290头文件的修改
3.6.3ZLG7290软件包的函数使用说明
3.7项目扩展任务
项目4继电器和直流小电机正反转控制
4.1项目目标设计
4.2项目任务
4.3系统板上硬件连线
4.4程序流程图
4.5C语言源程序
4.6系统构成和程序分析
4.6.1关于键盘与显示头文件的包含说明
4.6.2TA7267BP的功能和直流电机控制
4.6.3继电器的功能
4.6.4开发板的SRD继电器连接
4.6.5外部中断1的程序分析
4.6.6关于中断
4.7项目扩展任务
项目5A/D转换
5.1项目目标设计
5.2项目任务
5.3系统板上硬件连线
5.4程序流程图
5.5C语言源程序
5.6系统构成和程序分析
5.6.1ADC0809数/模转换芯片的特点及引脚介绍
5.6.2A/D转换模块的原理与读取程序分析
5.6.3读取数据的程序处理
5.7项目扩展任务
项目6光电传感器和蜂鸣器控制
6.1项目目标设计
6.2项目任务
6.3系统板上硬件连线
6.4程序流程图
6.5C语言源程序
6.6系统构成和程序分析
6.6.1光电传感器的介绍
6.6.2蜂鸣器简介
6.6.3项目程序分析
6.7项目扩展任务
项目7简易数字信号发生器
7.1项目目标设计
7.2项目任务
7.3系统板上硬件连线
7.4程序流程图
7.5C语言源程序
7.6系统构成和程序分析
7.6.1DAC0832内部引脚功能和受控方式
7.6.2为什么模拟输出电压从参考电压输入端Vref引出
7.6.3确定DAC0832总线地址
7.6.4定时器T0和外部中断1的关系
7.6.5项目结果分析
7.7项目扩展任务
项目81602液晶显示控制
8.1项目目标设计
8.2项目任务
8.3系统板上硬件连线
8.4程序流程图
8.5C语言源程序
8.6系统构成和程序分析
8.6.11602字符型液晶显示器引脚及功能介绍
8.6.21602字符型液晶显示器基本指令及操作时序
8.6.31602字符型液晶显示器的显存及字库
8.6.4项目系统及程序分析
8.7项目扩展任务
项目9串行通信
9.1项目目标设计
9.2项目任务
9.3系统板上硬件连线
9.4程序流程图
9.5C语言源程序
9.6系统构成和程序分析
9.6.1定时器T1的作用
9.6.2串行数据的发送和接收
9.6.3MAX232简介
9.7项目扩展任务
项目10数字钟设计
10.1项目目标设计
10.2项目任务
10.3系统板上硬件连线
10.4程序流程图
10.5C语言源程序
10.6系统构成和程序分析
10.6.1PCF8563时钟芯片功能介绍
10.6.2IIC总线的启动和停止实现
10.6.3IIC总线字节的接收和发送实现
10.6.4IIC总线写和读数据的实现
10.7项目扩展任务
项目11EEPROM器件24C02读写控制
11.1项目目标设计
11.2项目任务
11.3系统板上硬件连线
11.4程序流程图
11.5C语言源程序
11.6系统构成和程序分析
11.6.1EEPROM器件24C02简介
11.6.2关于项目的一些说明
11.6.3如何在项目中实现24C02的读写
11.7项目扩展任务
项目12温度传感器
12.1项目目标设计
12.2项目任务
12.3系统板上硬件连线
12.4程序流程图
12.5C语言源程序
12.6系统构成和程序分析
12.6.1温度传感器DS18B20的介绍
12.6.2温度传感器DS18B20的引脚分配和内部功能
12.6.3温度传感器DS18B20内部存储器分配
12.6.4温度传感器DS18B20的寄生电源和硬件接法
12.6.5温度传感器DS18B20的程序编制方法
12.7项目扩展任务
项目13步进电机控制
13.1项目目标设计
13.2项目任务
13.3系统板上硬件连线
13.4程序流程图
13.5C语言源程序
13.6系统构成和程序分析
13.6.1步进电机的结构和工作原理
13.6.2TA8435H步进电机驱动芯片
13.6.3TA8435H对两相步进电机的细分控制
13.6.4开发板上两相步进电机转速调节的实现
13.6.5开发板上两相步进电机启动控制
13.6.6开发板上两相步进电机正反转控制
13.6.7开发板上两相步进电机的细分控制
13.7项目扩展任务
项目14红外数据传输
14.1项目目标设计
14.2项目任务
14.3系统板上硬件连线
14.4程序流程图
14.5C语言源程序
14.5.1发送程序
14.5.2接收程序
14.6系统构成和程序分析
14.6.1红外线的基本知识
14.6.2MAX3100的引脚及内部功能
14.6.3项目系统功能图及外部中断1的作用
14.6.4通过SPI总线向MAX3100写控制字
14.6.5SPI通信的程序实现
14.6.6红外发送程序分析
14.6.7红外接收程序分析
14.7项目扩展任务
单片机项目学习实践教程
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!