第1章 单片机和嵌入式系统基础知识

1.1 嵌入式系统的基本概念

1.1.1 嵌入式系统的主要特点

1.1.2 嵌入式技术的构成

1.28 051微控制器的内部架构

1.38 051单片机硬件开发平台

1.4 运行第一个8051单片机程序

1.58 051单片机编程语言

第2章 STC单片机硬件知识

2.1 STC单片机发展历史

2.2 STC单片机IAP和ISP

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

2.3.1 命名规则

2.3.2 封装类型

2.3.3 引脚定义

第1章 单片机和嵌入式系统基础知识

1.1 嵌入式系统的基本概念

1.1.1 嵌入式系统的主要特点

1.1.2 嵌入式技术的构成

1.28 051微控制器的内部架构

1.38 051单片机硬件开发平台

1.4 运行第一个8051单片机程序

1.58 051单片机编程语言

第2章 STC单片机硬件知识

2.1 STC单片机发展历史

2.2 STC单片机IAP和ISP

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

2.3.1 命名规则

2.3.2 封装类型

2.3.3 引脚定义

2.4 STC单片机的架构及功能

2.4.1 单片机实现的功能

2.4.2 STC单片机的架构

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

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

2.6.1 USB串口芯片下载电路

2.6.2 USB直接下载编程电路

2.7 STC单片机电源系统设计

第3章 STC单片机软件开发环境

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

3.1.1 软件功能介绍

3.1.2 软件的下载

3.1.3 软件的安装

3.1.4 导入STC单片机元件库

3.1.5 软件的启动

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

3.2.1 明确软件需求

3.2.2 创建设计工程

3.2.3 编写汇编/C程序代码

3.2.4 汇编器对汇编语言的处理

3.2.5 C编译器对C语言的处理

3.2.6 库管理器生成库文件

3.2.7 链接器生成绝对目标模块文件

3.2.8 目标到HEX转换器

3.2.9 调试器调试目标代码

3.3 Keil μVision基本开发流程的实现

3.3.1 建立新的设计工程

3.3.2 添加新的C语言文件

3.3.3 设计建立

3.3.4 下载程序到目标系统

3.3.5 硬件在线调试

第4章 数值表示及转换

4.1 常用码制

4.1.1 二进制码制

4.1.2 十进制码制

4.1.3 八进制码制

4.1.4 十六进制码制

4.1.5 BCD码

4.2 正数表示方法

4.2.1 正整数的表示

4.2.2 正小数的表示

4.3 正数码制转换

4.3.1 十进制整数转换成其他进制数

4.3.2 十进制小数转换成二进制数

4.4 负数表示方法

4.4.1 符号幅度表示法

4.4.2 补码表示法

4.5 负数补码的计算

4.5.1 负整数补码的计算

4.5.2 负小数补码的计算

4.6 定点数表示

4.7 浮点数表示

第5章 STC单片机架构

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

5.1.1 控制器

5.1.2 运算器

5.1.3 特殊功能寄存器

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

5.2.1 程序Flash存储器

5.2.2 数据Flash存储器

5.2.3 内部数据RAM存储器

5.2.4 外部数据存储器

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

5.3.1 中断原理

5.3.2 中断系统结构

5.3.3 中断优先级处理

5.3.4 中断优先级控制寄存器

5.3.5 中断向量表

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

6.1 STC单片机CPU寻址模式

6.1.1 立即数寻址模式

6.1.2 直接寻址模式

6.1.3 间接寻址模式

6.1.4 寄存器寻址模式

6.1.5 相对寻址模式

6.1.6 变址寻址模式

6.1.7 位寻址模式

6.2 STC单片机CPU指令集

6.2.1 算术指令

6.2.2 逻辑指令

6.2.3 数据传送指令

6.2.4 布尔指令

6.2.5 程序分支指令

第7章 STC单片机汇编语言编程模型

7.1 汇编语言程序结构

7.2 汇编代码中段的分配

7.2.1 CODE段

7.2.2 BIT段

7.2.3 IDATA段

7.2.4 DATA段

7.2.5 XDATA段

7.3 汇编语言符号及规则

7.3.1 符号的命名规则

7.3.2 符号的作用

7.4 汇编语言操作数描述

7.4.1 数字

7.4.2 字符

7.4.3 字符串

7.4.4 位置计数器

7.4.5 操作符

7.4.6 表达式

7.5 汇编语言控制描述

7.5.1 地址控制

