欢迎访问学兔兔,学习、交流 分享 !

返回首页 |

STC单片机C语言程序设计 8051体系架构、编程实例及项目实战 何宾编著 2018年版

收藏
  • 大小:103.83 MB
  • 语言:中文版
  • 格式: PDF文档
  • 阅读软件: Adobe Reader
资源简介
STC单片机C语言程序设计 8051体系架构、编程实例及项目实战
作者:何宾编著
出版时间:2018年版
内容简介
本书系统地论述了STC单片机的C语言程序设计方法。全书共分为27章,主要内容包括: 单片机基础知识,STC单片机硬件知识,数值表示及转换,STC单片机CPU子系统,STC单片机CPU指令系统,STC单片机集成开发环境,STC单片机汇编语言编程基础,STC单片机C语言编程入门,STC单片机C语言变量和数据类型,STC单片机C语言运算符,STC单片机C语言描述语句,STC单片机C语言数组,STC单片机C语言指针,STC单片机C语言函数,STC单片机C语言预处理指令,STC单片机C语言复杂数据结构,STC单片机C语言高级编程技术,STC单片机时钟、复位和电源模式原理及实现,STC单片机比较器原理及实现,STC单片机计数器和定时器原理及实现,STC单片机异步串行收发器原理及实现,STC单片机ADC原理及实现,STC单片机SPI原理及实现,STC单片机CCP/PCA/PWM模块原理及实现,STC 单片机增强型PWM发生器原理及实现,RTX51操作系统原理及实现,综合项目实例: 风扇转速控制系统的设计与实现。
本书将C语言程序设计与STC单片机的各个知识点进行系统化融合,不仅系统地介绍C语言程序设计的各个知识点及其在单片机中的具体应用,而且更加突出学习方法。为了方便读者自学,本书提供了大量的设计案例和公开教学视频。
本书可作为读者零基础学习单片机C语言程序设计的参考用书,也可作为单片机竞赛、单片机认证考试的参考用书。

目录
第1章 单片机基础知识

1.1单片机发展历史

1.2单片机内部架构

1.3单片机与嵌入式系统的关系

1.4单片机硬件开发平台

1.5运行第一个单片机程序

1.6单片机编程语言

第2章STC单片机硬件知识

2.1STC单片机发展历史

2.2STC单片机IAP和ISP

2.3STC单片机命名规则及封装

……

2.4STC单片机结构及功能

2.5STC单片机的I/O驱动原理

2.6STC单片机硬件下载电路设计

……

2.7STC单片机电源系统设计

2.8调试单片机系统所用到的仪器

第3章数值表示及转换

3.1常用数制

……

3.2正数表示方法



3.3正数码制转换

……

3.4负数表示方法

……

3.5负数补码的计算

……

3.6定点数表示

3.7浮点数表示

第4章STC单片机CPU子系统

4.1STC单片机CPU内核功能单元

……

4.2STC单片机存储器结构和地址空间

……

4.3STC单片机中断系统原理及功能

……

第5章STC单片机CPU指令系统

5.1STC单片机CPU寻址模式

……

5.2STC单片机CPU指令集

……

第6章STC单片机集成开发环境

6.1Keil μVision集成开发环境介绍

……

6.2Keil μVision软件开发流程介绍

……

6.3Keil μVision软件开发流程实现

……

6.4U8W编程器

……

第7章STC单片机汇编语言编程基础

7.1汇编语言程序结构

7.2汇编代码中段的分配

……

7.3汇编语言符号及规则

……

7.4汇编语言操作数描述

……

7.5汇编语言控制描述

……

7.6汇编语言设计流程

……

7.7单片机端口控制汇编语言程序设计

……

7.8单片机中断汇编语言程序设计

……

第8章STC单片机C语言编程入门

8.1高级编程语言概念

……

8.2选择C语言的理由

8.3C语言发展历史

8.4C语言程序框架

8.5C语言词法构成

第9章STC单片机C语言变量和数据类型

9.1C语言中的常量和变量

……

9.2C51编译器支持的数据类型

