当前位置:首页 > 工业技术
从51单片机DIY  四轴飞行器到优秀产品设计  STC15单片机实战指南  C语言版
从51单片机DIY  四轴飞行器到优秀产品设计  STC15单片机实战指南  C语言版

从51单片机DIY 四轴飞行器到优秀产品设计 STC15单片机实战指南 C语言版PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:刘平,刘钊著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2016
  • ISBN:9787302436584
  • 页数:532 页
图书介绍:本书包含4部分,共计20章。首先从最基本的概念,开发软件的操作入手,教读者如何搭建一个工程;之后在边带领读者深入浅出学习STM32单片机内部资源(如定时器、中断、串口)和经典外围电路(如LED、数码管、按键、液晶、点阵、EEPROM、温度传感器、时钟、红外线解码)又扩展了一些工程中常用的知识点,如模块化编程、PCB、实时操作系统、上位机编程等;最后以工程项目为例,手把手教大家如何DIY一个属于自己的并有实用价值的项目。
《从51单片机DIY 四轴飞行器到优秀产品设计 STC15单片机实战指南 C语言版》目录

第一部分 入门篇 3

第1章 藉马歇门,踏神圣路:迈进STC15单片机的大门 3

1.1 单片机概述 3

1.1.1 单片机厂家简介 4

1.1.2 STC15单片机简述 5

1.2 为何要学习STC15单片机 8

1.3 如何玩转单片机 9

1.3.1 做有准备的人 9

1.3.2 经验分享 13

第2章 欲善其事,必利其器:软硬件平台的搭建和使用 15

2.1 硬件平台——FSST15开发板 15

2.1.1 FSST15开发板功能框图 15

2.1.2 FSST15开发板基本配置 16

2.2 开发环境——KeilμVision5 17

2.2.1 KeilμVision5的安装 18

2.2.2 KeilμVision5中的工程创建过程 20

2.3 我的第一个程序——点亮LED 28

2.4 辅助开发工具 28

2.4.1 CH340驱动的安装 28

2.4.2 单片机编程软件——STC-ISP 29

2.5 课后学习 30

第二部分 初级篇 33

第3章 端倪初现,小试牛刀:基本元器件与LED 33

3.1 电阻的应用概述 33

3.1.1 初识电阻 33

3.1.2 电流与电阻的关系 34

3.2 电容的应用概述 36

3.2.1 初识电容 36

3.2.2 电容的用途 36

3.2.3 实例解说储能和滤波 37

3.3 二极管的应用概述 40

3.3.1 二极管的特性 40

3.3.2 二极管的应用 42

3.3.3 发光二极管 43

3.4 三极管应用概述及使用误区 44

3.4.1 三极管的基本开关电路 44

3.4.2 开关三极管的使用误区 46

3.5 MOS管的应用概述 48

3.5.1 MOS管基础 49

3.5.2 MOS管的应用 50

3.6 运算放大器的基本应用 51

3.6.1 负反馈 51

3.6.2 同相放大电路 51

3.6.3 反相放大电路 52

3.7 STC15系列单片机的I/O口概述 52

3.7.1 I/O口的工作模式及配置 52

3.7.2 I/O口各种不同的工作模式结构框图 53

3.8 LED的原理解析 55

3.8.1 LED的原理说明 55

3.8.2 LED的硬件电路 55

3.9 LED的应用实例 56

3.9.1 LED闪烁实例 57

3.9.2 LED跑马灯实例 58

3.9.3 LED流水灯实例 60

3.10 课后学习 62

第4章 排兵布阵,步步扣杀:模块化编程 63

4.1 夯实基础——数值的换算以及逻辑运算 63

4.1.1 各进制之间的换算关系 63

4.1.2 数字电路和C语言中的逻辑运算 64

4.2 简述单片机的开发流程 66

4.3 Keil5的进阶应用——建模 67

4.4 单片机的模块化编程 71

4.4.1 模块化编程的说明 71

4.4.2 用实践解释 71

4.5 模块化编程的应用实例 75

4.6 课后学习 79

第5章 点段融合,一气呵成:C语言的编程规范与数码管的应用 80

5.1 夯实基础——C语言的编程规范 80

5.1.1 程序的排版 81

5.1.2 程序的注释 81

5.2 基于STC15的单片机最小系统 82

5.2.1 电源 82

5.2.2 晶体振荡电路(晶振) 85

5.2.3 复位电路 86

5.2.4 程序下载电路 87

5.3 数码管的原理解析 88

5.3.1 数码管的原理说明 88

