使用ESP32空中更新STM32

2020-05-25 17:10:30

使用ESP32查看代码·报告错误·请求功能·创建拉入请求,对STM32Fxx进行空中编程。

测试使用ESP32-DevKitC v4板和STM32F103C8T6(蓝色药丸)和STM32F072C8T6。您可以尝试使用任何其他STM32Fxx MCU,并让我们知道它是如何工作的。

/ESP_STM_FLASH->;基本刷新实用程序,需要已在SPIFF中上载的.bin文件的路径。

要运行OTA演示,您需要ESP32开发板(例如ESP32-WROVER套件)或ESP32核心板(例如ESP32-DevKitC)。对于STM32,您可以使用STM32蓝色药丸。

Arduino IDE提供了一种为您的STM32 MCU生成.bin文件的简单方法。要为STM32系列设置Arduino Core,您可以使用此链接。

我们假设STM32在闪烁代码之前已经处于引导模式(使用部分中的步骤1&;5)。您可以使用MOSFET作为开关,使用ESP32 GPIO作为输入来自动执行该过程。

上载代码时,确保电路板上的BOOT0跳线引脚设置为1(编程模式)。一旦代码闪烁,该引脚可以改回初始位置(操作模式)。STM32Fxx MCU的此过程根据您的MCU版本而有所不同。

要测试OTA演示->;/file_serving_avr:运行idf.py-p端口监视器并记下分配给您的ESP模块的IP。默认端口为80。

在Web浏览器上以交互方式测试该示例(假设IP为192.168.43.82):打开路径http://192.168.43.82/以查看服务器上包含文件列表(最初为空)的HTMLweb页面。

使用网页上的文件上传表选择.bin文件并将其上传到服务器。

单击闪存链接以闪存上传到连接的STM32的.bin代码文件。

将BOOT0针脚恢复到初始位置,然后按STM32上的重置按钮。

检查一下你的线路。确保ESP32和STM32分别通电。不要使用一个MCU给另一个MCU供电。

验证您的WiFi SSID和密码。ESP32无法连接到SSID或密码中包含空格字符的WiFi站,这是一个已知缺陷。

使用意法半导体的官方工具检查您的STM32是否已锁定,并通过擦除您芯片的内存将其解锁。