STM32之启动模式

时间:2022-08-11 16:44:12

STM32学习笔记之启动模式

前言:菜鸟成长过程中的心得总结,欢迎指出本博文的错误之处,以便大家一起学习。谢谢!!!

一、STM32的启动模式的选择

  在STM32中,我们可以通过对BOOT0和BOOT1的配置,来选择我们所需要的启动模式,而BOOT0和BOOT1的配置,我们可以通过手册来查找,主要有如下图所示的几种启动方式。
STM32之启动模式

二、常用的几种启动模式及其电路原理图

1、串口ISP

  在使用串口ISP下载的时候,将BOOT0上拉接3.3V,将BOOT1接GND。最简单的电路如下图所示。
       STM32之启动模式
  当我们需要更新程序时,将开关拨向2,当程序烧写完毕之后,在拨回原来的位置,即1处,然后复位之后程序即可正常运行。这种串口ISP的方式有一个弊端,就是只能通过它来烧写程序,我们不能通过它来调试程序。

2、JTAG

  在STM32的学习中,JTAG是我们经常使用的一种调试模式,STM32的JTAG一般选择20pin的。其电路原理图如下图所示。
STM32之启动模式
  JTAG的各引脚的定义如下:
    TCK——测试时钟输入
    TDI——测试数据输入,数据通过TDI输入JTAG口
    TDO——测试数据输出,数据通过TDO从JTAG口输出
    TMS——测试模式选择,TMS用来设置JTAG口处于某种特定的测试模式
    TRST(可选)——测试复位,输入引脚,低电平有效。

3、SWD

  在我们的实际生活中,SWD相比JTAG有许多优势,首先,4线(或3线)的SWD要比JTAG的引脚少的多,这就节约了许多的PCB空间。其次,SWD在高速模式下要比JTAG模式更加可靠。
  我们在使用SWD模式时,对BOOT0和BOOT1需要做如下处理,将BOOT0悬空(或接高电平),将BOOT1经过一个10K的下拉电阻拉低。SWD模式的接口电路如下图所示。
            STM32之启动模式