……

9.3自定义数据类型

9.4变量存储种类和存储类型

……

9.5定位变量的绝对位置

第10章STC单片机C语言运算符

10.1C语言运算符分类

10.2C语言运算符优先级

10.3赋值运算符

10.4算术运算符

10.5递增和递减运算符

10.6关系运算符

10.7逻辑运算符

10.8位运算符

10.9复合赋值运算符

10.10逗号运算符

10.11条件运算符

10.12强制类型转换符

10.13sizeof运算符

第11章STC单片机C语言描述语句

11.1输入输出语句

11.1.1putchar函数

11.1.2getchar函数

11.1.3printf函数

11.1.4scanf函数

11.1.5puts函数

11.1.6gets函数

11.2表达式语句

11.3条件语句

11.3.1条件语句格式1

11.3.2条件语句格式2

11.3.3条件语句格式3

11.4开关语句

11.5循环语句

11.5.1while语句

11.5.2dowhile语句

11.5.3for语句

11.5.4goto语句

11.5.5break语句

11.5.6continue语句

11.6返回语句

11.7C语言端口控制实现

第12章STC单片机C语言数组

12.1一维数组的定义和操作

12.1.1一维数组的定义

12.1.2一维数组初始化

12.1.3一维数组的操作

12.2多维数组的定义和操作

12.2.1多维数组的定义

12.2.2多维数组初始化

12.2.3多维数组的操作

第13章STC单片机C语言指针

13.1C51编译器中指针的分类

13.2通用指针

13.2.1未指定存储区域的通用指针

13.2.2指定存储区域的通用指针

13.3指定存储器类型的指针

13.4指针转换

13.5指针变量输入

13.6指向指针的指针

13.7抽象指针

第14章STC单片机C语言函数

14.1函数定义和声明

14.1.1标准C函数定义和声明

14.1.2扩展C函数定义和声明

14.1.3存储器模型

14.2函数调用原理

14.2.1函数调用格式

14.2.2参数和堆栈

14.2.3参数和寄存器

14.2.4返回值

14.3函数调用实现分析

14.4函数变量的存储方式

14.5数组类型传递参数

14.6指针类型传递参数

14.7指向函数的指针

14.8可重入函数设计

14.9中断函数设计

14.9.1C语言中断函数的声明格式

14.9.2外部中断电路原理

14.9.3C语言中断程序的编写和测试

第15章STC单片机C语言预处理指令

15.1文件包含

15.1.1包含用户头文件

15.1.2包含系统头文件

15.1.3只包含一次文件

15.2宏定义及使用

15.2.1简单的宏定义

15.2.2复杂的宏定义

15.2.3宏操作符

15.2.4预定义的宏

15.3条件编译

15.4其他预处理命令

15.4.1#line

15.4.2#message

15.4.3#error

15.4.4#pragma

第16章STC单片机C语言复杂数据结构

16.1结构

16.1.1结构类型的定义

16.1.2结构变量的定义

16.1.3结构变量内元素的引用

16.1.4指向结构的指针

16.2联合

16.3枚举

16.4链表

16.4.1单链表的存储结构

16.4.2建立链表

16.4.3查找结点

16.4.4删除结点

16.4.5插入结点

第17章STC单片机C语言高级编程技术

17.1C程序中使用汇编语言

17.1.1内嵌汇编语言

17.1.2调用汇编程序

17.2优化代码策略

17.3C语言动态图形交互设计

17.3.1动态图形交互硬件平台

17.3.2STC单片机对触摸屏的控制

17.3.3STC单片机对触摸屏的初始化

17.3.4触摸屏基本绘图流程

17.3.5绘制不同图形的具体实现方法

17.3.6设计头文件说明

17.3.7主处理文件main函数设计

第18章STC单片机时钟、复位和电源模式原理及实现

18.1STC单片机时钟

18.2STC单片机复位

18.2.1外部RST引脚复位

18.2.2软件复位

18.2.3掉电/上电复位

18.2.4MAX810专用复位电路复位

18.2.5内部低压检测复位

