
ALIENTEK 探索者 STM32F407 开发板教程
I
STM32F4 开发指南(寄存器版)
STM32F4 开发指南
V1.1 - 寄存器版本
−ALIENTEK 探索者 STM32F407 开发板教程

ALIENTEK 探索者 STM32F407 开发板教程
II
STM32F4 开发指南(寄存器版)
广州市星翼电子科技有限公司
淘宝店铺 1:http://eboard.taobao.com
淘宝店铺 2:http://openedv.taobao.com
技术支持论坛 (开源电子网) :www.openedv.com
官方网站:www.alientek.com
最新资料下载链接:http://www.openedv.com/posts/list/13912.htm
E-mail: [email protected] QQ: 389063473
咨询电话:020-38271790
传真号码:020-36773971
团队:正点原子团队
正点原子,做最全面、最优秀的嵌入式开发平台软硬件供应商。
友 情 提 示
如果您想及时免费获取“正点原子”最新资料,敬请关注正点原子
微信公众平台,我们将及时给您发布最新消息和重要资料。
关注方法:
(1)微信“扫一扫”,扫描右侧二维码,添加关注
(2)微信添加朋友公众号输入“正点原子”关注
(3)微信添加朋友输入“alientek_stm32” 关注

ALIENTEK 探索者 STM32F407 开发板教程
III
STM32F4 开发指南(寄存器版)
内容简介 ........................................................................................................................ I
前言 ................................................................................................................................ 2
第一篇 硬件篇 .............................................................................................................. 4
第一章 实验平台简介 .................................................................................................. 5
1.1 ALIENTEK 探索者 STM32F4 开发板资源初探 ................................................ 5
1.2 ALIENTEK 探索者 STM32F4 开发板资源说明 ................................................ 7
1.2.1 硬件资源说明 ................................................................................................... 7
1.2.2 软件资源说明 ................................................................................................. 12
1.2.3 探索者 IO 引脚分配 ...................................................................................... 13
第二章 实验平台硬件资源详解 ................................................................................ 18
2.1 开发板原理图详解 ............................................................................................ 18
2.1.1 MCU ................................................................................................................. 18
2.1.2 引出 IO 口 ....................................................................................................... 19
2.1.3 USB 串口/串口 1 选择接口 ............................................................................ 20
2.1.4 JTAG/SWD ....................................................................................................... 21
2.1.5 SRAM ............................................................................................................... 21
2.1.6 LCD 模块接口 ................................................................................................. 22
2.1.7 复位电路 ......................................................................................................... 23
2.1.8 启动模式设置接口 ......................................................................................... 23
2.1.9 RS232 串口 ...................................................................................................... 23
2.1.10 RS485 接口 .................................................................................................... 24
2.1.11 CAN/USB 接口 .............................................................................................. 25
2.1.12 EEPROM ........................................................................................................ 25
2.1.13 光敏传感器 ................................................................................................... 26
2.1.14 SPI FLASH ..................................................................................................... 26
2.1.15 六轴加速度传感器 ....................................................................................... 27
2.1.16 温湿度传感器接口 ....................................................................................... 27
2.1.17 红外接收头 ................................................................................................... 28
2.1.18 无线模块接口 ............................................................................................... 28
2.1.19 LED ................................................................................................................ 28
2.1.20 按键 ............................................................................................................... 29
2.1.21 TPAD 电容触摸按键 ..................................................................................... 29
2.1.22 OLED/摄像头模块接口 ................................................................................ 30

