1-STM32+ESP8266+AIR202远程升级篇-远程升级篇概述

Posted yangfengwu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1-STM32+ESP8266+AIR202远程升级篇-远程升级篇概述相关的知识,希望对你有一定的参考价值。

 

 

 

整体说明
远程升级篇主要实现的是远程升级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远程升级篇-远程升级篇概述的主要内容,如果未能解决你的问题,请参考以下文章

5-STM32+ESP8266+AIR202基本控制篇功能3-APP扫码绑定Air202,并通过MQTT和Air202实现远程通信控制(兼容SIM800)

1-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(来看一下怎么样监听网络数据,监听电脑上位机软件的数据)

STM32+ESP8266+AIR202/302远程升级方案-程序优化3-关于版本号判断的问题

06-STM32+ESP8266+AIR202/302远程升级篇-STM32+Air302(NB-IOT)实现利用http远程更新STM32程序(TCP指令实现http,单片机程序检查更新)

16-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇(精简版GPRS程序,实现远程升级单片机程序)

STM32+ESP8266+AIR202/302远程升级方案-程序优化-如果判断Flash需要擦除再擦除Flash,提高Flash使用寿命