7.5.2 条件汇编

7.5.3 存储器初始化

7.5.4 分配存储器空间

7.5.5 过程声明

7.5.6 程序链接

7.5.7 段控制

7.5.8 杂项

7.6 Keil μVision5汇编语言设计流程

7.6.1 建立新的设计工程

7.6.2 添加新的汇编语言文件

7.6.3 设计建立

7.6.4 分析.m51文件

7.6.5 分析.lst文件

7.6.6 分析.hex文件

7.6.7 程序软件仿真

7.6.8 程序硬件仿真

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

7.7.1 设计原理

7.7.2 建立新的工程

7.7.3 添加汇编语言程序

7.7.4 设计建立

7.7.5 下载设计

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

7.8.1 设计原理

7.8.2 建立新的工程

7.8.3 添加汇编语言文件

7.8.4 分析.lst文件

7.8.5 设计建立

7.8.6 下载设计

7.8.7 硬件仿真

第8章 STC单片机C语言编程模型

8.1 常量和变量

8.1.1 常量

8.1.2 变量

8.2 数据类型

8.2.1 标准C语言所支持的类型

8.2.2 单片机扩充的类型

8.2.3 自定义数据类型

8.2.4 变量及存储模式

8.3 运算符

8.3.1 赋值运算符

8.3.2 算术运算符

8.3.3 递增和递减运算符

8.3.4 关系运算符

8.3.5 逻辑运算符

8.3.6 位运算符

8.3.7 复合赋值运算符

8.3.8 逗号运算符

8.3.9 条件运算符

8.3.10 强制类型转换符

8.3.11 sizeof运算符

8.4 描述语句

8.4.1 输入/输出语句

8.4.2 表达式语句

8.4.3 条件语句

8.4.4 开关语句

8.4.5 循环语句

8.4.6 返回语句

8.5 数组

8.5.1 一维数组的表示方法

8.5.2 多维数组的表示方法

8.5.3 索引数组元素的方法

8.5.4 动态输入数组元素的方法

8.5.5 数组运算算法

8.6 指针

8.6.1 指针的基本概念

8.6.2 指向指针的指针

8.6.3 指针变量输入

8.7 函数

8.7.1 函数声明

8.7.2 函数调用

8.7.3 函数变量的存储方式

8.7.4 函数参数和局部变量的存储器模式

8.7.5 基本数据类型传递参数

8.7.6 数组类型传递参数

8.7.7 指针类型传递参数

8.8 预编译指令

8.8.1 宏定义

8.8.2 文件包含

8.8.3 条件编译

8.8.4 其他预处理指令

8.9 复杂数据结构

8.9.1 结构

8.9.2 联合

8.9.3 枚举

8.10 C程序中使用汇编语言

8.10.1 内嵌汇编语言

8.10.2 调用汇编程序

8.11 C语言端口控制实现

8.12 C语言中断程序实现

8.12.1 C语言中断程序实现原理

8.12.2 外部中断电路原理

8.12.3 C语言中断具体实现过程

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

9.1 STC单片机时钟

9.2 STC单片机复位

9.2.1 外部RST引脚复位

9.2.2 软件复位

9.2.3 掉电/上电复位

9.2.4 MAX810专用复位电路复位

9.2.5 内部低压检测复位

9.2.6 看门狗复位

9.2.7 程序地址非法复位

9.3 STC单片机电源模式

9.3.1 低速模式

9.3.2 空闲模式

9.3.3 掉电模式

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

10.1 STC单片机比较器结构

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

10.2.1 比较器控制寄存器

10.2.2 比较器控制寄存器

10.3 STC单片机比较器应用

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

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

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

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

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

11.2.3 辅助寄存器AUXR

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

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

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

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

11.2.8 定时器T2、T3和T4的中断控制寄存器IE

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

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

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

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

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

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

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

12.1 RS-232标准简介

12.1.1 RS-232传输特点

12.1.2 RS-232数据传输格式

12.1.3 RS-232电气标准

12.1.4 RS-232参数设置

12.1.5 RS-232连接器

12.2 STC单片机串口模块简介

12.2.1 串口模块结构

12.2.2 串口引脚

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

12.3.1 串口1寄存器组

12.3.2 串口1工作模式

12.3.3 人机交互控制的实现

12.3.4 按键扫描与串口显示

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

12.4.1 串口2寄存器组

12.4.2 串口2工作模式

12.5 红外通信的原理及实现