ALIENTEK 探索者 STM32F407 开发板教程
IV
STM32F4 开发指南(寄存器版)
2.1.23 有源蜂鸣器 ................................................................................................... 30
2.1.24 SD 卡接口 ...................................................................................................... 31
2.1.25 ATK 模块接口 ................................................................................................ 31
2.1.26 多功能端口 ................................................................................................... 32
2.1.27 以太网接口(RJ45) ................................................................................... 33
2.1.28 I2S 音频编解码器 .......................................................................................... 34
2.1.29 电源 ............................................................................................................... 34
2.1.30 电源输入输出接口 ....................................................................................... 35
2.1.31 USB 串口 ....................................................................................................... 36
2.2 开发板使用注意事项 ........................................................................................ 36
2.3 STM32F4 学习方法 ............................................................................................ 37
第二篇 软件篇 ............................................................................................................ 39
第三章 MDK5 软件入门 ............................................................................................ 40
3.1 MDK5 简介 ......................................................................................................... 40
3.2 新建 MDK5 工程 ............................................................................................... 41
3.3 MDK5 使用技巧 ................................................................................................. 55
3.3.1 文本美化 ......................................................................................................... 55
3.3.2 语法检测&代码提示 ...................................................................................... 57
3.3.3 代码编辑技巧 ................................................................................................. 59
3.3.4 其他小技巧 ..................................................................................................... 63
第四章 下载与调试 .................................................................................................... 66
4.1 STM32F4 程序下载 ............................................................................................ 66
4.2 STM32F4 在线调试 ............................................................................................ 72
第五章 SYSTEM 文件夹介绍 ................................................................................... 80
5.1 delay 文件夹代码介绍 ....................................................................................... 80
5.1.1 操作系统支持宏定义及相关函数 ................................................................. 81
5.1.2 delay_init 函数 ................................................................................................. 83
5.1.3 delay_us 函数 ................................................................................................... 84
5.1.4 delay_xms 函数 ................................................................................................ 86
5.1.5 delay_ms 函数 .................................................................................................. 86
5.2 sys 文件夹代码介绍 ........................................................................................... 88
5.2.1 IO 口的位操作实现 ......................................................................................... 88
5.2.2 时钟配置函数 ................................................................................................. 90

ALIENTEK 探索者 STM32F407 开发板教程
V
STM32F4 开发指南(寄存器版)
5.2.3 Sys_Soft_Reset 函数 ........................................................................................ 95
5.2.4 Sys_Standby 函数 ............................................................................................ 96
5.2.5 IO 设置函数 ..................................................................................................... 98
5.2.6 中断管理函数 ............................................................................................... 105
5.3 usart 文件夹介绍 .............................................................................................. 110
5.3.1 USART1_IRQHandler 函数............................................................................ 111
5.3.2 uart_init 函数 .................................................................................................. 112
第三篇 实战篇 .......................................................................................................... 115
第六章 跑马灯实验 .................................................................................................. 116
6.1 STM32F4 IO 简介 ............................................................................................ 117
6.2 硬件设计 .......................................................................................................... 117
6.3 软件设计 .......................................................................................................... 117
6.4 下载验证 .......................................................................................................... 121
第七章 蜂鸣器实验 .................................................................................................. 123
7.1 蜂鸣器简介 ...................................................................................................... 124
7.2 硬件设计 .......................................................................................................... 124
7.3 软件设计 .......................................................................................................... 125
7.4 下载验证 .......................................................................................................... 127
第八章 按键输入实验 .............................................................................................. 128
8.1 STM32F4 IO 口简介 ........................................................................................ 129
8.2 硬件设计 .......................................................................................................... 129
8.3 软件设计 .......................................................................................................... 129
8.4 下载验证 ........................................................................................................... 134
第九章 串口通信实验 .............................................................................................. 135
9.1 STM32F4 串口简介 .......................................................................................... 136
9.2 硬件设计 .......................................................................................................... 137
9.3 软件设计 .......................................................................................................... 138
9.4 下载验证 .......................................................................................................... 140
第十章 外部中断实验 .............................................................................................. 142
10.1 STM32F4 外部中断简介 ................................................................................ 143
10.2 硬件设计 ........................................................................................................ 143
10.3 软件设计 ........................................................................................................ 143
10.4 下载验证 ........................................................................................................ 146