一、Boot模式介绍
启动,一般是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。
1、主闪存存储器
STM32内置的Flash,一般使用JTAG或SWD模式下载程序时,就是下到这里,重启后也直接从这启动程序。
2、系统存储器
从系统存储器启动,这种模式启动的程序功能是由厂家设置的。一般这种启动方式用的比较少。系统存储器是芯片内部一块特定的区域,STM32在出厂时,由ST在这个区域内部预置了一段BootLoader, 也就是常说的ISP程序, 这是一块ROM,出厂后无法修改。一般来说,我们选用这种启动模式时,是为了从串口下载程序,因为在厂家提供的BootLoader中,提供了串口下载程序的固件,可以通过这个BootLoader将程序下载到系统的Flash中。
3、内置SRAM
内置SRAM,没有程序存储的能力。一般用于程序调试。
二、实际例子
(一)采用ST_Link烧录程序
运行结果:
(二)采用串口下载程序,进行烧录
运行结果:
两种方式差别:
采用ST_Link烧录的程序,打开串口之后可以直接进行通信;对于串口烧录的程序,打开串口后,需要按一下复位键才能进行通信。