5.3.2 数码管的硬件电路设计 89

5.3.3 知识拓展——74HC595 90

5.3.4 数码管的真值表与基本的编程实例 92

5.4 数码管的应用实例 94

5.4.1 数码管的静态显示例程 94

5.4.2 数码管的动态显示实例 96

5.5 课后学习 98

第6章 审时度势,伺机而动:C语言的数据类型与定时器的应用 99

6.1 夯实基础——C语言的数据类型 99

6.1.1 变量与常量 99

6.1.2 变量的作用域 100

6.1.3 变量的存储类别 101

6.1.4 变量的命名规则 102

6.2 STC15单片机的内部结构 103

6.2.1 STC15单片机的内部结构 103

6.2.2 中央处理器(CPU) 104

6.2.3 只读存储器(ROM)和随机存储器(RAM) 105

6.2.4 IAP15W4K58S4单片机的存储结构 107

6.3 STC15单片机的定时器/计数器 108

6.3.1 学习定时器/计数器之前的说明 109

6.3.2 定时器/计数器T0、T1的寄存器 110

6.3.3 定时器/计数器T0、T1的工作模式 112

6.3.4 定时器的简单应用实例和初始化步骤总结 113

6.4 IAP15W4K58S4单片机的可编程时钟输出 115

6.5 定时器和时钟输出应用实例 117

6.5.1 数码管的静态显示例程(定时器) 117

6.5.2 可编程时钟输出例程 118

6.6 课后学习 119

第7章 当断不断,反受其乱:C语言的条件判断语句与中断系统 120

7.1 夯实基础——C语言的条件判断语句 120

7.1.1 if…else语句 120

7.1.2 switch…case语句 122

7.2 单片机省电模式和看门狗的应用 122

7.2.1 省电模式 122

7.2.2 看门狗 124

7.2.3 LED灯闪烁是因为“狗”饿了 125

7.2.4 要让系统运行正常必须实时“喂狗” 126

7.3 单片机的中断系统 126

7.3.1 单片机中断的产生背景和响应过程 127

7.3.2 单片机中断系统的框架和中断源 127

7.3.3 单片机中断系统的寄存器 131

7.3.4 简单中断应用实例及与中断函数有关的知识点 132

7.3.5 中断系统的优先级 135

7.4 中断系统的应用实例 138

7.4.1 数码管动态显示的基本应用实例 138

7.4.2 数码管动态刷新的改进与消影 140

7.5 课后学习 143

第8章 举一反三,一呼百应:C语言的循环语句与串口的应用 144

8.1 夯实基础——C语言的循环语句 144

8.1.1 while循环 144

8.1.2 do…while循环 144

8.1.3 for循环 145

8.2 通信接口模块 146

8.2.1 通信接口的基本分类 146

8.2.2 串行通信概述 147

8.3 IAP15W4K58S4单片机的串行接口 150

8.3.1 与串行通信相关的基本寄存器 150

8.3.2 串口1的工作模式 153

8.3.3 串口1工作模式1的波特率计算 155

8.3.4 串口1的应用实例 156

8.4 RS-232通信接口概述 159

8.4.1 RS-232C串口通信标准与接口定义 159

8.4.2 RS-232C通信接口的电平转换 160

8.5 USB转串口通信 162

8.6 通过串口实现数据互传的应用实例 163

8.7 课后学习 168

第9章 稳扎稳打,步步为营:C语言的数组、字符串与按键的应用 169

9.1 夯实基础——C语言的数组、字符串 169

9.1.1 数组 169

9.1.2 字符串 170

9.2 IAP15W4K58S4单片机的可编程计数器阵列 171

9.2.1 CCP/PCA/PWM内部结构概述 171

9.2.2 CCP/PCA/PWM的捕获模式应用实例 172

9.2.3 CCP/PCA/PWM的16位软件定时器模式应用实例 173

9.2.4 CCP/PCA/PWM的高速脉冲输出模式应用实例 174

9.3 按键的处理方法 174

9.3.1 独立按键介绍 174

9.3.2 矩阵按键的组成 175

9.3.3 触摸按键概述 176

9.3.4 A/D采样方式的按键 177

9.4 独立按键扫描方法及消抖原理 178

9.4.1 独立按键的扫描方法 178

9.4.2 键盘消抖的基本原理 179

9.4.3 带消抖的按键应用程序 180

9.5 矩阵按键的扫描方法和状态机 181

9.5.1 矩阵按键的扫描方法 181

9.5.2 状态机概述 182

9.5.3 状态机法的按键检测 183

