STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
STM32F1 开发指南 
V1.2(精英板-库函数版本) 
−ALIENTEK 精英 STM32F103 开发板教程 
 
I 
 
 
 
 
 
 
STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
广州市星翼电子科技有限公司                         
淘宝店铺:http://eboard.taobao.com   
技术支持论坛  (开源电子网)  :www.openedv.com 
官方网站:www.alientek.com 
最新资料下载链接:http://www.openedv.com/posts/list/13912.htm 
E-mail: 389063473@qq.com       
QQ: 389063473 
咨询电话:020-38271790 
团队:正点原子团队 
正点原子,做最全面优秀的嵌入式开发平台软硬件供应商。 
 
 
 
友  情  提  示 
   
如果您想及时免费获取“正点原子”最新资料,敬请关注正点原子 
 
 
 
 
 
 
 
 
 
 
 
 
微信公众平台。我们将实时给您发布重大资料发布消息。 
关注方法: 
(1)微信“扫一扫”,扫描右侧二维码,添加关注 
(2)微信→添加朋友→公众号→输入“正点原子”→关注 
(3)微信→添加朋友→输入“alientek_stm32” →关注 
II 
 
STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
 
内容简介 ...................................................................................................................... 14 
前言 .............................................................................................................................. 15 
第一篇  硬件篇 ............................................................................................................ 17 
第一章  实验平台简介 ................................................................................................ 18 
1.1 ALIENTEK 精英 STM32F103 资源初探 .......................................................... 18 
1.2 ALIENTEK 精英 STM32F103 资源说明 .......................................................... 20 
1.2.1  硬件资源说明 ................................................................................................. 20 
1.2.2  软件资源说明 ................................................................................................. 24 
1.2.3  精英板 IO 引脚分配 ....................................................................................... 25 
1.3 ALIENTEK 精英板与战舰板  V3.0 对比 .......................................................... 28 
第二章  实验平台硬件资源详解 ................................................................................ 30 
2.1  开发板原理图详解 ............................................................................................ 30 
2.1.1 MCU ................................................................................................................. 30 
2.1.2  引出 IO 口 ....................................................................................................... 32 
2.1.3 USB 串口/串口 1 选择接口 ............................................................................ 32 
2.1.4 JTAG/SWD ....................................................................................................... 33 
2.1.5 LCD 模块接口 ................................................................................................. 33 
2.1.6  复位电路 ......................................................................................................... 34 
2.1.7  启动模式设置接口 ......................................................................................... 34 
2.1.8 R485 选择接口 ................................................................................................ 35 
2.1.9 RS485 接口 ...................................................................................................... 35 
2.1.10 CAN/USB 接口 .............................................................................................. 35 
2.1.11 EEPROM ........................................................................................................ 36 
2.1.12  光敏传感器 ................................................................................................... 36 
2.1.13 SPI FLASH ..................................................................................................... 37 
2.1.14  温湿度传感器接口 ....................................................................................... 37 
2.1.15  红外接收头 ................................................................................................... 38 
2.1.16  无线模块接口 ............................................................................................... 38 
2.1.17 LED ................................................................................................................ 38 
2.1.18  按键 ............................................................................................................... 39 
2.1.19 TPAD 电容触摸按键 ..................................................................................... 39 
2.1.20 OLED/摄像头模块接口 ................................................................................ 40 
 
III 
 
STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
2.1.21  有源蜂鸣器 ................................................................................................... 40 
2.1.22 SD 卡接口 ...................................................................................................... 41 
2.1.23 ATK 模块接口 ................................................................................................ 41 
2.1.24 AD/DA 组合接口 ........................................................................................... 42 
2.1.25  电源 ............................................................................................................... 42 
2.1.26  电源输入输出接口 ....................................................................................... 43 
2.1.27 USB 串口 ....................................................................................................... 43 
2.2 开发板使用注意事项 ......................................................................................... 44 
2.3 STM32F103 学习方法 ........................................................................................ 45 
第二篇  软件篇 ............................................................................................................ 47 
第三章  MDK5 软件入门 ............................................................................................ 48 
3.1 STM32 官方固件库简介 .................................................................................... 48 
3.1.1 库开发与寄存器开发的关系 ........................................................................ 48 
3.1.2 STM32 固件库与 CMSIS 标准讲解 ............................................................. 49 
3.1.3 STM32 官方库包介绍 ................................................................................... 50 
3.1.3.1  文件夹介绍: .............................................................................................. 51 
3.1.3.2  关键文件介绍: .......................................................................................... 52 
3.2 MDK5 简介 ......................................................................................................... 53 
3.3 新建基于固件库的 MDK5 工程模板 ................................................................ 54 
3.4 程序下载与调试 ................................................................................................. 76 
3.4.1 STM32F1 软件仿真 ......................................................................................... 76 
3.4.2 STM32 串口程序下载 ..................................................................................... 82 
3.4.3  使用 ST-LINK 下载与调试程序 .................................................................... 87 
3.5 MDK5 使用技巧 ................................................................................................. 91 
3.5.1  文本美化 ......................................................................................................... 92 
3.5.2  语法检测&代码提示 ...................................................................................... 95 
3.5.3  代码编辑技巧 ................................................................................................. 96 
3.5.4  其他小技巧 ................................................................................................... 100 
第四章 STM32 开发基础知识入门 .......................................................................... 103 
4.1 MDK 下 C 语言基础复习 ................................................................................ 103 
4.1.1  位操作 ........................................................................................................... 103 
4.1.2 define 宏定义 ................................................................................................. 104 
4.1.3 ifdef 条件编译 ................................................................................................ 104 
 
