单片机创新开发教程(基于STC8单片机)(微课版)

本书以国产新一代增强型51单片机STC8为载体,系统地讲述通过“天问Block”图形化编程工具来快速学习单片机开发与应用的新方式。
分享 推荐 0 收藏 11 阅读 1.2K
吴险峰 (作者) 978-7-115-59093-0

关于本书的内容有任何问题,请联系 王丽美

1.符合国家对教育的思政定位。单片机硬件和软件都是国产,STC是中国芯,在单片机教育行业影响深远。天问Block通过开源软件二次开发,将国产单片机功能充分体现出来。
2.互联网+教育创新模式。以前开发都是安装keil软件,需要破解也不合法。而本教材软件免费安装,开可以直接在线编程,而且平台本身也提供在线培训课程和论坛,方便学习交流。
3.提供软件仿真功能。本书为大部分案例提供了软件仿真,方便老师上课和实训。

内容摘要

本书以国产新一代增强型51 单片机STC8 为载体,系统地讲述通过“天问Block”图形化编程工具来快速学习单片机开发与应用的新方式。本书分为入门篇、基础篇和提高篇。入门篇将单片机开发的新模式和传统模式进行对比,介绍新开发模式的优势。新工具的图形化编程和互联网云编程方式,让零基础的单片机初学者能够更快入门。基础篇介绍STC8 单片机各类内部资源、常用外设(如LED 灯、独立按键和数码管等)。提高篇介绍单片机各类外设资源,包括I2C 总线、SPI 总线、单总线、并行总线和红外遥控等。
本书作为高职高专“双高计划”建设推荐教材和应用本科改革规划教材,适用于电子通信类、计算机类、机电类、自动化类等专业课程教学,也适合作为高校专业技能选修和职业技能培训教材。同时,本书非常适合用于零基础单片机爱好者自学入门,对单片机相关专业技术人员也有很高的使用价值。

目录

推荐序

目录

目录

入门篇

第1章 了解单片机传统开发 2
1.1 情境导入 2
1.2 学习目标 2
1.3 相关知识 2
1.3.1 什么是单片机 2
1.3.2 单片机能干什么 3
1.3.3 单片机的种类 3
1.3.4 为什么要学51系列单片机 3
1.3.5 单片机开发流程 4
1.3.6 单片机最小系统 5
1.3.7 单片机开发软件Keil µVision 6
1.3.8 单片机仿真软件Proteus 6
1.4 项目设计 6
任务 点亮LED灯 7
1.5 项目实现 8
1.5.1 Keil µVision编写代码 8
1.5.2 Proteus仿真实例 10
1.6 知识拓展—【案例】国产单片机机遇 13
1.7 强化练习 13

第2章 单片机开发新思路 14
2.1 情境导入 14
2.2 学习目标 14
2.3 相关知识 14
2.3.1 Keil µVision开发的特点 14
2.3.2 Arduino对51单片机的影响 15
2.3.3 图形化编程对单片机的影响 16
2.3.4 单片机学习新思路 17
2.3.5 天问Block的特点 17
2.3.6 天问Block的安装 18
2.3.7 天问Block主界面 19
2.3.8 图形块类型 21
2.3.9 天问Block基本操作 22
2.3.10 Keil µVision和天问Block的功能对比 27
2.4 项目设计 28
任务 点亮LED灯(天问Block编程) 28
2.5 项目实现 28
2.5.1 用天问Block编写代码 28
2.5.2 Proteus仿真实例 29
2.6 知识拓展—【案例】国产软件WPS的启示 29
2.7 强化练习 30

第3章 了解开发板 31
3.1 情境导入 31
3.2 学习目标 31
3.3 相关知识 31
3.3.1 51单片机标准架构 31
3.3.2 STC增强型51单片机 32
3.3.3 开发板硬件资源说明 33
3.3.4 快速理解硬件概念 34
3.3.5 STC8内核概述 36
3.3.6 兼容STC8内核的STC32 37
3.4 项目设计 38
任务 开发板演示 38
3.5 项目实现 39
3.5.1 开发板功能演示 39
3.5.2 使用STC-ISP软件下载 39
3.5.3 使用USB下载方式 41
3.6 知识拓展—【案例】天问开发板命名由来 42
3.7 强化练习 42

第4章
入门C语言 43
4.1 情境导入 43
4.2 学习目标 43
4.3 相关知识 43
4.3.1 C语言编程框架分析 43
4.3.2 控制指令 46
4.3.3 I/O口配置 47
4.3.4 LED发光原理 48
4.4 项目设计 49
任务1 P4_1输出高电平控制LED 49
任务2 P4_1输出高低电平控制LED灯闪烁 51
4.5 项目实现 52
4.5.1 开发板演示 52
4.5.2 Proteus仿真实例 52
4.6 知识拓展—
【人物】中国C语言教育专家— 谭浩强 54
4.7 强化练习 54