12.5.1 红外收发器的电路原理

12.5.2 红外通信波形捕获

12.5.3 红外通信协议

12.5.4 红外检测原理

12.5.5 串口通信原理

12.5.6 设计实现

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

13.1 模数转换器原理

13.1.1 模数转换器的参数

13.1.2 模数转换器的类型

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

13.2.1 STC单片机内ADC的结构

13.2.2 ADC转换结果的计算方法

13.3 STC单片机内ADC寄存器组

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

13.3.2 ADC控制寄存器

13.3.3 时钟分频寄存器

13.3.4 ADC结果高位寄存器

13.3.5 ADC结果低位寄存器

13.3.6 中断使能寄存器

13.3.7 中断优先级寄存器

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

13.4.1 直流分压电路原理

13.4.2 软件设计流程

13.4.3 具体实现过程

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

13.5.1 硬件电路设计

13.5.21 602字符LCD原理

13.5.3 软件设计流程

13.5.4 具体实现过程

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

13.6.1 硬件电路设计

13.6.21 2864图形点阵LCD原理

13.6.3 软件设计流程

13.6.4 ADC外部输入信号要求

13.6.5 具体实现过程

13.7 温度测量及串口显示

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

14.1 脉冲宽度调制原理

14.2 增强型PWM发生器模块

14.2.1 增强型PWM发生器功能

14.2.2 增强型PWM发生器寄存器集

14.3 生成单路PWM信号

14.4 生成两路互补PWM信号

14.5 步进电机的驱动和控制

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

14.5.2 步进电机的驱动

14.5.3 使用软件驱动步进电机

14.5.4 使用PWM模块驱动步进电机

14.5.5 设计下载和验证

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

15.1 SPI模块结构及功能

15.1.1 SPI传输特点

15.1.2 SPI模块功能

15.1.3 SPI接口信号

15.1.4 SPI接口的数据通信方式

15.1.5 SPI模块内部结构

15.2 SPI模块寄存器组

15.2.1 SPI控制寄存器

15.2.2 SPI状态寄存器

15.2.3 SPI数据寄存器

15.2.4 中断允许寄存器

15.2.5 中断优先级寄存器

15.2.6 控制SPI引脚位置寄存器

15.3 SPI模块配置及时序

15.3.1 SPI配置模式

15.3.2 主/从模式的注意事项

15.3.3 通过SS修改模式

15.3.4 写冲突

15.3.5 数据模式时序

15.47 段数码管的驱动与显示

15.4.1 系统控制电路原理

15.4.27 段数码管原理

15.4.37 4HC595原理

15.4.4 系统软件控制流程

15.4.5 程序具体实现

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

16.1 CCP/PCA/PWM结构

16.2 CCP/PCA/PWM寄存器组

16.2.1 PCA工作模式寄存器

16.2.2 PCA控制寄存器

16.2.3 PCA比较捕获寄存器

16.2.4 PCA的16位计数器

16.2.5 PCA捕获/比较寄存器

16.2.6 PCA模块PWM寄存器

16.2.7 PCA模块引脚切换寄存器

16.3 CCP/PCA/PWM工作模式

16.3.1 捕获模式

16.3.21 6位软件定时器模式

16.3.3 高速脉冲输出模式

16.3.4 脉冲宽度调制模式

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

17.1 操作系统的必要性

17.1.1 单任务程序

17.1.2 轮询程序

17.2 操作系统基本知识

17.2.1 操作系统的作用

17.2.2 操作系统的功能

17.3 RTX51操作系统的任务

17.3.1 定义任务

17.3.2 管理任务

17.3.3 切换任务

17.4 RTX51操作系统内核函数

17.5 RTX51操作系统实现

17.5.1 RTX51操作系统实现

17.5.2 RTX51操作系统实现

17.5.3 RTX51操作系统实现

附录A STC单片机考试样题

附录B STC单片机选型表

附录C STC学习板原理图