18.2.6看门狗复位

18.2.7程序地址非法复位

18.3STC单片机电源模式

18.3.1低速模式

18.3.2空闲模式

18.3.3掉电模式

第19章STC单片机比较器原理及实现

19.1STC单片机比较器结构

19.2STC单片机比较器寄存器组

19.2.1比较控制寄存器1

19.2.2比较控制寄存器2

19.3STC单片机比较器应用

第20章STC单片机计数器和定时器原理及实现

20.1计数器/定时器模块简介

20.2计数器/定时器寄存器组

20.2.1定时器/计数器0/1控制寄存器TCON

20.2.2定时器/计数器工作模式寄存器TMOD

20.2.3辅助寄存器AUXR

20.2.4T0~T2时钟输出寄存器和外部中断允许INT_CLKO(AUXR2)

20.2.5定时器T0和T1中断允许控制寄存器IE

20.2.6定时器T0和T1中断优先级控制寄存器IP

20.2.7定时器T4和定时器T3控制寄存器T4T3M

20.2.8定时器T2、T3和T4的中断控制寄存器IE2

20.3计数器/定时器工作模式原理和实现

20.3.1定时器/计数器0工作模式

20.3.2定时器/计数器1工作模式

20.3.3定时器/计数器2工作模式

20.3.4定时器/计数器3工作模式

20.3.5定时器/计数器4工作模式

第21章STC单片机异步串行收发器原理及实现

21.1RS232标准简介

21.1.1RS232传输特点

21.1.2RS232数据传输格式

21.1.3RS232电气标准

21.1.4RS232参数设置

21.1.5RS232连接器

21.2STC单片机串口模块简介

21.2.1串口模块结构

21.2.2串口引脚

21.3串口1寄存器及工作模式

21.3.1串口1寄存器组

21.3.2串口1工作模式

21.3.3人机交互控制的实现

21.3.4按键扫描及串口显示

21.4串口2寄存器及工作模式

21.4.1串口2寄存器组

21.4.2串口2工作模式

21.5串口3寄存器及工作模式

21.5.1串口3寄存器组

21.5.2串口3工作模式

21.6串口4寄存器及工作模式

21.6.1串口4寄存器组

21.6.2串口4工作模式

21.7红外通信的原理及实现

21.7.1红外收发器的电路原理

21.7.2红外通信波形捕获

21.7.3红外通信协议

21.7.4红外检测原理

21.7.5串口通信原理

21.7.6设计实现

第22章STC单片机ADC原理及实现

22.1ADC原理

22.1.1ADC的参数

22.1.2ADC的类型

22.2STC单片机内ADC的结构原理

22.2.1STC单片机内ADC的结构

22.2.2ADC转换结果的计算方法

22.3STC单片机内ADC寄存器组

22.3.1P1口模拟功能控制寄存器

22.3.2ADC控制寄存器

22.3.3时钟分频寄存器

22.3.4ADC结果高位寄存器

22.3.5ADC结果低位寄存器

22.3.6中断使能寄存器

22.3.7中断优先级寄存器

22.4直流电压测量及串口显示

22.4.1直流分压电路原理

22.4.2软件设计流程

22.4.3具体实现过程

22.5直流电压测量及LCD屏显示

22.5.1硬件电路设计

22.5.21602字符LCD原理

22.5.3软件设计流程

22.5.4具体实现过程

22.6交流电压测量及LCD屏显示

22.6.1硬件电路设计

22.6.212864图形点阵LCD原理

22.6.3软件设计流程

22.6.4ADC外部输入信号要求

22.6.5具体实现过程

22.7温度测量及串口显示

第23章STC单片机SPI原理及实现

23.1STC SPI模块结构及功能

23.1.1SPI传输特点

23.1.2SPI模块功能

23.1.3SPI接口信号

23.1.4SPI接口的数据通信方式

23.1.5SPI模块内部结构

23.2SPI模块寄存器组

23.2.1SPI控制寄存器

23.2.2SPI状态寄存器

23.2.3SPI数据寄存器

23.2.4中断允许寄存器2

