STM32F4 开发板使用指南:通过 ST-Link 和 USB 转 TTL 下载代码及调试
前言
STM32F4 系列开发板是一个功能强大的微控制器开发平台,广泛用于嵌入式系统开发。为了能够在开发板上运行自己的代码,通常需要使用 ST-Link 进行调试和下载程序代码。本指南将详细介绍如何使用 ST-Link 和 USB 转 TTL 连接 STM32F4 开发板,进行代码烧录和调试。
所需设备
- STM32F4 开发板
- ST-Link(调试下载器)
- USB 转 TTL 模块
- 杜邦线(彩色小电线)x 8
- Arm Keil MDK 开发环境
0. 认识设备
ST-Link 调试器
ST-Link 是一种常见的调试和下载工具,专门为 STMicroelectronics 的 STM32 系列微控制器设计。它支持 SWD(Serial Wire Debug)和 JTAG 调试接口,能通过 USB 与 PC 连接,实现代码的烧录和在线调试。
USB 转 TTL 模块
USB 转 TTL 模块用于将 USB 接口信号转换为 UART 串口信号,适用于串口通信、下载程序或调试设备。
STM32F4 主板
STM32F4 系列开发板是一款基于 ARM Cortex-M4 内核的微控制器,具有强大的性能和丰富的外设,适用于多种嵌入式应用开发。
1. 连接线缆
连接 STM32F4 开发板与 ST-Link 和 USB 转 TTL 模块非常关键。请确保连接正确,避免损坏硬件。
ST-Link 连接
我们将使用四根杜邦线连接 ST-Link 和 STM32F4 主板:
1 - 3.3V
连接到 STM32F4 开发板的3.3V
(黄色线)2 - GND
连接到 STM32F4 开发板的GND
3 - SWDIO
连接到 STM32F4 开发板的SWDIO
4 - SWCLK
连接到 STM32F4 开发板的SWCLK
USB 转 TTL 连接
USB 转 TTL 模块需要另外四根杜邦线来完成连接。确保 TX 和 RX 连接相反,以便正确进行串口通信:
1 - 3.3V
-3.3V
(红色线)2 - TXD(USB)
-RX(主板)
3 - RXD(USB)
-TX(主板)
4 - GND
-GND
注意: TX 和 RX 通信连接必须相反,因为对主板来说,USB 转 TTL 的输出就是其输入。
最终连线图示
如下图所示,确保所有连线正确。如果连线错误,可能会导致硬件损坏,尤其要注意供电引脚(3.3V 和 GND)的连接。
2. 连接测试
在连接完成后,我们需要测试连接是否正常。测试需要使用 Arm Keil MDK
开发环境,这是一款用于开发、编译和调试 ARM 微控制器代码的 IDE。
软件安装
首先,确保你已经安装了 Arm Keil MDK
开发环境。可以在 Keil 官网 下载并安装。
配置调试选项
-
在 Keil MDK 中打开工程文件,选择
Options for Target
。 -
在
Debug
选项卡中选择ST-Link Debugger
。 -
点击
Settings
按钮,打开 ST-Link 配置界面。如果能正常检测到 ST-Link 设备,说明连接正常,可以继续下一步。
更新固件
如果出现设备未连接或者连接异常的情况,可以尝试更新 ST-Link 的固件:
-
连接设备并点击更新按钮。
-
如果固件不是最新版本,请选择更新并等待更新完成。
3. 下载代码
在确认连接和设备检测正常后,我们可以下载代码到 STM32F4 开发板。
编译代码
首先,在 Keil MDK 中编译程序,确保代码无误且能正常编译通过。
-
点击工具栏中的
Build
按钮,开始编译。 -
确认编译无误后,点击
LOAD
按钮,将代码下载到开发板。 -
下载过程中,可以看到左下角的进度条显示下载进度。
4. 启动设备
下载代码成功后,需要复位开发板以运行新下载的程序。
复位设备
-
点击 Keil MDK 中的
RESET
按钮,重置设备。 -
如果没有效果,请按下开发板上的复位键。
注意: 代码下载完成后必须复位设备,确保更改生效,否则可能无法运行新代码!
结论
通过以上步骤,我们成功地将代码下载到 STM32F4 开发板并验证了连接配置的正确性。ST-Link 和 USB 转 TTL 是进行 STM32 开发板代码调试的常用工具。了解这些基本操作,将有助于你更好地进行嵌入式开发,提升开发效率。
希望本指南能帮助你顺利配置你的 STM32 开发环境,避免因操作不当导致硬件损坏。Happy Coding!