IV 
 
STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
4.1.4 extern 变量申明 ............................................................................................. 105 
4.1.5 typedef 类型别名 ........................................................................................... 106 
4.1.6  结构体 ........................................................................................................... 106 
4.2 STM32 系统架构 .............................................................................................. 108 
4.3 STM32 时钟系统 .............................................................................................. 109 
4.4  端口复用和重映射 .......................................................................................... 113 
4.4.1 端口复用功能 ................................................................................................ 113 
4.4.2 端口重映射 .................................................................................................... 114 
4.5 STM32 NVIC 中断优先级管理 ....................................................................... 115 
4.6 MDK 中寄存器地址名称映射分析 ................................................................. 118 
4.7 MDK 固件库快速组织代码技巧 ..................................................................... 120 
第五章  SYSTEM 文件夹介绍 ................................................................................. 126 
5.1 delay 文件夹代码介绍 ..................................................................................... 126 
5.1.1  操作系统支持宏定义及相关函数 ............................................................... 127 
5.1.2delay_init 函数 ................................................................................................ 129 
5.1.3 delay_us 函数 ................................................................................................. 130 
5.1.4 delay_ms 函数 ................................................................................................ 132 
5.2 sys 文件夹代码介绍 ......................................................................................... 133 
5.2.1    IO 口的位操作实现 .................................................................................... 133 
5.3 usart 文件夹介绍 .............................................................................................. 135 
5.3.1 printf 函数支持 .............................................................................................. 135 
5.3.2 uart_init 函数 .................................................................................................. 136 
5.3.3 USART1_IRQHandler 函数........................................................................... 139 
第三篇  实战篇 .......................................................................................................... 141 
第六章  跑马灯实验 .................................................................................................. 142 
6.1 STM32 IO 简介 ................................................................................................. 143 
6.2  硬件设计 .......................................................................................................... 149 
6.3  软件设计 .......................................................................................................... 150 
6.4  仿真与下载 ...................................................................................................... 155 
第七章  蜂鸣器实验 .................................................................................................. 158 
7.1  蜂鸣器简介 ...................................................................................................... 159 
7.2  硬件设计 .......................................................................................................... 159 
7.3  软件设计 .......................................................................................................... 160 
 
V 
 
STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
7.4  仿真与下载 ...................................................................................................... 162 
第八章  按键输入实验 .............................................................................................. 164 
8.1 STM32 IO 口简介 ............................................................................................. 165 
8.2  硬件设计 .......................................................................................................... 165 
8.3  软件设计 .......................................................................................................... 165 
8.4  仿真与下载 ...................................................................................................... 168 
第九章  串口实验 ...................................................................................................... 173 
9.1 STM32 串口简介 .............................................................................................. 174 
9.2  硬件设计 .......................................................................................................... 176 
9.3  软件设计 .......................................................................................................... 177 
9.4  下载验证 .......................................................................................................... 180 
第十章  外部中断实验 .............................................................................................. 183 
10.1 STM32 外部中断简介 .................................................................................... 184 
10.2  硬件设计 ........................................................................................................ 187 
10.3  软件设计 ........................................................................................................ 187 
10.4  下载验证 ........................................................................................................ 189 
第十一章  独立看门狗(IWDG)实验 ................................................................... 190 
11.1 STM32 独立看门狗简介 ................................................................................ 191 
11.2  硬件设计 ........................................................................................................ 192 
11.3  软件设计 ........................................................................................................ 192 
11.4  下载验证 ........................................................................................................ 194 
第十二章  窗口门狗(WWDG)实验 ..................................................................... 195 
12.1 STM32F1 窗口看门狗简介 ............................................................................ 196 
12.2  硬件设计 ........................................................................................................ 198 
12.3  软件设计 ........................................................................................................ 198 
12.4  下载验证 ........................................................................................................ 200 
第十三章  定时器中断实验 ...................................................................................... 201 
13.1 STM32 通用定时器简介 ................................................................................ 202 
13.2  硬件设计 ........................................................................................................ 207 
13.3  软件设计 ........................................................................................................ 207 
13.4  下载验证 ........................................................................................................ 209 
第十四章  PWM 输出实验 ........................................................................................ 210 
 
