标签:下载方式 写入 自己 下载 平台 ignore 自身 还需 添加
整体说明
远程升级篇主要实现的是远程升级STM32程序.
STM32通过网络模块进行http/https下载程序文件把程序文件写入flash,执行.
升级方式分为备份升级和乒乓升级
备份升级:
<ignore_js_op>
BootLoader:
1.把用户程序运行区的程序备份到用户程序备份区.(更新前)
2.把程序文件下载到用户程序运行区(更新中)
3.负责把用户程序备份区的程序拉取到用户程序运行区(更新失败)
4.加载运行用户程序运行区的程序
用户程序运行区:运行用户程序
用户程序备份区:备份用户程序
存储其它信息区:存储更新时需要记录的数据
乒乓升级:
<ignore_js_op>
BootLoader:
1.每次更新,切换程序写入的运行区的位置(循环)
2.切换程序运行哪个运行区(更新失败)
用户程序运行区:运行用户程序
用户程序备份区:运行用户程序
存储其它信息区:存储更新时需要记录的数据
自己搭建服务器
1.在基本控制篇已经搭建好了web服务器
<ignore_js_op>
2.以上的配置可以实现远程升级篇的所有功能,
但是为了适应不同用户的不同升级方式,后面还会做一下具体说明.
列如:
1.有些用户只需要http下载不需要https,那么只需要安装web服务器软件,不需要购买域名以及域名解析备案等操作.
2.有些用户希望使用app控制单片机远程更新,用户需要安装MQTT
3.有些用户希望使用微信小程序控制单片机远程更新,用户需要安装MQTT,还需配置反向代理.
主要实现的功能如下:(以下功能包含http/https下载方式和 备份升级/乒乓升级 升级模式)
1.STM32通过对比版本号,主动更新单片机程序
2.APP远程控制STM32更新程序
3.微信小程序远程控制STM32更新程序
4.扩展:网页/C#远程控制STM32更新程序
阿里云物联网平台
阿里云平台是使用MQTT获取文件的https地址信息,进行更新操作.
主要实现的功能如下:
1.STM32通过对比版本号,主动更新单片机程序
其它需要待定!需要测试一个标准方案.
结语
对于硬件+软件类产品而言,能够远程更新程序是非常有必要的.
可以根据用户的反馈/自身需求动态的添加新的功能.
如果前期产品有小bug,也可以远程更新解决.
1-STM32+ESP8266+AIR202远程升级篇-远程升级篇概述
标签:下载方式 写入 自己 下载 平台 ignore 自身 还需 添加
原文地址:https://www.cnblogs.com/yangfengwu/p/13197175.html