基础篇

第5章 GPIO控制流水灯 56
5.1 情境导入 56
5.2 学习目标 56
5.3 相关知识 56
5.3.1 数学与逻辑指令 56
5.3.2 进制和位运算 58
5.3.3 变量指令 58
5.3.4 文本与数组指令 59
5.3.5 函数指令 61
5.3.6 三极管在单片机的应用 62
5.4 项目设计 62
任务1 P6输出低电平控制LED 62
任务2 高低电平控制LED闪烁 63
任务3 三极管开关控制LED闪烁 64
任务4 写数值控制LED 64
任务5 写变量循环控制LED 64
任务6 移位控制LED流水灯 65
任务7 数组控制LED流水灯 65
任务8 其他方式实现LED流水灯 66
5.5 项目实现 67
5.5.1 开发板演示 67
5.5.2 Proteus仿真实例 67
5.6 知识拓展—【案例】黄光LED获得新突破 69
5.7 强化练习 69
第6章 使用独立按键 70
6.1 情境导入 70
6.2 学习目标 70
6.3 相关知识 70
6.3.1 独立按键 70
6.3.2 按键消抖 71
6.3.3 按键端口设置 71
6.3.4 按键检测方式 71
6.3.5 三极管开关和独立按键开关的区别 71
6.4 项目设计 72
任务1 KEY1按键控制P4_1-LED 72
任务2 KEY1按键变量自锁控制LED 73
任务3 KEY1按键等待弹起变量自锁控制LED 73
任务4 四按键变量自锁控制LED 74
任务5 四按键控制P6端口LED 75
6.5 项目实现 75
6.5.1 开发板演示 75
6.5.2 Proteus仿真实例 75
6.6 知识拓展—【案例】从实体按键到虚拟按键 76
6.7 强化练习 76

第7章使用中断 77
7.1 情境导入 77
7.2 学习目标 77
7.3 相关知识 77
7.3.1 中断概述 77
7.3.2 中断的优点 78
7.3.3 STC8H中断列表 78
7.3.4 外部中断 80
7.3.5 中断函数C语言调用 80
7.3.6 外部中断寄存器设置 81
7.4 项目设计 82
任务 KEY1按键中断控制LED 82
7.5 项目实现 83
7.5.1 开发板演示 83
7.5.2 Proteus仿真实例 83
7.6 知识拓展—【案例】中断的延迟处理 83
7.7 强化练习 83
第8章 使用定时器 84
8.1 情境导入 84
8.2 学习目标 84
8.3 相关知识 84
8.3.1 软件延时和定时器 84
8.3.2 定时器功能 85
8.3.3 定时器T0和T1相关寄存器 85
8.3.4 定时器编程步骤 87
8.3.5 定时器图形化指令 88
8.4 项目设计 88
任务1 定时器T0中断控制LED灯闪烁 89
任务2 定时器T0中断控制变量控制LED灯闪烁 89
任务3 定时器T0、T1、T2、T3、T4中断控制LED灯闪烁 90
8.5 项目实现 91
8.5.1 开发板演示 91
8.5.2 Proteus仿真实例 91
8.6 知识拓展—【案例】国产高精度时钟芯片加持“北斗” 93
8.7 强化练习 93

第9章 使用数码管 94
9.1 情境导入 94
9.2 学习目标 94
9.3 相关知识 94
9.3.1 LED数码管 94
9.3.2 动态显示 95
9.3.3 数码管图形化指令 96
9.3.4 74HC595移位缓存器 96
9.3.5 595图形化指令 97
9.4 项目设计 97
任务1 写数值点亮数码管 98
任务2 写数值控制数码管闪烁 99
任务3 595控制数码管 99
任务4 写变量位取反控制数码管 100
任务5 写数组显示字符 100
任务6 用595控制数码管显示1位 101
任务7 用595控制数码管循环显示 101
任务8 用595控制数码管动态显示8位数 102
任务9 数码管动态显示8位数 103
9.5 项目实现 104
9.5.1 开发板演示 104
9.5.2 Proteus仿真实例 104
9.6 知识拓展—【科普】从辉光数码管到LED数码管 107
9.7 强化练习 107

