STM32单片机模式配置详解

目录

1 单片机模式配置

1.1 存储器映像

1.2 启动配置

1.3 启动模式选择

1.4 硬件展示

1.4.1 BOOT引脚配置:

1.4.2 USB转TTL

2 FlyMcu串口下载固件

        2.1软件配置方式

        2.2 选项字节

3 STLINK Utility

3.1 简介

3.2 下载程序流程



1 单片机模式配置

1.1 存储器映像


1.2 启动配置

通过设置选择管脚,对应到各种启动模式的不同物理地址将被映像到第0块(启动存储区)。在系统复位后SYSCLK(系统)的第四个上升沿,BOOT管脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。即使被映像到程序存储区,仍然可以在呀原先的存储器空间内访问相关的存储器,在经过启动延迟后,CPU从位于0x0000 0000开始的启动存储区执行代码。

主闪存存储器:BOOT1的X代表可以悬空,但是BOOT0一定是接低电平

系统存储器:BOOT1接低电平,BOOT0接高电平

内置SRAM:BOOT1接高电平,BOOT0接高电平


1.3 启动模式选择

第一种启动方式是最常用的用户FLASH启动,正常工作就在这种模式下,STM32的FLASH可以擦出10万次,所以不用担心芯片哪天会被擦爆!一般我们使用JTAG或者SWD模式下载程序时,就是下载到这个里面,重新启动后也直接从这启动程序。

第二种启动方式是系统存储器启动方式,从系统存储器启动,这样的模式启动的程序功能是由厂家设置的。一般来说,这样的启动方式用的比较少。系统存储器是芯片内部一块特定的区域,STM32在出厂时,由ST在这个区域内部预置了一段BootLoader(引导加载程序),也就是我们常说的ISP程序,这是一块ROM,出厂后无法改动。一般来说,我们选用这样的启动模式时,是为了从串口下载程序,由于在厂家提供的BootLoader中,提供了串口下载程序的固件,能够通过这个BootLoader将程序下载到系统的Flash中。
Step1:将BOOT0设置为1,BOOT1设置为0,然后按下复位键,这样才干从系统存储器启动BootLoader
Step2:最后在BootLoader的帮助下,通过串口下载程序到Flash中
Step3:程序下载完毕后,又有须要将BOOT0设置为GND,手动复位,这样,STM32才干够从Flash中启动,能够看到,利用串口下载程序还是比较的麻烦,须要跳帽跳来跳去的,很的不注重用户体验。

第三种启动方式是STM32内嵌的SRAM启动。该模式用干调试。假如我仅仅改动了代码中一个小小的地方,然后就须要又一次擦除整个Flash,比较的费时,能够考虑从这个模式启动代码(也就是STM32的内存中),用于高速的程序调试,等程序调试完毕后,在将程序下载到SRAM中。


1.4 硬件展示

1.4.1 BOOT引脚配置:

 


1.4.2 USB转TTL

CH340芯片

系统存储器启动模式接线图:

  • PA9(TXD)—接RXD
  • PA10(RXD)—接TXD
  • 3.3V供电

  • 2 FlyMcu串口下载固件

    2.1软件配置方式

    如果没有STLINK,就可以用这个软件通过串口下载程序

    这个软件类似于STC51单片机的烧录软件:STC-ISP 

    先生成勾选生成HEX文件,再编译

    串口号

    波特率:115200

    烧录

    如果出现这种情况

     就说明BOOT引脚没有配置正确,跳线帽没有接正确

    C8T6:

    ZET6:

    将BOOT0引脚的跳线帽接到右边,再按复位键,现在芯片就进入BootLoader程序。

    在系统复位后SYSCLK(系统)的第四个上升沿,BOOT管脚的值将被锁存

    所以一定要复位,然后再点击开始编程

    这样就成功下载进去了,但是这样下载的程序为什么不运行呢?因为STM32还在执行BootLoader的刷机程序,然后再把BOOT引脚换回来,跳线帽接回原位置,再按复位键,程序正常运行

     

     来回插拔跳线帽比较复杂,还有一个配置方法可以直接在BootLoader里不断的下载调试

    勾选“编程后执行”

    勾掉“编程到FLASH时写选项字节”

     配置如下: 

    FlyMcu软件也可以读器件信息、清除芯片、读FLASH

    读FLASH读出的格式是Bin文件,但是下载却要HEX文件,嗯……

    2.2 选项字节

    ……


    3 STLINK Utility

    3.1 简介

    接线:只接STLINK即可

    跳线帽都接0

    第三个按钮是连接,第四个是断开,第五个是擦除

    如果想保存程序(将程序读取出来),就点击第二个按钮,可以选择文件格式为Bin或者HEX,比上一款软件方便一点

    3.2 下载程序流程

  • 点击第一个打开文件
  • 选择要下载的文件以及类型
  • 点击编程按键(第六个按钮)
  • 选择hex文件或bin文件路径
  • 单击Start

  • 学习视频链接:

    【4、[下班后]STM32启动模式配置串口模式下载固件】https://www.bilibili.com/video/BV1KS4y1L79w/?share_source=copy_web&vd_source=8af85e60c2df9af1f0fd23935753a933

    【STM32入门教程-2022持续更新中】https://www.bilibili.com/video/BV1th411z7sn/?p=30&share_source=copy_web&vd_source=8af85e60c2df9af1f0fd23935753a933

    物联沃分享整理
    物联沃-IOTWORD物联网 » STM32单片机模式配置详解

    发表评论