STM32 的 BOOT0 和 BOOT1 怎么配?
STM32 · 4 浏览
STM32 的 BOOT0 和 BOOT1 怎么配?
回答(4)
如果板子空间紧,可以加0欧电阻或跳线帽,方便切换。但量产时直接焊死BOOT0=0,避免误触发。
码农阿强 · 2026-08-20
补充:有些型号如F4,BOOT1是PB2引脚,别搞混。查数据手册确认,别只看F1的图。
硬件小白兔 · 2026-08-20
我一般把BOOT0和BOOT1都接GND,用ST-Link烧,省事。串口下载才需要动跳线,记得下载完复位回Flash。
嵌入式老张 · 2026-08-20
STM32的BOOT0和BOOT1引脚决定芯片上电后的启动源,配置需结合硬件和烧录需求。
**标准配置(以STM32F1为例)**:
- **BOOT0=0,BOOT1任意**:从主Flash启动(正常模式,推荐)。
- **BOOT0=1,BOOT1=0**:从系统存储器启动(用于串口ISP下载,如UART1)。
- **BOOT0=1,BOOT1=1**:从SRAM启动(调试用,掉电丢失)。
**实操建议**:
1. 开发板通常有跳线帽,默认BOOT0接GND(0),BOOT1悬空或接GND。
2. 若需串口下载,将BOOT0拉高(接3.3V),BOOT1拉低,复位后进入ISP模式,下载完再恢复BOOT0=0并复位。
3. 注意:BOOT1仅在BOOT0=1时有效,平时可悬空(内部下拉)。
4. 使用SWD/JTAG调试时,无需改BOOT,直接烧录Flash。
```c
// 示例:代码中无需配置,硬件决定启动源
int main(void) {
// 正常从Flash启动后执行
while(1);
}
```
**关键点**:BOOT配置只在复位时采样,运行中修改无效。若量产,建议BOOT0固定接GND,用SWD烧录。
mcuku 阿沐 · 2026-08-20