第10章 使用ADC 108
10.1 情境导入 108
10.2 学习目标 108
10.3 相关知识 108
10.3.1 ADC简介 108
10.3.2 ADC相关寄存器 109
10.3.3 ADC编程步骤 110
10.3.4 ADC图形化指令 111
10.3.5 ADC常用器件 111
10.4 项目设计 112
任务1 ADC检测电位器数码管显示 112
任务2 ADC检测光敏传感器数码管显示 114
10.5 项目实现 115
10.5.1 开发板演示 115
10.5.2 Proteus仿真实例 115
10.6 知识拓展—【科普】ADC在消费电子市场的应用 115
10.7 强化练习 116

第11章 使用PWM 117
11.1 情境导入 117
11.2 学习目标 117
11.3 相关知识 117
11.3.1 PWM原理 117
11.3.2 STC 3种硬件PWM比较 118
11.3.3 STC8H系列单片机的PWM模块 118
11.3.4 PWM相关寄存器 119
11.3.5 PWM编程 129
11.3.6 PWM图形化指令 131
11.3.7 蜂鸣器 131
11.4 项目设计 132
任务1 PWM调速电动机 132
任务2 PWM控制蜂鸣器 135
11.5 项目实现 135
11.6 知识拓展—【实验】爱国歌曲音乐盒制作 136
11.7 强化练习 136

第12章 使用串口 137
12.1 情境导入 137
12.2 学习目标 137
12.3 相关知识 137
12.3.1 串口概念 137
12.3.2 UART 138
12.3.3 STC8单片机串口结构 139
12.3.4 串口1的功能 139
12.3.5 串口编程步骤 141
12.3.6 串口图形化指令 141
12.3.7 串口输出函数printf 142
12.3.8 串口工具 143
12.4 项目设计 143
任务1 串口发送字符 143
任务2 串口发送字符串 144
任务3 串口发送数组 144
任务4 串口接收(查询) 145
任务5 串口接收(中断) 146
任务6 双串口透传 147
12.5 项目实现 147
12.5.1 开发板演示 147
12.5.2 Proteus仿真实例 147
12.6 知识拓展—【案例】国货之光CH340 149
12.7 强化练习 149

第13章 使用EEPROM 150
13.1 情境导入 150
13.2 学习目标 150
13.3 相关知识 150
13.3.1 EEPROM和Flash 150
13.3.2 STC8单片机的EEPROM结构 151
13.3.3 EEPROM图形化指令 151
13.4 项目设计 151
任务 EEPROM读写测试程序 152
13.5 项目实现 153
13.5.1 开发板演示 153
13.5.2 Proteus仿真实例 154
13.6 知识拓展—【科普】EEPROM的技术原理 154
13.7 强化练习 154

第14章使用比较器 155
14.1 情境导入 155
14.2 学习目标 155
14.3 相关知识 155
14.3.1 比较器 155
14.3.2 STC8H系列单片机的比较器结构 156
14.3.3 使用LVD功能检测工作电压(电池电压) 158
14.4 项目设计 158
任务 比较器测试 158
14.5 项目实现 159
14.6 知识拓展—【科普】掉电检测 159
14.7 强化练习 159

第15章 使用低功耗 160
15.1 情境导入 160
15.2 学习目标 160
15.3 相关知识 160
15.3.1 低功耗 160
15.3.2 STC8单片机的低功耗模式 161
15.4 项目设计 161
任务 低功耗模式外部中断唤醒 161
15.5 项目实现 163
15.6 知识拓展—【科普】低功耗和绿色节能 163
15.7 强化练习 163

第16章 使用看门狗 164
16.1 情境导入 164
16.2 学习目标 164
16.3 相关知识 164
16.3.1 看门狗 164
16.3.2 STC8单片机的看门狗结构 165
16.4 项目设计 166
任务 看门狗复位测试 166
16.5 项目实现 167
16.5.1 开发板演示 167
16.5.2 Proteus仿真实例 167
16.6 知识拓展—【案例】单片机看门狗机制的启示 168
16.7 强化练习 168

提高篇

第17章 使用I2C总线 170
17.1 情境导入 170
17.2 学习目标 170
17.3 相关知识 170
17.3.1 I2C简介 170
17.3.2 硬件I2C 172
17.3.3 软件I2C 173
17.3.4 I2C图形化指令 173
17.3.5 I2C和UART区别 173
17.3.6 RTC模块 173
17.3.7 OLED显示模块 174
17.3.8 QMA7981加速度模块 175
17.4 项目设计 175
任务1 用OLED显示屏显示 176
任务2 读取RTC时间数码管显示 179
任务3 I2C读写RTC时间 182
任务4 使用加速度传感器 183
17.5 项目实现 184
17.5.1 开发板演示 184
17.5.2 Proteus仿真实例 184
17.6 知识拓展—【科普】国产OLED驱动芯片取得突破 190
17.7 强化练习 190

