尝试在STM32F4Discovery

时间:2018-05-21 20:12:27

标签: python driver stm32f4discovery micropython dfu

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

MicroPython Github自述文件对STM进行了详细介绍,但我在部署步骤中一直处于失败状态,它不断提高值{1}。 (这发生在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设备”的驱动程序,但没有任何官方或希望鼓舞人心。

我的设置:

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

到目前为止我尝试过的事情:

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

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

所以我真正的问题是如何将MicroPython放到STM32F4上,重要的问题可能是如何将主板识别为DFU设备。

2 个答案:

答案 0 :(得分:0)

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

terminal 1:
st-util

terminal2:
$gdb firmware.elf
(gdb) target extended localhost:4242
(gdb) load

答案 1 :(得分: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-straight-plug-adapter-plate-welding-head/

使用以下连接

我在NUCLEO-F401RE上尝试了此操作,它也没有在STLINK-V2接头上暴露DFU。

`连接:

USB连接器发现套件

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

GND ------> GND

现在您应该能够成功执行DFU!`