stm32 远程升级 OTA升级 使用WIFI连接升级芯片 stm32f103系列

stm32 远程升级 OTA升级 使用WIFI连接升级
芯片 stm32f103系列
升级方式:wifi模块?自建服务器
升级文件为BIN文件,需要使用配套的exe文件将原来的bin文件内的数据,每隔128个字节进行crc16检验,并添加到后面。
单片机下载后,每下载130个字节便检验一下数据,让升级变得稳定可靠。
升级过程:
用户程序里面每隔一定时间控制网络模块使用http的GET指令获取云端info文件
然后从文件里面获取服务器里面的固件程序版本和固件程序下载地址等信息
如果与自身版本号对比不一致,就把固件程序下载地址写入flash,然后设置更新标志,重启,
重启执行BootLoader以后,BootLoader程序检测到更新标志,则提取固件下载的地址,
然后使用http下载程序文件,把程序文件写入flash,完成升级.


资料包含bootloader源码一份,bin文件crc检验处理的exe文件一份,操作说明一份

STM32远程OTA升级技术分析

概述

随着智能家居的普及,智能硬件的应用越来越广泛。而对于一个智能硬件设备的升级,远程OTA升级成为一种非常重要的方式。本文将针对STM32系列芯片,介绍如何使用WIFI连接实现远程OTA升级,并提供详细的升级流程和技术分析。文中所使用的芯片为STM32F103系列。

技术要点

升级方式:WIFI模块?自建服务器

在STM32芯片上使用WIFI连接进行OTA升级,一般有两种实现方式:使用WIFI模块和自建服务器。两种方式各有优缺点。使用WIFI模块可以快速实现OTA升级,但需要向WIFI模块发送指令进行配置,并且需要占用芯片的SPI口。而自建服务器则需要自行搭建服务器,并在芯片中实现相应的网络协议,相对复杂,但可以更好地掌控升级的安全性和数据稳定性。

升级文件格式:BIN文件

升级文件格式为BIN文件,需要使用配套的exe文件将原来的BIN文件内的数据,每隔128个字节进行CRC16检验,并添加到后面。这样,单片机下载后,每下载130个字节便检验一下数据,以保证升级的稳定性和可靠性。

升级过程流程

用户程序里面每隔一定时间控制网络模块使用http的GET指令获取云端info文件,然后从文件里面获取服务器里面的固件程序版本和固件程序下载地址等信息。如果与自身版本号对比不一致,就把固件程序下载地址写入flash,然后设置更新标志,重启。重启后,执行BootLoader以后,BootLoader程序检测到更新标志,则提取固件下载的地址,然后使用http下载程序文件,把程序文件写入flash,完成升级。

技术实现细节

为了保证升级的成功率和数据稳定性,需要注意以下几个方面的实现细节:

1.升级文件的校验:由于网络传输存在丢包和错包等情况,因此需要在升级文件的校验方面进行一些处理。在每隔128个字节进行CRC16检验的基础上,还可以添加MD5校验,增强升级文件的安全性和可靠性。

2.升级数据的大小:为了保证升级数据的稳定性和安全性,升级数据的大小需要逐步递增,一般每次增加130字节左右。在升级失败后,可以通过记录当前的升级数据大小,下次升级时从失败点继续进行。

3.升级文件的备份:为了避免意外情况导致的数据丢失,可以在每次升级前将原程序备份至另外一个flash区域,以备不时之需。

4.升级成功标志的设置:为了避免重复升级,需要设置升级成功标志,以确保每次升级只进行一次。

综上所述,远程OTA升级是一种非常重要的技术,可以实现设备的快速迭代和更新。在实际应用中,需要注意实现细节和升级流程,从而提高升级的成功率和稳定性。这里提供了一种基于STM32芯片的WIFI连接方式的技术分析,希望对大家有所帮助。

相关代码,程序地址:http://lanzouw.top/677901849845.html
 

  • 9
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STM32F103是意法半导体(STMicroelectronics)推出的一款高性能32位微控制器系列产品。OTA(Over-The-Air)是指通过无线网络实现设备固件升级的一种技术。因此,STM32F103 OTA升级程序是指在STM32F103微控制器上实现通过无线网络进行固件升级的一套程序。 实现STM32F103 OTA升级程序需要以下步骤: 1. 设备连接网络:首先需要确保STM32F103微控制器能够连接到无线网络,通常通过WIFI模块实现。连接成功后,STM32F103可以通过网络收发数据。 2. 服务器搭建:需要搭建一个OTA升级服务器,用于存储新版本固件以及与设备进行通信。服务器可以通过云服务或自建服务器实现,提供固件升级文件的下载和设备状态管理接口。 3. 设备注册:STM32F103通过访问OTA服务器的注册接口进行设备注册,以获取设备的唯一标识符和密钥。 4. 固件检测和下载:设备通过访问OTA服务器的检测接口,查询是否有新版本固件可供下载。如果服务器上有新版本固件,设备将下载新版本固件文件。 5. 固件更新:设备下载完成新版本固件后,进行固件更新。更新过程需要确保数据传输的完整性和正确性,通常采用校验和算法进行验证。 6. 固件验证和重启:设备在固件更新完成后,需要对新固件进行验证。验证通过后,设备将重启,加载并运行新版本固件。 通过以上步骤,就能实现STM32F103 OTA升级程序。这种OTA升级方式方便快捷,能够使设备在无需连接到计算机的情况下进行固件升级,提高了设备的灵活性和可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值