stm32下载电路

这里写图片描述
从上图可以看出有两种启动方式,第一种是利用BOOT0物理脚和Nboot1、Boot_Sel选项位来确定启动模式;第二种只使用Boot_Sel、Nboot1 、Nboot0 三个选项位来确定启动模式,完全省却了物理脚,多出一根脚给用户应用。
对于第一种配置方式,所有STM32F0系列的芯片都适用。第二种配置方式仅适用于STM32F04X和STM32F09X系列的器件。
显然,从其出厂的默认初始值可以看出,Nboot0、Nboot1、Boot_Sel选项位的默认值均为1,即默认为第一种配置方式。
如果此时BOOT0脚为1则从system memory启动,即从芯片内嵌的BOOTLOADER启动。
如果此时BOOT0脚为0,则从main flash memory启动,进入用户程序。
这里简单说一下串口下载的步骤:
1. 把boot0接v3.3
2. 按一下复位键
通过这两个步骤,我们就可以通过串口下载代码了,下载完成之后,如果没有设置从0X08000000 开始运行,则代码不会立即运行,此时,你还需要把 B0 接回 GND,然后再按一次复位,才会开始运行你刚刚下载的代码。所以整个过程,你得跳动 2 次跳线帽,还得按 2 次复位,比较繁琐。而我们的一键下载电路,则利用串口的 DTR 和 RTS 信号,分别控制 STM32的复位和 B0,配合上位机软件(flymcu),设置: DTR 的低电平复位, RTS 高电平进 BootLoader,这样,B0 和 STM32 的复位,完全可以由下载软件自动控制,从而实现一键下载。
方法:将串口的RXD连接到PA9,将TXD连接到PA10
第二种方式:用jlink
将SWDCLK连接到PA14,将SWDIO连接到PA13,另外两个接到板子上的VCC3.3和GND。
MDK设置如下:
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_34888036/article/details/80872446