第18章 使用SPI总线 191
18.1 情境导入 191
18.2 学习目标 191
18.3 相关知识 191
18.3.1 SPI概述 191
18.3.2 硬件SPI 192
18.3.3 图形化指令 193
18.3.4 I2C和SPI的区别 193
18.3.5 Flash模块 194
18.3.6 SD存储卡 194
18.4 项目设计 195
任务1 硬件SPI读取Flash的ID 195
任务2 Flash读写实验 197
任务3 读写SD卡 198
18.5 项目实现 200
18.6 知识拓展—【科普】Flash的存储结构 200
18.7 强化练习 201

第19章 使用单总线 202
19.1 情境导入 202
19.2 学习目标 202
19.3 相关知识 202
19.3.1 单总线技术 202
19.3.2 RGB彩灯模块 203
19.3.3 DHT11温湿度传感器 203
19.3.4 DS18B20温度传感器 204
19.4 项目设计 204
任务1 操作WS2812彩灯模块 205
任务2 OLED显示屏轮流显示温度和湿度 208
任务3 DS18B20实验 208
19.5 项目实现 209
19.5.1 开发板演示 209
19.5.2 Proteus仿真 209
19.6 知识拓展—【科普】DS18B20测温工作原理 216
19.7 强化练习 216

第20章 使用并行总线 217
20.1 情境导入 217
20.2 学习目标 217
20.3 相关知识 217
20.3.1 并行总线 217
20.3.2 LCD1602显示模块 218
20.3.3 LCD12864显示模块 219
20.3.4 TFT彩屏模块 220
20.4 项目设计 220
任务1 操作LCD1602模块 221
任务2 LCD12864模块显示 224
任务3 TFT彩屏实验 224
20.5 项目实现 225
20.5.1 开发板演示 225
20.5.2 Proteus仿真实例 225
20.6 知识拓展—【科普】触摸屏 227
20.7 强化练习 227

第21章 使用红外遥控 228
21.1 情境导入 228
21.2 学习目标 228
21.3 相关知识 228
21.3.1 红外线 228
21.3.2 红外遥控 229
21.3.3 红外NEC协议 230
21.3.4 红外信号调制 230
21.4 项目设计 231
任务1 独立按键KEY1按下发送红外数据 231
任务2 数码管显示接收到的红外键码 232
21.5 项目实现 234
21.5.1 开发板演示 234
21.5.2 Proteus仿真实例 234
21.6 知识拓展—【人物】黄立:打造红外“中国芯” 241
21.7 强化练习 241

第22章 综合项目 242
22.1 情境导入 242
22.2 学习目标 242
22.3 相关知识 242
22.3.1 点阵模块 242
22.3.2 矩阵键盘模块 243
22.4 项目设计 244
任务1 点阵显示爱心 245
任务2 矩阵键盘按键值显示 247
任务3 开发板综合测试程序 248
22.5 项目实现 252
22.5.1 开发板演示 252
22.5.2 Proteus仿真实例 252
22.6 知识拓展—【科普】软件工程思想 255
22.7 强化练习 256

第23章 使用天问Block高级技能 257
23.1 情境导入 257
23.2 学习目标 257
23.3 相关知识 257
23.3.1 Keil仿真 257
23.3.2 无线下载器 258
23.3.3 天问51-Mini开发板 259
23.4 项目1 将天问Block代码导入Keil中仿真 259
23.4.1 将天问Block代码导入Keil 259
23.4.2 仿真环境设置 260
23.4.3 仿真基本操作 263
23.5 项目2 图形化编程扩展库制作 264
23.5.1 库的添加和库开发工具 265
23.5.2 新建库流程 266
23.5.3 生成图形化指令默认值和下拉引脚值 268
23.6 项目3 STC-LINK-WIFI下载器使用 269
23.6.1 配网 269
23.6.2 绑定设备 272
23.6.3 编译下载 273
23.7 项目4 使用天问51-Mini开发板 273
23.8 知识拓展—【案例】乐鑫科技为物联网打造中国芯 273
23.9 强化练习 274

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

吴险峰,华中科技大学模式识别与智能系统专业博士,高级工程师。广东省嵌入式示范基地负责人,广东省优秀创业导师、ARM技术培训认证讲师、中国计算机协会会员、深圳自动化学会评审专家。曾在某跨国通讯企业工作多年,现为深圳信息职业技术学院嵌入式专业教师,讲授单片机和嵌入式相关课程,出版教材多本。

相关图书

人邮微信
本地服务
人邮微信
教师服务
微信二维码
读者服务
读者服务
返回顶部
返回顶部