0

我正在尝试在 STM32 微控制器系列上使用 Python,并且正在使用 STM32F4 Discovery 板和 STM32F429 MCU 进行实验。

MicroPython Github 自述文件对 STM 进行了演练,但我在部署步骤中一直失败,它不断提高值 error 'No DFU device found'。(这发生在 Windows 主机上 Virtualbox 内的 Manjaro 上)

现在,我尝试简单地将主板识别为 Linux 和 Windows 主机上的 DFU 设备,但无济于事。Windows 确实在硬件管理器中显示了该板,但它始终显示为“STM32 STLink”。它也不被文件系统识别为大容量存储,与我也尝试过的 STM32F103 Nucleo-64 板相反,它是(在 Windows 和 Linux 上)。再说一次,F103 Nucleo 也没有被识别为 DFU 设备(尽管我可能没有正确的引导引脚向上/向下拉那个)。

我尝试在此处使用 DfuSe 遵循官方教程:https ://www.youtube.com/watch?v=Kx7yWVi8kbU 但是在大约 3:45 设备被识别为“DFU 模式下的 STM 设备”时,它不适用于我。并且它在 DfuSe 的相应下拉列表中没有显示任何“可用的 DFU 设备”。我尝试寻找一个名为“DFU 模式下的 STM 设备”的驱动程序,但没有找到任何官方或鼓舞人心的驱动程序。

我的设置:

  • boot0 引脚通过与 VDD 桥接来上拉
  • 通过 mini-USB-to-USB 电缆将板 (CN1) 的 STLink 部分连接到 PC
  • CN4 处的跳线均已连接
  • Idd (JP3) 处的跳线已连接
  • Windows 10 Pro(以及 Virtualbox VM 上的 Manjaro)

到目前为止我已经尝试过:

  • 安装 DfuSe
  • 手动安装随附的 DfuSe 驱动程序
  • 从 STMicroelectronics 官方网页下载和安装 USB 驱动程序
  • 在 Linux 上使用 dfu-util
  • 从 ST 网页安装虚拟 COM 端口驱动程序
  • 安装 ST-Link 实用程序

到目前为止,我唯一的成功是让 STLink Utility 识别电路板并能够用它上传 .hex 文件。遗憾的是,就 MicroPython 而言,这并没有真正帮助我。

所以我真正的问题是如何将 MicroPython 安装到 STM32F4 上,重要的问题可能是如何让开发板被识别为 DFU 设备。

4

2 回答 2

0

假设您已经为 STM32F4DISCOVERY 构建了 micropython 固件,您可以使用 st-util 和 gdb 来加载固件。

terminal 1:
st-util

terminal2:
$gdb firmware.elf
(gdb) target extended localhost:4242
(gdb) load
于 2018-08-07T21:55:16.977 回答
0

最好在这里问这些问题https://forum.micropython.org

STM32F429 的 USB 连接不暴露于 ST-LINK V2 连接器。因此,如果您需要进行 DFU,请借助此连接器https://robu.in/product/micro-usb-turn-dip2-54-mm-upright-mother-5p-type使用以下连接-b-mike-patch-直插头-适配器-板-焊头/

我在 NUCLEO-F401RE 上尝试了这个,它也没有将 DFU 暴露在 STLINK-V2 标头上。

`连接:

USB 连接器探索套件

D+ ------> PA12
D- ------> PA11

接地 ------> 接地

现在你应该可以成功地做一个 DFU 了!`

于 2019-11-07T06:52:16.883 回答