stm32的BOOT1和BOOT0电路设计及应用

在使用stm32作为主控芯片的电路板时,如果选择串口烧录程序,就需要切换BOOT0的高低电平,在此做个总结。
先看看官方文档里面,关于BOOT0和BOOT1的定义:
stm32的BOOT1和BOOT0电路设计及应用_第1张图片

我们在keil5中写好代码,编译通过后,想通过串口烧录软件(比如mcuisp)将可执行文件.hex烧录至芯片中,并得到预期的效果,则

  1. 需要将电路板上的BOOT1置0,BOOT0置1,然后按复位按键。(此时芯片加载系统存储器中预置的Bootloader,使得芯片能够通过串口从上位机烧录程序进Flash)
    注:系统存储器是一块ROM,出厂后无法修改,其中存储的是出厂即设置好的Bootloader程序。
  2. 烧录完程序后,需要将电路板上的BOOT1置0(表格中是BOOT1闲置,设为0一样可以),BOOT0置0,并按一下复位按钮,系统就开始执行Flash(主闪存存储器)中刚刚烧录进来的程序

综上,实际中硬件电路设计将BOOT1接地,BOOT0通过一个header在电路板上预留高低电平接口,通过跳帽进行切换。
在这里插入图片描述

stm32的BOOT1和BOOT0电路设计及应用_第2张图片

你可能感兴趣的:(嵌入式)