[STM32L0] STM32L011x/021x 启动模式注意事项

[复制链接]
1337|12
 楼主| 菜鸟的第一步 发表于 2021-11-14 21:39 | 显示全部楼层 |阅读模式
前言
针对客户在 STM32L011D4P6 应用开发过程中,碰到的启动模式问题进行了分析。并且根据问题,介绍开发工具、烧录工具
中如何配置以避免影响。

 楼主| 菜鸟的第一步 发表于 2021-11-14 21:40 | 显示全部楼层
一 问题描述
发现尽管已经为 Boot0 引脚提供了低电平,在利用 STVP 进行烧录时,需要先利用串口发送 0x7F 信息
(收到 0x79 回应),然后才能正常连接。同时,利用 MDK-ARM 开发工具时,同样无法直接正确识别
STM32L011D4P6。调试器设置界面如下所示。
23244619111af3f557.png
 楼主| 菜鸟的第一步 发表于 2021-11-14 21:41 | 显示全部楼层
二 问题分析
通过问题的描述,可以判断出在上电后,STM32L011D4P6 进入了自举程序模式(详细内容参见
AN3155)。查看 STM32L011D4P6 启动模式配置,如下图所示:
62715619111d00a040.png
 楼主| 菜鸟的第一步 发表于 2021-11-14 21:41 | 显示全部楼层
在 Boot0 脚为低电平时,根据 Boot 配置应该进入 Flash program memory (STM32L011D4P6 没有
nBOOT_SEL)。 通过问题所描述的方式利用 STVP 读出 Option byte 如下所示:
5564961911204e28ee.png
 楼主| 菜鸟的第一步 发表于 2021-11-14 21:42 | 显示全部楼层
为什么在这种配置情况,依然进入 System memory。最终确认为 STM32L011x/021x 采用了一种有别
于 STM32L0 系列中其他微控制器的启动配置机制。
具体为:包括了空检测标志,用以在 Boot0 为低电平,配置为从 Flash program memory 启动时,判断
Flash program memory 中是否含有有效用户程序,如何没有,则会引导进入自举程序(从 System
memory 中执行),以便对 Flash memory 进行编程。
询问客户得知出现这种问题的 STM32L011D4P6 之前没有烧录过用户程序。在 Flash memory 中烧录
用户程序后,问题消失。
 楼主| 菜鸟的第一步 发表于 2021-11-14 21:43 | 显示全部楼层
三 开发工具配置
针对这种启动机制,在软件开发工具(例如 MDK-ARM, IAR for ARM)中,需要对 SWD 调试/编程设
置进行配置,并且需要连接 STM32L011x/021x 的 Reset 引脚。这样配置,能够避免微控制器进入
Bootloader 中,而引起的 SWD 调试/编程器连接通信时,出现冲突,无法正常连接的情况。
ST-Link utility 对应的配置(配置位置:Target\Setting)如下所示:
98318619112546d7cd.png
 楼主| 菜鸟的第一步 发表于 2021-11-14 21:45 | 显示全部楼层
MDK-ARM 对应的配置(配置位置 : Project\Option\Debug\Setting)如下所示:
18522619112a34224c.png
IAR for ARM 对应的配置(配置位置:Project\Option\ST-Link)如下所示:
17528619112b13ca02.png
 楼主| 菜鸟的第一步 发表于 2021-11-14 21:46 | 显示全部楼层
四 总结 STM32L011x/021x 相对于 STM32L0 系列其他微控制器,提供了空检测机制,能够在 Flash program
memory 中用户程序无效时,自动从 Flash 启动进入到 System memory 中的自举程序。需要注意,在
实际开发中,为调试/编程器提供 Reset 的连接,并对调试/编程器进行配置,以便正常实现调试/编程功 能。
aoyi 发表于 2021-12-9 11:45 | 显示全部楼层
各种启动模式适用于什么场合呢
wiba 发表于 2021-12-9 11:47 | 显示全部楼层
咱们最常用的是哪种啊
zljiu 发表于 2021-12-9 11:54 | 显示全部楼层
这个启动模式在产品中不是确定的吗
coshi 发表于 2021-12-9 11:55 | 显示全部楼层
是不是启动的位置不一样呀
drer 发表于 2021-12-9 11:58 | 显示全部楼层
都有哪些烧录工具呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

60

主题

459

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部