9.5.4 基于状态机的独立按键扫描法 184

9.6 按键扫描的应用实例 188

9.6.1 行扫描法的矩阵按键应用实例 189

9.6.2 高低电平翻转法的矩阵按键应用实例 193

9.6.3 基于状态机的矩阵按键应用实例 194

9.7 课后学习 195

第10章 包罗万象,森然洞天:C语言的函数与液晶的基本应用 196

10.1 夯实基础——C语言的函数 196

10.1.1 函数的定义和应用 196

10.1.2 函数的分类及命名规则 196

10.2 Keil5的软件仿真、硬件仿真及延时 198

10.2.1 基于Keil5的软件仿真应用实例 199

10.2.2 软件仿真与延时 203

10.2.3 基于Keil5与IAP系列单片机的硬件仿真应用实例 204

10.3 1602液晶的应用概述 206

10.3.1 1602液晶模组和电路设计 206

10.3.2 1602液晶的控制指令和时序图 208

10.3.3 1602液晶的基本应用实例 212

10.4 1602液晶的应用实例 215

10.4.1 1602液晶移屏指令 215

10.4.2 液晶CGRAM的操作实例 216

10.4.3 串口和1602液晶的综合应用实例 218

10.5 课后学习 226

第11章 沙场点兵,见风使舵:C语言的指针与LED点阵屏的应用 227

11.1 夯实基础——C语言的指针 227

11.1.1 指针的基本用法 227

11.1.2 指针与数组 228

11.1.3 指针与函数 230

11.2 同步串行外围接口(SPI)的应用概述 231

11.2.1 SPI介绍 231

11.2.2 单片机内部SPI的寄存器 232

11.2.3 SPI的数据通信方式与时序图 234

11.2.4 SPI的应用模式与串行Flash的应用实例 236

11.3 LED点阵屏的原理及应用 237

11.3.1 LED点阵屏的内部原理 237

11.3.2 LED点阵屏的硬件电路设计 238

11.3.3 LED点阵屏的基本显示实例 239

11.4 LED点阵屏的应用实例 241

11.4.1 通过移屏方式显示字符——I?U 241

11.4.2 LED点阵屏的移屏简易算法 246

11.5 课后学习 251

第三部分 中级篇 255

第12章 一脉相承,本源同宗:I2C总线与库开发 255

12.1 I2C总线的通信协议 255

12.1.1 对I2C总线的初步认识 255

12.1.2 I2C总线的时序格式 257

12.2 AT24C02的基本应用 259

12.2.1 AT24C02的简述和硬件电路设计 259

12.2.2 AT24C02的通信协议与时序图 260

12.2.3 基于AT24C02的I2C总线协议与软件分析 263

12.3 复合数据类型 268

12.3.1 结构体 268

12.3.2 枚举 270

12.3.3 typedef关键字的应用 271

12.4 STC15系列单片机内部E2PROM的应用 272

12.4.1 与单片机内部E2PROM有关的寄存器 272

12.4.2 单片机内部E2PROM的应用实例 274

12.5 库函数与应用实例 274

12.5.1 STC15系列库函数 274

12.5.2 库函数的应用实例 278

12.6 课后学习 290

第13章 重峦叠嶂,矩阵方形:PWM的初步认识与相关应用 291

13.1 PWM的初步认识 291

13.2 利用可编程计数阵列产生PWM 292

13.2.1 脉宽调制模式(PWM) 293

13.2.2 利用CCP/PCA输出PWM的应用实例 294

13.2.3 利用CCP/PCA高速脉冲输出功能实现两路PWM 296

13.2.4 用T0输出PWM 300

13.3 增强型高精度PWM的基本应用 304

13.3.1 与高精度PWM相关的功能寄存器 304

13.3.2 蜂鸣器和PWM的应用实例 307

13.3.3 LED灯和PWM的应用实例 308

13.4 常用的电动机驱动方式 310

13.4.1 对电动机驱动芯片L298的初步认识 310

13.4.2 H桥驱动电路简介 312

13.5 三种常用电动机的驱动方法 312

13.5.1 直流电动机 312

13.5.2 简易步进电动机及其应用 313

13.5.3 舵机的基本操作实例 317

13.6 课后学习 321

第14章 亦步亦趋,咫尺天涯:数模(D/A)与模数(A/D)的转换 322

14.1 D/A和A/D转换的初步介绍 322

14.1.1 D/A转换原理 322

14.1.2 A/D转换原理 325

14.2 STC15单片机内部的ADC 330

14.2.1 STC15系列单片机内部ADC的结构 330

