STM32 DFU USB - 无需硬件重置即可运行上传的代码?

问题描述 投票:0回答:1

如果使用标准DFU USB内置引导加载程序到STM32F412,上传新固件后,是否可以在不进行硬件重置或更改其他GPIO的情况下运行上传的代码?

或者,是否有某种方法可以仅使用 STM32 (D+/-) 的 USB 信号来触发重置?切断电源不是一个选择。

stm32 bootloader stm32f4 dfu
1个回答
1
投票

应用笔记 AN2606 涵盖系统引导加载程序。

从第31页开始:

可以通过退出bootloader来退出系统内存启动模式 激活条件并生成硬件复位或使用Go命令 执行用户代码。

注意:执行Go命令时, 引导加载程序使用的外设寄存器未初始化为 在跳转到用户应用程序之前它们的默认重置值。 如果使用它们,则必须在用户应用程序中重新配置它们。 因此,如果应用程序使用 IWDG,则 IWDG 预分频器值必须 进行调整以满足应用程序的要求(因为 预分频器设置为最大值)。对于某些产品,并非全部 重置值已设置。更多信息请参考已知的 每个产品引导加载程序版本的详细限制。

第 43 页:

接下来,让我们看一下 AN3156 USB DFU 引导加载程序应用说明,第 19 页(该页面上有更多有用的信息,就在它之前,您需要使用特定命令将 DFU 退出到特定地址,或者执行系统操作)重置):

离开DFU模式
可以退出 DFU 模式(和引导加载程序)并且 跳转到已加载的应用程序(在内部闪存中或在 嵌入式 RAM)使用 DFU 下载请求。

© www.soinside.com 2019 - 2024. All rights reserved.