23.2.5中断优先级寄存器

23.2.6控制SPI引脚位置寄存器

23.3SPI模块配置及时序

23.3.1SPI配置模式

23.3.2主/从模式的注意事项

23.3.3通过SS修改模式

23.3.4写冲突

23.3.5数据模式时序

23.47段数码管的驱动与显示

23.4.1系统控制电路原理

23.4.27段数码管原理

23.4.374HCT595原理

23.4.4系统软件控制流程

23.4.5程序具体实现

第24章STC单片机CCP/PCA/PWM模块原理及实现

24.1CCP/PCA/PWM结构

24.2CCP/PCA/PWM寄存器组

24.2.1PCA工作模式寄存器

24.2.2PCA控制寄存器

24.2.3PCA比较捕获寄存器

24.2.4PCA的16位计数器

24.2.5PCA捕获/比较寄存器

24.2.6PCA模块PWM寄存器

24.2.7PCA模块引脚切换寄存器

24.3CCP/PCA/PWM工作模式

24.3.1捕获模式

24.3.216位软件定时器模式

24.3.3高速脉冲输出模式

24.3.4脉冲宽度调制模式

第25章STC单片机增强型PWM发生器原理及实现

25.1增强型PWM发生器简介

25.2增强型PWM发生器相关寄存器组

25.2.1端口配置寄存器

25.2.2PWM配置寄存器

25.2.3PWM控制寄存器

25.2.4PWM中断标志寄存器

25.2.5PWM外部异常控制寄存器

25.2.6PWM计数器

25.2.7PWM时钟选择寄存器

25.2.8PWM2翻转计数器

25.2.9PWM2控制寄存器

25.2.10PWM3翻转计数器

25.2.11PWM3控制寄存器

25.2.12PWM4翻转计数器

25.2.13PWM4控制寄存器

25.2.14PWM5翻转计数器

25.2.15PWM5控制寄存器

25.2.16PWM6翻转计数器

25.2.17PWM6控制寄存器

25.2.18PWM7翻转计数器

25.2.19PWM7控制寄存器

25.2.20PWM中断优先级控制寄存器

25.3生成单路PWM信号

25.4生成两路互补PWM信号

25.5步进电机的驱动和控制

25.5.1五线四相步进电机工作原理

25.5.2步进电机28BYJ48电气性能

25.5.3步进电机的驱动

25.5.4使用软件驱动步进电机

25.5.5使用增强型PWM模块驱动步进电机

25.5.6设计下载和验证

第26章RTX51操作系统原理及实现

26.1操作系统的必要性

26.1.1单任务程序

26.1.2轮询程序

26.2操作系统基本知识

26.2.1操作系统的作用

26.2.2操作系统的功能

26.3RTX51操作系统的任务

26.3.1定义任务

26.3.2管理任务

26.3.3切换任务

26.4RTX51操作系统内核函数

26.5RTX51操作系统实现

26.5.1RTX51操作系统实现1

26.5.2RTX51操作系统实现2

26.5.3RTX51操作系统实现3

第27章综合项目实例: 风扇转速控制系统的设计与实现

27.1项目需求分析

27.1.1划分软件和硬件边界

27.1.2设计过程中的细节问题

27.2离散PID控制算法及其参数

27.2.1离散PID控制算法

27.2.2参数整定方法

27.3风扇原理、驱动和运动特性

27.3.1风扇原理

27.3.2风扇驱动

27.3.3风扇运动特性

27.4反馈信号处理方法

27.4.1比较器的硬件设置

27.4.2比较器的程序配置方案

27.4.3比较器处理结果分析

27.5输出测速信号的处理

27.5.1设计思路

27.5.2程序设计方案

27.6单片机串口数据通信

27.6.1设计思路

27.6.2现象分析

27.7PID控制算法中关键问题

27.8系统的硬件结构原理图

27.9控制系统设计代码

27.10上位机应用程序开发

附录ASTC单片机选型表636

附录BSTC四轴飞行器643

附录CGNTSMK2开发板原理图645
下载地址