何宾 单片机原理及应用_STC单片机原理及应用——从器件、汇编、C到操作系统的分析和设计(立体化教程)(第2版)...相关推荐

  1. 何宾 单片机原理及应用_STC单片机原理及应用(第2版)

    本书是为单片机相关课程教学而编写的教材.全书共分为17章,主要内容包括:单片机和嵌入式系统基础知识,STC单片机硬件知识,STC单片机软件开发环境,数值表示及转换,STC单片机架构,STC单片机CPU ...

  2. 单片机中存储器扩展位地址线怎么算_51单片机CPU结构各部件的原理详细分析

    一. 51单片机串行口工作原理 MCS-51系列单片机片内有一个串行I/O端口,通过引脚RXD(P3.0)和TXD(P3.1)可与外设电路进行全双工的串行异步通信. 1.串行端口的基本特点 8031单 ...

  3. 51单片机并行I/O口工作原理

    51单片机并行I/O口工作原理 51单片机并行I/O口工作原理 P1: 仅作为双向I/O口 P3: 做为双向I/O口,同时还有第二功能 P2: 双向I/O口和高8位地址线,与P1的结构相比多了一个数据 ...

  4. 51单片机之定时器\计数器的工作原理

    51单片机之定时器\计数器的工作原理 定时器/计数器的结构: 何时处于计数器方式?何时处于定时器方式? TCON和TMOD特殊功能寄存器: 定时器/计数器工作方式: 方式0:13位的定时器/计数器 方 ...

  5. ppp协议提供什么服务器,PPP的工作原理是什么?单片机PPP协议有什么应用?

    PPP协议(Point-to-Point Protocol)提供了在串行点对点链路上传输数据报的方法,支持异步8位数据及位导向的同步连接(如ISDN).它提供了一种管理两点间会话的有效方法,正在取代S ...

  6. 单片机双字节数乘法运算实验_单片机入门——单片机的基本构成及工作原理(1)...

    本连载讲解作为嵌入式系统开发技术人员所必需具备的基础知识.这些基础知识是硬件和软件技术人员都应该掌握的共通技术知识. 有了电子电路和数字电路的基础知识,就可以开始学习嵌入式系统的核心元件-单片机.从本 ...

  7. 单片机入门——单片机的基本构成及工作原理(1)

     有了电子电路和数字电路的基础知识,就可以开始学习嵌入式系统的核心元件-单片机.从本期开始我们将为大家介绍单片机的基础知识. 在单片机入门系列讲座中,首先学习单片机的基本构成和工作原理.以及外围功 ...

  8. 单片机晶振概述及工作原理

    一.单片机晶振简单介绍 单片机晶振是单片机内部电路产生单片机所需的时钟频率的部件,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率.晶振 ...

  9. 【51单片机】定时器/计数器的工作原理和结构(一)

    [51单片机]定时器/计数器的工作原理和结构 回看下单片机中断系统内部结构: 分析内部中断触发: 先看图 TCON:和外部中断相比少了IT位设置触发方式 :1跳沿触发 0电平触发:此处我的理解是:就好 ...

最新文章

  1. php soap webservice 实例
  2. 项目问题思考之策略模式
  3. PHP 汉字转拼音(首拼音,所有拼音)
  4. android ——多线程编程
  5. python微信库wxpy无法登录_使用wxpy这个基于python实现的微信工具库的一些常见问题...
  6. c语言ascii码表_零基础学C语言——变量、常量与数据类型
  7. DEA博弈交叉效率matlab,基于博弈交叉效率DEA模型的服务模块化创新绩效测量—以江西省文化创意产业为例...
  8. autohotkey-大漠插件
  9. 360快捷方式右上角的软件更新图标实现
  10. win32反汇编初步探索及Onllydbg的使用
  11. 1. spark ML概述
  12. 【江枫】lvm2与powerpath的Found duplicate PV问题
  13. 如何删除tmp计算机桌面,win10系统下tmp临时文件删除不了像何解决
  14. pip报错:No module named pip
  15. few-shot learning个人总结
  16. python编写简单四则运算程序
  17. 9月第4周要闻回顾:云安全奇虎啸金山 不开源Novell忙赚钱
  18. JS中的函数定义方式及全局函数
  19. 网表仿真DC/SDF/DFT等基本知识
  20. 单目标追踪——【相关滤波】C-COT原理与ECO基于C-COT的改进

热门文章

  1. LeetCode 93. 复原IP地址
  2. Linux查看负载相关命令
  3. Kubernetes学习笔记之kube-proxy service实现原理
  4. RabbitMq(十七)rabbitmq的四种集群监控
  5. SenchaTouch中出现数据覆盖 以及 “Cannot call method 'setData' of nul”l错误的可能原因
  6. Rabbtmq 消费端-幂等性保障
  7. golang rpc单参数调用实例
  8. golang中,new和make的区别
  9. 启动报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
  10. mybatis一次可以执行多个sql语句