stlink和stm32f103c8t6连接
时间: 2025-05-10 09:29:32 浏览: 34
### 正确连接ST-Link与STM32F103C8T6的方法
为了实现ST-Link调试工具与STM32F103C8T6微控制器之间的正确连接,需按照以下方法操作:
#### 引脚对应关系
在硬件层面,ST-Link与STM32F103C8T6的引脚连接如下表所示[^1]:
| ST-Link | STM32F103C8T6 |
|---------|---------------|
| 3.3V | 3.3V |
| SWDIO | PA13 (SWDIO) |
| SWCLK | PA14 (SWCLK) |
| GND | GND |
需要注意的是,在烧录程序时,必须将`BOOT0`引脚拉高(即连接到3.3V),以便进入系统存储器模式;而在正常运行程序时,则需要将`BOOT0`引脚拉低(接地)[^2]。
---
#### 软件配置流程
以下是通过Keil软件完成ST-Link与STM32F103C8T6配合使用的具体步骤:
1. **打开项目并设置Debug选项**
打开Keil IDE后,点击菜单栏中的“Options for Target”,切换至“Debug”标签页。在“Use”下拉框中选择“ST-Link Debugger”作为目标调试设备。
2. **调整接口参数**
继续点击“Setting”按钮,在弹出窗口内的“Port”部分选择“SW”(Serial Wire Debug模式)。这种模式相较于JTAG更加高效且占用更少的GPIO资源[^3]。
3. **额外功能启用**
前往“Flash Download”子页面勾选“Reset and Run”选项,确保每次下载完成后自动重启芯片执行新固件[^4]。
4. **启动编程过程**
完成上述所有设定之后,只需按下工具条上的“Download”图标即可开始向目标单片机传输编译好的HEX文件。
---
```python
# 示例Python代码用于模拟简单的串口通信测试
import serial
ser = serial.Serial('COM3', baudrate=9600, timeout=1)
if ser.is_open:
print("串口已开启")
else:
print("无法打开指定串口")
data_to_send = b'Hello STM32!'
bytes_sent = ser.write(data_to_send)
print(f"{bytes_sent} 字节被发送.")
response = ser.read(10).decode()
print(f"收到的数据: {response}")
ser.close()
```
---
阅读全文
相关推荐




















