这是一种自定义的STM32F1XX/STM32F4XX引导加载程序,它允许使用DFU或HID-FLASH协议通过USB闪烁固件二进制文件。该项目背后的雄心勃勃的意图是将更多STM32 MCU的复杂性暗示一个可以轻松下载,配置,编译和刷新的项目。
在某些情况下,闪烁与物理板相互作用最小的新固件确实很方便。就我而言,它在按下按钮的按下章鱼(实际上是重置 + LCD编码器按钮),通过我的章鱼闪烁我的3D打印机的BTT GTR 1.0板,我现在可以通过RPI的GPIO和WINL flash,而无需任何手动交互。
该引导加载程序正在进行中,这意味着它尚未经过广泛的测试,并且在硬件兼容性上仍然需要考虑很多。请将其视为实验性的东西,直到确保您的特定板上的所有方面都可以使用。
该项目的灵感来自Serasidis/STM32_HID_BOOTLOATER(起源于Bootsector/STM32-HID-BOOTLOADER),并保留与Hid-Flash工具的兼容性。
该项目适用于Platformio(如果您已连接了ST-Link/V2设备,则该项目应像以前一样构建和上传)。它使用原始的STM32Cube框架库,而不是包含其稍微修改的部分。 DFU协议已在两个STM32F1XX/4XX平台上实现和测试。目前,仅在STM32F4XX汇编中维持与较旧版本的Hid-flash.exe的兼容性。项目中未包含HID-FLASH工具的来源。
在尝试此操作之前,请确保您拥有板上原始引导程序的副本,您已经成功地刷新回到了板上,没有问题。
自定义引导程序行为是通过修改configuration.h文件完成的。有关详细信息,请参见文件注释。
使用兼容的ST-Link兼容设备,并正确连接到板和PC。使用Platformio的上传命令安装。将BOOD0 PIN设置为3.3V的板重置板也应起作用,但这取决于您的董事会和MCU(检查Wiki以获取有关该主题的更多信息)。
启用配置的扳机并重置板(如果在引脚触发时,请在重置时保持启用销钉,直到USB设备出现在主机上。依次为您启用了哪种协议(DFU或HID),请使用dfu-util.exe或hid-flash.exe cmd cmd comd project in y him instoware by your intio nire nide by nid divuio nid divuio nide drom nide dip nide diquio nid dif,否则dio nide dique nid dique nide dique dfu nide hid a nide nide diquio在固件的Platformio.ini文件的ENV部分中,首选upload-protocol ,如下以下示例:
#
# Bigtreetech GTR V1.0 (STM32F407IGT6 ARM Cortex-M4)
#
[env:BIGTREE_GTR_V1_0]
extends = stm32_variant
board = marlin_BigTree_GTR_v1
board_build.offset = 0x8000
build_flags = ${stm32_variant.build_flags} -DSTM32F407IX
upload_protocol = dfu
访问Wiki以获取有关闪烁和使用的更多信息。
更多的触发器,更多闪烁的方法,更多的STM32 MCUS /板支持。
到目前为止,该项目已在以下董事会上进行了测试:
STM32F4XX:
STM32F1XX: