第1章 STM32基础知识 1
1.1 KEIL软件安装及使用 1
1.1.1 实验目的 1
1.1.2 实验环境 1
1.1.3 实验原理 1
1.1.4 实验步骤 1
1.2 初识HAL库 3
1.2.1 实验目的 3
1.2.2 实验环境 4
1.2.3 实验步骤 4
1.3 用STM32CubeMX创建工程模板 5
1.3.1 实验目的 5
1.3.2 实验环境 5
1.3.3 实验原理 5
1.3.4 实验步骤 5
1.4 C语言基础复习 12
1.4.1 实验目的 12
1.4.2 实验环境 12
1.4.3 实验原理 12
1.4.4 实验步骤 12
1.5 STM32系统时钟介绍 14
1.5.1 实验目的 14
1.5.2 实验环境 14
1.5.3 实验原理 15
1.6 NVIC 17
1.6.1 实验目的 17
1.6.2 实验环境 17
1.6.3 实验原理 17
第2章 主板基础实验 25
2.1 LED控制实验 25
2.1.1 实验目的 25
2.1.2 实验环境 25
2.1.3 实验原理 25
2.1.4 实验步骤 32
2.2 按键扫描实验 40
2.2.1 实验目的 40
2.2.2 实验环境 40
2.2.3 实验原理 40
2.2.4 实验步骤 44
2.3 矩阵按键扫描实验 44
2.3.1 实验目的 44
2.3.2 实验环境 44
2.3.3 实验原理 45
2.3.4 实验步骤 47
2.4 蜂鸣器驱动实验 48
2.4.1 实验目的 48
2.4.2 实验环境 48
2.4.3 实验原理 48
2.4.4 实验步骤 51
2.5 外部中断实验 53
2.5.1 实验目的 53
2.5.2 实验环境 53
2.5.3 实验原理 53
2.5.4 实验步骤 60
2.6 SysTick定时器和系统时钟 61
2.6.1 实验目的 61
2.6.2 实验环境 61
2.6.3 实验原理 61
2.6.4 实验步骤 64
2.7 定时器中断实验 64
2.7.1 实验目的 64
2.7.2 实验环境 64
2.7.3 实验原理 64
2.7.4 实验步骤 76
2.8 定时器输出PWM实现呼吸灯现象实验 76
2.8.1 实验目的 76
2.8.2 实验环境 76
2.8.3 实验原理 76
2.8.4 实验步骤 86
2.9 串口通信实验 86
2.9.1 实验目的 86
2.9.2 实验环境 86
2.9.3 实验原理 86
2.9.4 实验步骤 95
2.10 printf()重定向实验 96
2.10.1 实验目的 96
2.10.2 实验环境 96
2.10.3 实验原理 96
2.10.4 实验步骤 98
2.11 Flash通信实验 98
2.11.1 实验目的 98
2.11.2 实验环境 99
2.11.3 实验原理 99
2.11.4 实验步骤 105
2.12 AD采集实验 106
2.12.1 实验目的 106
2.12.2 实验环境 106
2.12.3 实验原理 106
2.12.4 实验步骤 112
2.13 DA采集实验 113
2.13.1 实验目的 113
2.13.2 实验环境 113
2.13.3 实验原理 113
2.13.4 实验步骤 117
2.14 IIC实验 118
2.14.1 实验目的 118
2.14.2 实验环境 118
2.14.3 实验原理 118
2.14.4 实验步骤 125
2.15 内部温度传感器实验 126
2.15.1 实验目的 126
2.15.2 实验环境 126
2.15.3 实验原理 126
2.15.4 实验步骤 131
2.16 RTC实时时钟实验 131
2.16.1 实验目的 131
2.16.2 实验环境 131
2.16.3 实验原理 132
2.16.4 实验步骤 135
2.17 独立看门狗实验 136
2.17.1 实验目的 136
2.17.2 实验环境 136
2.17.3 实验原理 137
2.17.4 实验步骤 140
2.18 窗口看门狗实验 141
2.18.1 实验目的 141
2.18.2 实验环境 141
2.18.3 实验原理 141
2.18.4 实验步骤 146
第3章 主板显示模块实验 148
3.1 16×16点阵LED扫描显示实验 148
3.1.1 实验目的 148
3.1.2 实验环境 148
3.1.3 实验原理 148
3.1.4 实验步骤 157
3.2 数码管显示实验 157
3.2.1 实验目的 157
3.2.2 实验环境 157
3.2.3 实验原理 158
3.2.4 实验步骤 166
3.3 OLED显示实验 166
3.3.1 实验目的 166
3.3.2 实验环境 166
3.3.3 实验原理 166
3.3.4 实验步骤 173
3.4 HMI串口LCD显示实验 173
3.4.1 实验目的 173
3.4.2 实验环境 173
3.4.3 实验原理 173
3.4.4 实验步骤 178
3.5 LCD12864显示实验 178
3.5.1 实验目的 178
3.5.2 实验环境 178
3.5.3 实验原理 179
3.5.4 实验步骤 183
3.6 LCD1602显示实验 183
3.6.1 实验目的 183
3.6.2 实验环境 183
3.6.3 实验原理 184
3.6.4 实验步骤 189
3.7 旋转编码器驱动实验 189
3.7.1 实验目的 189
3.7.2 实验环境 189
3.7.3 实验原理 189
3.7.4 实验步骤 192
3.8 电机测速实验 192
3.8.1 实验目的 192
3.8.2 实验环境 193
3.8.3 实验原理 193
3.8.4 实验步骤 199
第4章 扩展传感器实验 200
4.1 温度传感器实验 200
4.1.1 实验目的 200
4.1.2 实验环境 200
4.1.3 实验原理 200
4.1.4 实验步骤 207
4.2 温湿度传感器实验 208
4.2.1 实验目的 208
4.2.2 实验环境 208
4.2.3 实验原理 208
4.2.4 实验步骤 215
4.3 超声波测距实验 215
4.3.1 实验目的 215
4.3.2 实验环境 215
4.3.3 实验原理 216
4.3.4 实验步骤 218
4.4 24C02实验 219
4.4.1 实验目的 219
4.4.2 实验环境 219
4.4.3 实验原理 219
4.4.4 实验步骤 228
4.5 光强度传感器实验 229
4.5.1 实验目的 229
4.5.2 实验环境 229
4.5.3 实验原理 229
4.5.4 实验步骤 238
4.6 MPU6050实验 238
4.6.1 实验目的 238
4.6.2 实验环境 238
4.6.3 实验原理 238
4.6.4 实验步骤 248
第5章 扩展项目实验 250
5.1 模拟电梯实验 250
5.1.1 实验目的 250
5.1.2 实验环境 250
5.1.3 实验原理 250
5.1.4 实验步骤 251
5.2 多功能时钟实验 253
5.2.1 实验目的 253
5.2.2 实验环境 253
5.2.3 实验原理 253
5.2.4 实验步骤 255
5.3 密码锁实验 257
5.3.1 实验目的 257
5.3.2 实验环境 257
5.3.3 实验原理 257
5.3.4 实验步骤 258
5.4 迷宫游戏实验 259
5.4.1 实验目的 259
5.4.2 实验环境 259
5.4.3 实验原理 259
5.4.4 实验步骤 262
第6章 世赛真题实验――交通信号灯 267
6.1 简介 267
6.2 任务描述 267
6.3 实验说明 267
6.4 编程任务 269