使用另一个微控制器对 STM32 进行编程的选项
Posted
技术标签:
【中文标题】使用另一个微控制器对 STM32 进行编程的选项【英文标题】:Options on programing STM32 with another microcontroller 【发布时间】:2021-09-11 07:52:39 【问题描述】:在我的项目中,我将使用 STM32f103 作为主微控制器,使用 ESP8266 作为 Wi-Fi 模块。这两个芯片通过UART相互联系。
我有一个包含“version2.bin”文件的服务器。我可以用 ESP8266 下载这个文件,但是我应该如何用这个文件更新 STM32 固件呢?
也就是说,如何进行OTA?
【问题讨论】:
对于 STM32,我使用的是 Keil IDE,对于 ESP8266,我使用的是 Arduino。我在这个项目中没有任何 SD 卡,并且出于价格考虑,我不允许拥有一个,所以我正在寻找另一种选择。我认为 ESP12-F 有足够的内存来解决这个问题。 【参考方案1】:STM32F1 有一个嵌入式引导加载程序,您可以通过 uart 使用。详情在这里:AN2606 和这里AN3155
您可以自己制作:对闪存进行分区并为引导加载程序保存一份,为应用程序保存一份。前者应该检查一些信号来更新后者。之后引导加载程序应该跳转到应用程序。
理论上您也可以使用调试器协议进行编程,但从未见过它完成,我想这样做简直太疯狂了。
【讨论】:
以上是关于使用另一个微控制器对 STM32 进行编程的选项的主要内容,如果未能解决你的问题,请参考以下文章