stm32f103c8t6 boot0设置

STM32F103C8T6 的 BOOT0 设置主要决定芯片上电后的启动模式。日常正常运行程序时,将 BOOT0 接地(设为 0)即可;仅在需要通过串口下载程序时,才需将 BOOT0 接高电平(设为 1)。

启动模式对照表

STM32F103C8T6 的启动模式由 BOOT0 和 BOOT1 共同决定,具体如下:

BOOT0 BOOT1 启动模式 典型用途
0 X(0或1) 主闪存存储器 正常运行程序(最常用)
1 0 系统存储器 串口下载程序(ISP)
1 1 内置 SRAM 调试用,掉电丢失(极少用)

实际设置场景

场景一:正常运行与 SWD 调试

如果你使用 ST-Link 等工具通过 SWD 接口下载调试,或者程序已经烧录完毕准备运行,必须将 BOOT0 接到 GND(即设为 0)。此时 BOOT1 的状态无所谓,芯片会从 Flash 中启动你编写的程序。

场景二:串口下载程序

如果你手头没有 ST-Link,想用 USB 转 TTL 模块通过串口(USART1,PA9/PA10)给芯片烧录程序,需要:

  1. 将 BOOT0 设为 1 (接 3.3V),BOOT1 设为 0(接 GND)。

  2. 复位或重新上电,芯片会进入系统存储器中预置的 Bootloader 模式。

  3. 下载完成后,务必将 BOOT0 改回 0,再次复位,新程序才会开始运行。

关键注意点

  • 复位生效 :在通电状态下直接拨动跳线帽切换 BOOT0 通常不会立即生效,必须按下复位键或重新上电,芯片才会根据新的引脚电平重新选择启动区域。

  • 硬件连接 :在 Blue Pill 等常见核心板上,通常用跳线帽将 BOOT0 引脚与旁边的 0(GND)或 1(3.3V)标注端短接来实现设置。

相关推荐
黄俊懿1 小时前
【架构师从入门到进阶】第七章:缓存和存储的优化思路——第一节:缓存概述
数据结构·数据库·分布式·缓存·架构·系统架构·1024程序员节
BullSmall1 小时前
开源 AI 赋能测试技术架构方案
1024程序员节
Jsundoku1 小时前
第六章 深度学习 -- 循环神经网络
人工智能·深度学习·循环神经网络·1024程序员节
子非鱼@Itfuture1 小时前
1024这天,我们聊聊AI
1024程序员节
夜雪一千1 小时前
Linux 查找文件 & 搜索内容介绍
1024程序员节
小弥儿1 小时前
GitHub今日热榜 | 2026-10-24:智能体安全攻防同日上榜
1024程序员节
John_Hui1 小时前
MySQL 进阶知识
数据库·sql·mysql·1024程序员节
yma161 小时前
从零搭建 P2P 聊天室:yma16.cloud 在线工具实战
前端·1024程序员节
小码哥(^_^)1 小时前
人力资源面试题集1
eclipse·1024程序员节