14.2.2 与ADC有关的寄存器 332

14.2.3 ADC的简单应用实例 334

14.3 基于ADC的独立按键检测 339

14.4 电容感应式触摸按键(PWM+ADC) 340

14.5 基于PWM与RC滤波器的SPWM 345

14.6 课后学习 351

第15章 狂风暴雨,定海神针:逻辑分析仪与红外编解码 352

15.1 Saleae逻辑分析仪 352

15.1.1 示波器和逻辑分析仪的比较 352

15.1.2 逻辑分析仪的工作原理和分类 353

15.1.3 逻辑分析仪概述 355

15.1.4 Saleae逻辑分析仪的使用步骤 357

15.2 红外遥控的原理 361

15.3 红外解码过程分析 364

15.4 红外解码的具体实现例程 366

15.5 红外编码与发射的过程分析 374

15.6 红外编码与发射的应用例程 375

15.7 课后学习 376

第16章 有的放矢,运筹帷幄:RTX51 Tiny实时操作系统 377

16.1 实时操作系统概述 377

16.2 RTX51 Tiny操作系统 378

16.2.1 RTX51 Tiny操作系统概述 378

16.2.2 任务程序的分类 380

16.2.3 RTX51 Tiny的工作原理 381

16.2.4 RTX51 Tiny的配置 384

16.2.5 RTX51 Tiny的使用步骤 386

16.2.6 RTX51 Tiny的常用函数 388

16.3 RTX51 Tiny的应用实例 392

16.3.1 流星慧灯(基于RTX51 Tiny) 392

16.3.2 简易交通灯(基于RTX51 Tiny) 397

16.4 课后学习 401

第17章 按图索骥,彗泛画涂:PCB的基本知识与软件学习 402

17.1 PCB设计流程 402

17.2 PCB特性与设计规则 405

17.2.1 PCB板材类型 405

17.2.2 PCB布局与布线规则 406

17.2.3 PCB封装元件的线宽 408

17.3 绘制PCB的软件介绍 409

17.3.1 Altium Designer 2014使用方法 410

17.3.2 PADS 9.5 的使用过程 417

17.4 课后学习 427

第四部分 高级篇 431

第18章 范水模山,双管齐下:串口扩展与一键自动下载项目 431

18.1 软件模拟串口应用实例 431

18.1.1 使用定时器0软件模拟一个全双工串口 431

18.1.2 使用两路PCA模拟一个全双工串口 437

18.2 一键自动下载项目的功能要求与设计思想 442

18.3 一键自动下载项目的硬件电路设计 443

18.3.1 下载模式切换控制核心——STC15W104E 443

18.3.2 开关电路的设计 444

18.4 一键自动下载项目的软件编程 444

18.5 课后学习 452

第19章 地无遗利,心随你动:项目开发与多功能收音机 453

19.1 RDM项目管理作业流程 453

19.1.1 项目要求与需求分析 453

19.1.2 项目立项与评估 454

19.1.3 项目分工和总体的结构框架 455

19.2 技术准备与难关突破 456

19.3 温度传感器——LM75A 456

19.3.1 LM75A的寄存器列表 459

19.3.2 LM75A的I2C硬件接口电路 462

19.3.3 LM75A的通信协议与时序特性 462

19.3.4 LM75A的应用实例与软件分析 464

19.4 实时时钟——PCF8563T 465

19.4.1 PCF8563T的功能特点 465

19.4.2 PCF8563T的内部寄存器 467

19.4.3 PCF8563F的IC硬件接口电路 468

19.4.4 PCF8563F的通信协议与时序特性 469

19.5 程序总体框架和功能划分 469

19.6 各个子功能和总体程序的编写 470

19.7 课后学习 474

第20章 天上天下,唯它独尊:PID算法与四轴飞行器的设计 475

20.1 PID算法 475

20.1.1 PID算法概述 475

20.1.2 PID算法的分类与应用实例 478

20.1.3 位置式PID算法 482

20.2 四轴飞行器硬件模型的建立 486

20.2.1 搭建四轴飞行器的主板 486

20.2.2 搭建四轴飞行器的遥控器 492

20.3 四轴飞行器的软件算法 492

20.3.1 四轴飞行器的运行状况与电动机转动的关系 492

20.3.2 PID控制电动机的参数整定 494

20.3.3 四元数与滤波算法 496

20.4 四轴飞行器主板的综合程序 502

20.5 四轴飞行器遥控器的综合程序 532

20.6 课后学习 532

相关图书
作者其它书籍
返回顶部