VI 
 
STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
14.1 PWM 简介 ....................................................................................................... 211 
14.2  硬件设计 ........................................................................................................ 214 
14.3  软件设计 ........................................................................................................ 214 
14.4  下载验证 ........................................................................................................ 216 
第十五章  输入捕获实验 .......................................................................................... 217 
15.1  输入捕获简介 ................................................................................................ 218 
15.2  硬件设计 ........................................................................................................ 222 
15.3  软件设计 ........................................................................................................ 222 
15.4  下载验证 ........................................................................................................ 226 
第十六章  电容触摸按键实验 .................................................................................. 228 
16.1  电容触摸按键简介 ........................................................................................ 229 
16.2  硬件设计 ........................................................................................................ 230 
16.3  软件设计 ........................................................................................................ 230 
16.4  下载验证 ........................................................................................................ 235 
第十七章  OLED 显示实验 ...................................................................................... 236 
17.1 OLED 简介 ..................................................................................................... 237 
17.2  硬件设计 ........................................................................................................ 243 
17.3  软件设计 ........................................................................................................ 244 
17.4  下载验证 ........................................................................................................ 251 
第十八章  TFTLCD 显示实验 .................................................................................. 253 
18.1 TFTLCD&FSMC 简介 ................................................................................... 254 
18.1.1 TFTLCD 简介 .............................................................................................. 254 
18.1.2 FSMC 简介 .................................................................................................. 259 
18.2  硬件设计 ........................................................................................................ 268 
18.3  软件设计 ........................................................................................................ 269 
18.4  下载验证 ........................................................................................................ 280 
第十九章  USMART 调试组件实验 ......................................................................... 281 
19.1 USMART 调试组件简介 ................................................................................ 282 
19.2  硬件设计 ........................................................................................................ 285 
19.3  软件设计 ........................................................................................................ 285 
19.4  下载验证 ........................................................................................................ 289 
第二十章  RTC 实时时钟实验 .................................................................................. 293 
20.1 STM32F1 RTC 时钟简介 ............................................................................... 294 
 
VII 
 
STM32F1 开发指南(精英板-库函数版) 
ALIENTEK 精英 STM32F103  V1 开发板教程 
 
20.2  硬件设计 ........................................................................................................ 300 
20.3  软件设计 ........................................................................................................ 300 
20.4  下载验证 ........................................................................................................ 307 
第二十一章  待机唤醒实验 ...................................................................................... 308 
21.1 STM32 待机模式简介 .................................................................................... 309 
21.2  硬件设计 ........................................................................................................ 312 
21.3  软件设计 ........................................................................................................ 312 
21.4  下载与测试 .................................................................................................... 315 
第二十二章  ADC 实验 ............................................................................................. 316 
22.1 STM32 ADC 简介 .......................................................................................... 317 
22.2  硬件设计 ........................................................................................................ 325 
22.3  软件设计 ........................................................................................................ 325 
22.4  下载验证 ........................................................................................................ 328 
第二十三章  内部温度传感器实验 .......................................................................... 329 
23.1 STM32  内部温度传感器简介 ....................................................................... 330 
23.2  硬件设计 ........................................................................................................ 330 
23.3  软件设计 ........................................................................................................ 330 
23.4  下载验证 ........................................................................................................ 333 
第二十四章  光敏传感器实验 .................................................................................. 334 
24.1  光敏传感器简介 ............................................................................................ 335 
24.2  硬件设计 ........................................................................................................ 335 
24.3  软件设计 ........................................................................................................ 336 
24.4  下载验证 ........................................................................................................ 337 
第二十五章  DAC 实验 ............................................................................................. 338 
25.1 STM32 DAC 简介 .......................................................................................... 339 
25.2  硬件设计 ........................................................................................................ 343 
25.3  软件设计 ........................................................................................................ 344 
25.4  下载验证 ........................................................................................................ 347 
第二十六章  DMA 实验 ............................................................................................ 349 
26.1 STM32 DMA 简介 .......................................................................................... 350 
26.2  硬件设计 ........................................................................................................ 355 
26.3  软件设计 ........................................................................................................ 355 
26.4  下载验证 ........................................................................................................ 358 
 
VIII